dts: bcm2712-rpi: Give PIO the "heavy" DMA channels

PIO benefits from increased DMA bandwidth when used with DMA channels
0 or 1, because they support longer bursts. Add DMA channel selection
attributes to prevent other users from claiming them.

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
This commit is contained in:
Phil Elwell
2025-08-12 09:38:08 +01:00
committed by Dom Cobley
parent e7cc5d4356
commit e6baafd2bc

View File

@@ -2,6 +2,8 @@
#include <dt-bindings/power/raspberrypi-power.h> #include <dt-bindings/power/raspberrypi-power.h>
#define DMA_FLAG_HEAVY (1 << 8)
&soc { &soc {
firmware: firmware { firmware: firmware {
compatible = "raspberrypi,bcm2835-firmware", "simple-mfd"; compatible = "raspberrypi,bcm2835-firmware", "simple-mfd";
@@ -91,7 +93,19 @@
}; };
}; };
&rp1_dma {
snps,chan-flags = <DMA_FLAG_HEAVY DMA_FLAG_HEAVY 0 0 0 0 0 0>;
};
pio: &rp1_pio { pio: &rp1_pio {
dmas = <&rp1_dma (RP1_DMA_PIO_CH0_TX | DMA_FLAG_HEAVY)>,
<&rp1_dma (RP1_DMA_PIO_CH0_RX | DMA_FLAG_HEAVY)>,
<&rp1_dma (RP1_DMA_PIO_CH1_TX | DMA_FLAG_HEAVY)>,
<&rp1_dma (RP1_DMA_PIO_CH1_RX | DMA_FLAG_HEAVY)>,
<&rp1_dma (RP1_DMA_PIO_CH2_TX | DMA_FLAG_HEAVY)>,
<&rp1_dma (RP1_DMA_PIO_CH2_RX | DMA_FLAG_HEAVY)>,
<&rp1_dma (RP1_DMA_PIO_CH3_TX | DMA_FLAG_HEAVY)>,
<&rp1_dma (RP1_DMA_PIO_CH3_RX | DMA_FLAG_HEAVY)>;
status = "okay"; status = "okay";
}; };