git: 248109448f6a - main - arm: switch the BUSDMA buffers to normal uncached memory
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 11 Nov 2024 08:23:24 UTC
The branch main has been updated by mmel:
URL: https://cgit.FreeBSD.org/src/commit/?id=248109448f6afb3d093a522677aab2975a3e7a15
commit 248109448f6afb3d093a522677aab2975a3e7a15
Author: Michal Meloun <mmel@FreeBSD.org>
AuthorDate: 2024-11-08 12:00:57 +0000
Commit: Michal Meloun <mmel@FreeBSD.org>
CommitDate: 2024-11-11 08:22:37 +0000
arm: switch the BUSDMA buffers to normal uncached memory
The BUSDMA buffer is treated as normal memory during compilation and compiler
is free to inline/optimize basic functions (i.e. memset, memcpy) accessing
buffers, including when an instruction is generated that performs a word
access to unaligned data. We support this, but only if the buffer in question
is mapped as normal memory (cached or not), but not to memory mapped as
strongly ordered or device type.
MFC after: 1 month
Differential Revision: https://reviews.freebsd.org/D47485
---
sys/arm/include/vm.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys/arm/include/vm.h b/sys/arm/include/vm.h
index 439dbdf440a6..697b48689bd8 100644
--- a/sys/arm/include/vm.h
+++ b/sys/arm/include/vm.h
@@ -36,7 +36,7 @@
#define VM_MEMATTR_WRITE_THROUGH ((vm_memattr_t)4)
#define VM_MEMATTR_DEFAULT VM_MEMATTR_WB_WA
-#define VM_MEMATTR_UNCACHEABLE VM_MEMATTR_SO /* misused by DMA */
+#define VM_MEMATTR_UNCACHEABLE VM_MEMATTR_NOCACHE /* used by BUSDMA */
#ifdef _KERNEL
/* Don't export aliased VM_MEMATTR to userland */
#define VM_MEMATTR_WRITE_COMBINING VM_MEMATTR_WRITE_THROUGH /* for DRM */