brcm2708: update to latest patches from RPi foundation
[openwrt/staging/chunkeey.git] / target / linux / brcm2708 / patches-4.19 / 950-0616-arm64-mm-Limit-the-DMA-zone-for-arm64.patch
diff --git a/target/linux/brcm2708/patches-4.19/950-0616-arm64-mm-Limit-the-DMA-zone-for-arm64.patch b/target/linux/brcm2708/patches-4.19/950-0616-arm64-mm-Limit-the-DMA-zone-for-arm64.patch
new file mode 100644 (file)
index 0000000..41261cd
--- /dev/null
@@ -0,0 +1,25 @@
+From 2722f08c4c59901bd506184e2dcbbbd532aef0b3 Mon Sep 17 00:00:00 2001
+From: Andrei Gherzan <andrei@balena.io>
+Date: Tue, 16 Jul 2019 13:28:22 +0100
+Subject: [PATCH] arm64/mm: Limit the DMA zone for arm64
+
+On RaspberryPi, only the first 1Gb can be used for DMA[1].
+
+[1] http://lists.infradead.org/pipermail/linux-arm-kernel/2019-July/665986.html
+
+Signed-off-by: Andrei Gherzan <andrei@balena.io>
+---
+ arch/arm64/mm/init.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/arch/arm64/mm/init.c
++++ b/arch/arm64/mm/init.c
+@@ -224,7 +224,7 @@ static void __init reserve_elfcorehdr(vo
+ static phys_addr_t __init max_zone_dma_phys(void)
+ {
+       phys_addr_t offset = memblock_start_of_DRAM() & GENMASK_ULL(63, 32);
+-      return min(offset + (1ULL << 32), memblock_end_of_DRAM());
++      return min(offset + (1ULL << 30), memblock_end_of_DRAM());
+ }
+ #ifdef CONFIG_NUMA