diff options
author | Nicolas Saenz Julienne <nsaenzjulienne@suse.de> | 2019-09-11 20:25:45 +0200 |
---|---|---|
committer | Catalin Marinas <catalin.marinas@arm.com> | 2019-10-14 10:56:28 +0100 |
commit | 1a8e1cef7603e218339ac63cb3178b25554524e5 (patch) | |
tree | 99551151197c340df1954232793d142149717b72 /arch/arm64/include | |
parent | a573cdd7973dedd87e62196c400332896bb236c8 (diff) | |
download | linux-1a8e1cef7603e218339ac63cb3178b25554524e5.tar.gz linux-1a8e1cef7603e218339ac63cb3178b25554524e5.tar.bz2 linux-1a8e1cef7603e218339ac63cb3178b25554524e5.zip |
arm64: use both ZONE_DMA and ZONE_DMA32
So far all arm64 devices have supported 32 bit DMA masks for their
peripherals. This is not true anymore for the Raspberry Pi 4 as most of
it's peripherals can only address the first GB of memory on a total of
up to 4 GB.
This goes against ZONE_DMA32's intent, as it's expected for ZONE_DMA32
to be addressable with a 32 bit mask. So it was decided to re-introduce
ZONE_DMA in arm64.
ZONE_DMA will contain the lower 1G of memory, which is currently the
memory area addressable by any peripheral on an arm64 device.
ZONE_DMA32 will contain the rest of the 32 bit addressable memory.
Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Diffstat (limited to 'arch/arm64/include')
-rw-r--r-- | arch/arm64/include/asm/page.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/arm64/include/asm/page.h b/arch/arm64/include/asm/page.h index d39ddb258a04..7b8c98830101 100644 --- a/arch/arm64/include/asm/page.h +++ b/arch/arm64/include/asm/page.h @@ -38,4 +38,6 @@ extern int pfn_valid(unsigned long); #include <asm-generic/getorder.h> +#define ARCH_ZONE_DMA_BITS 30 + #endif |