Commit b5e50906 authored by Peter Ujfalusi's avatar Peter Ujfalusi Committed by Tony Lindgren

ARM: DTS: am33xx: Use the new DT bindings for the eDMA3

Switch to use the ti,edma3-tpcc and ti,edma3-tptc binding for the eDMA3 and
enable the DMA even crossbar with ti,am335x-edma-crossbar.
With the new bindings boards can customize and tweak the DMA channel
priority to match their needs. With the new binding the memcpy is safe
to be used since with the old binding it was not possible for a driver
to know which channel is allowed to be used as non HW triggered channel.
Signed-off-by: default avatarPeter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
parent 1f9230fb
...@@ -743,8 +743,8 @@ &mmc1 { ...@@ -743,8 +743,8 @@ &mmc1 {
&mmc3 { &mmc3 {
/* these are on the crossbar and are outlined in the /* these are on the crossbar and are outlined in the
xbar-event-map element */ xbar-event-map element */
dmas = <&edma 12 dmas = <&edma_xbar 12 0 1
&edma 13>; &edma_xbar 13 0 2>;
dma-names = "tx", "rx"; dma-names = "tx", "rx";
status = "okay"; status = "okay";
vmmc-supply = <&wlan_en_reg>; vmmc-supply = <&wlan_en_reg>;
...@@ -766,11 +766,6 @@ wlcore: wlcore@0 { ...@@ -766,11 +766,6 @@ wlcore: wlcore@0 {
}; };
}; };
&edma {
ti,edma-xbar-event-map = /bits/ 16 <1 12
2 13>;
};
&sham { &sham {
status = "okay"; status = "okay";
}; };
......
...@@ -339,13 +339,6 @@ &mmc2 { ...@@ -339,13 +339,6 @@ &mmc2 {
ti,non-removable; ti,non-removable;
}; };
&edma {
/* Map eDMA MMC2 Events from Crossbar */
ti,edma-xbar-event-map = /bits/ 16 <1 12
2 13>;
};
&mmc3 { &mmc3 {
/* Wifi & Bluetooth on MMC #3 */ /* Wifi & Bluetooth on MMC #3 */
status = "okay"; status = "okay";
...@@ -354,8 +347,8 @@ &mmc3 { ...@@ -354,8 +347,8 @@ &mmc3 {
vmmmc-supply = <&v3v3c_reg>; vmmmc-supply = <&v3v3c_reg>;
bus-width = <4>; bus-width = <4>;
ti,non-removable; ti,non-removable;
dmas = <&edma 12 dmas = <&edma_xbar 12 0 1
&edma 13>; &edma_xbar 13 0 2>;
dma-names = "tx", "rx"; dma-names = "tx", "rx";
}; };
......
...@@ -161,6 +161,14 @@ wkup_m3_ipc: wkup_m3_ipc@1324 { ...@@ -161,6 +161,14 @@ wkup_m3_ipc: wkup_m3_ipc@1324 {
mboxes = <&mailbox &mbox_wkupm3>; mboxes = <&mailbox &mbox_wkupm3>;
}; };
edma_xbar: dma-router@f90 {
compatible = "ti,am335x-edma-crossbar";
reg = <0xf90 0x40>;
#dma-cells = <3>;
dma-requests = <32>;
dma-masters = <&edma>;
};
scm_clockdomains: clockdomains { scm_clockdomains: clockdomains {
}; };
}; };
...@@ -174,12 +182,44 @@ intc: interrupt-controller@48200000 { ...@@ -174,12 +182,44 @@ intc: interrupt-controller@48200000 {
}; };
edma: edma@49000000 { edma: edma@49000000 {
compatible = "ti,edma3"; compatible = "ti,edma3-tpcc";
ti,hwmods = "tpcc", "tptc0", "tptc1", "tptc2"; ti,hwmods = "tpcc";
reg = <0x49000000 0x10000>, reg = <0x49000000 0x10000>;
<0x44e10f90 0x40>; reg-names = "edma3_cc";
interrupts = <12 13 14>; interrupts = <12 13 14>;
#dma-cells = <1>; interrupt-names = "edma3_ccint", "emda3_mperr",
"edma3_ccerrint";
dma-requests = <64>;
#dma-cells = <2>;
ti,tptcs = <&edma_tptc0 7>, <&edma_tptc1 5>,
<&edma_tptc2 0>;
ti,edma-memcpy-channels = <20 21>;
};
edma_tptc0: tptc@49800000 {
compatible = "ti,edma3-tptc";
ti,hwmods = "tptc0";
reg = <0x49800000 0x100000>;
interrupts = <112>;
interrupt-names = "edma3_tcerrint";
};
edma_tptc1: tptc@49900000 {
compatible = "ti,edma3-tptc";
ti,hwmods = "tptc1";
reg = <0x49900000 0x100000>;
interrupts = <113>;
interrupt-names = "edma3_tcerrint";
};
edma_tptc2: tptc@49a00000 {
compatible = "ti,edma3-tptc";
ti,hwmods = "tptc2";
reg = <0x49a00000 0x100000>;
interrupts = <114>;
interrupt-names = "edma3_tcerrint";
}; };
gpio0: gpio@44e07000 { gpio0: gpio@44e07000 {
...@@ -233,7 +273,7 @@ uart0: serial@44e09000 { ...@@ -233,7 +273,7 @@ uart0: serial@44e09000 {
reg = <0x44e09000 0x2000>; reg = <0x44e09000 0x2000>;
interrupts = <72>; interrupts = <72>;
status = "disabled"; status = "disabled";
dmas = <&edma 26>, <&edma 27>; dmas = <&edma 26 0>, <&edma 27 0>;
dma-names = "tx", "rx"; dma-names = "tx", "rx";
}; };
...@@ -244,7 +284,7 @@ uart1: serial@48022000 { ...@@ -244,7 +284,7 @@ uart1: serial@48022000 {
reg = <0x48022000 0x2000>; reg = <0x48022000 0x2000>;
interrupts = <73>; interrupts = <73>;
status = "disabled"; status = "disabled";
dmas = <&edma 28>, <&edma 29>; dmas = <&edma 28 0>, <&edma 29 0>;
dma-names = "tx", "rx"; dma-names = "tx", "rx";
}; };
...@@ -255,7 +295,7 @@ uart2: serial@48024000 { ...@@ -255,7 +295,7 @@ uart2: serial@48024000 {
reg = <0x48024000 0x2000>; reg = <0x48024000 0x2000>;
interrupts = <74>; interrupts = <74>;
status = "disabled"; status = "disabled";
dmas = <&edma 30>, <&edma 31>; dmas = <&edma 30 0>, <&edma 31 0>;
dma-names = "tx", "rx"; dma-names = "tx", "rx";
}; };
...@@ -322,8 +362,8 @@ mmc1: mmc@48060000 { ...@@ -322,8 +362,8 @@ mmc1: mmc@48060000 {
ti,dual-volt; ti,dual-volt;
ti,needs-special-reset; ti,needs-special-reset;
ti,needs-special-hs-handling; ti,needs-special-hs-handling;
dmas = <&edma 24 dmas = <&edma_xbar 24 0 0
&edma 25>; &edma_xbar 25 0 0>;
dma-names = "tx", "rx"; dma-names = "tx", "rx";
interrupts = <64>; interrupts = <64>;
interrupt-parent = <&intc>; interrupt-parent = <&intc>;
...@@ -335,8 +375,8 @@ mmc2: mmc@481d8000 { ...@@ -335,8 +375,8 @@ mmc2: mmc@481d8000 {
compatible = "ti,omap4-hsmmc"; compatible = "ti,omap4-hsmmc";
ti,hwmods = "mmc2"; ti,hwmods = "mmc2";
ti,needs-special-reset; ti,needs-special-reset;
dmas = <&edma 2 dmas = <&edma 2 0
&edma 3>; &edma 3 0>;
dma-names = "tx", "rx"; dma-names = "tx", "rx";
interrupts = <28>; interrupts = <28>;
interrupt-parent = <&intc>; interrupt-parent = <&intc>;
...@@ -474,10 +514,10 @@ spi0: spi@48030000 { ...@@ -474,10 +514,10 @@ spi0: spi@48030000 {
interrupts = <65>; interrupts = <65>;
ti,spi-num-cs = <2>; ti,spi-num-cs = <2>;
ti,hwmods = "spi0"; ti,hwmods = "spi0";
dmas = <&edma 16 dmas = <&edma 16 0
&edma 17 &edma 17 0
&edma 18 &edma 18 0
&edma 19>; &edma 19 0>;
dma-names = "tx0", "rx0", "tx1", "rx1"; dma-names = "tx0", "rx0", "tx1", "rx1";
status = "disabled"; status = "disabled";
}; };
...@@ -490,10 +530,10 @@ spi1: spi@481a0000 { ...@@ -490,10 +530,10 @@ spi1: spi@481a0000 {
interrupts = <125>; interrupts = <125>;
ti,spi-num-cs = <2>; ti,spi-num-cs = <2>;
ti,hwmods = "spi1"; ti,hwmods = "spi1";
dmas = <&edma 42 dmas = <&edma 42 0
&edma 43 &edma 43 0
&edma 44 &edma 44 0
&edma 45>; &edma 45 0>;
dma-names = "tx0", "rx0", "tx1", "rx1"; dma-names = "tx0", "rx0", "tx1", "rx1";
status = "disabled"; status = "disabled";
}; };
...@@ -833,7 +873,7 @@ sham: sham@53100000 { ...@@ -833,7 +873,7 @@ sham: sham@53100000 {
ti,hwmods = "sham"; ti,hwmods = "sham";
reg = <0x53100000 0x200>; reg = <0x53100000 0x200>;
interrupts = <109>; interrupts = <109>;
dmas = <&edma 36>; dmas = <&edma 36 0>;
dma-names = "rx"; dma-names = "rx";
}; };
...@@ -842,8 +882,8 @@ aes: aes@53500000 { ...@@ -842,8 +882,8 @@ aes: aes@53500000 {
ti,hwmods = "aes"; ti,hwmods = "aes";
reg = <0x53500000 0xa0>; reg = <0x53500000 0xa0>;
interrupts = <103>; interrupts = <103>;
dmas = <&edma 6>, dmas = <&edma 6 0>,
<&edma 5>; <&edma 5 0>;
dma-names = "tx", "rx"; dma-names = "tx", "rx";
}; };
...@@ -856,8 +896,8 @@ mcasp0: mcasp@48038000 { ...@@ -856,8 +896,8 @@ mcasp0: mcasp@48038000 {
interrupts = <80>, <81>; interrupts = <80>, <81>;
interrupt-names = "tx", "rx"; interrupt-names = "tx", "rx";
status = "disabled"; status = "disabled";
dmas = <&edma 8>, dmas = <&edma 8 2>,
<&edma 9>; <&edma 9 2>;
dma-names = "tx", "rx"; dma-names = "tx", "rx";
}; };
...@@ -870,8 +910,8 @@ mcasp1: mcasp@4803C000 { ...@@ -870,8 +910,8 @@ mcasp1: mcasp@4803C000 {
interrupts = <82>, <83>; interrupts = <82>, <83>;
interrupt-names = "tx", "rx"; interrupt-names = "tx", "rx";
status = "disabled"; status = "disabled";
dmas = <&edma 10>, dmas = <&edma 10 2>,
<&edma 11>; <&edma 11 2>;
dma-names = "tx", "rx"; dma-names = "tx", "rx";
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment