mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-26 00:41:17 +00:00
793f8ab62c
Add kernel patches for version 6.1. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
42 lines
1.3 KiB
Diff
42 lines
1.3 KiB
Diff
From f3e5f85353153a6941fc9e32871b5037e875d1ae Mon Sep 17 00:00:00 2001
|
|
From: Phil Elwell <phil@raspberrypi.com>
|
|
Date: Wed, 17 May 2023 13:39:18 +0100
|
|
Subject: [PATCH] ARM: dts: bcm2711-rpi: Set a 1GB ZONE_DMA limit
|
|
|
|
The arm64 initialisation uses the physical address reachable by all
|
|
DMA controllers to set the size of ZONE_DMA. This fails on BCM2711
|
|
with the current dts files because the declaration of the I/O space
|
|
fools it into thinking the legacy 30-bit DMA channels can see most
|
|
of the 32-bit space.
|
|
|
|
Take advantage of the simple nature of the implementation by adding
|
|
a node with a restricted dma-ranges property solely so to act as the
|
|
limiting factor in the calculation.
|
|
|
|
See: https://github.com/raspberrypi/linux/issues/5470
|
|
|
|
Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
|
---
|
|
arch/arm/boot/dts/bcm2711-rpi-ds.dtsi | 10 ++++++++++
|
|
1 file changed, 10 insertions(+)
|
|
|
|
--- a/arch/arm/boot/dts/bcm2711-rpi-ds.dtsi
|
|
+++ b/arch/arm/boot/dts/bcm2711-rpi-ds.dtsi
|
|
@@ -63,6 +63,16 @@
|
|
spi6 = &spi6;
|
|
/delete-property/ intc;
|
|
};
|
|
+
|
|
+ /*
|
|
+ * Add a node with a dma-ranges value that exists only to be found
|
|
+ * by of_dma_get_max_cpu_address, and hence limit the DMA zone.
|
|
+ */
|
|
+ zone_dma {
|
|
+ #address-cells = <1>;
|
|
+ #size-cells = <1>;
|
|
+ dma-ranges = <0x0 0x0 0x0 0x40000000>;
|
|
+ };
|
|
};
|
|
|
|
&vc4 {
|