diff mbox series

[3/3] arm64: dts: ti: k3-am6*: Add additional regs for DMA components

Message ID 20231212111634.3515175-4-vigneshr@ti.com (mailing list archive)
State New, archived
Headers show
Series arm64: dts: ti: k3: Add additioal regs for DMA components | expand

Commit Message

Vignesh Raghavendra Dec. 12, 2023, 11:16 a.m. UTC
Add additional reg properties for BCDMA and PKTDMA nodes which are
mostly used by bootloader components before Device Manager firmware
services are available, in order to setup DMA transfers.

Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
---
 arch/arm64/boot/dts/ti/k3-am62-main.dtsi  | 18 ++++++++++++++----
 arch/arm64/boot/dts/ti/k3-am62a-main.dtsi | 18 ++++++++++++++----
 arch/arm64/boot/dts/ti/k3-am62p-main.dtsi | 18 ++++++++++++++----
 arch/arm64/boot/dts/ti/k3-am64-main.dtsi  | 18 ++++++++++++++----
 4 files changed, 56 insertions(+), 16 deletions(-)

Comments

Jai Luthra Dec. 13, 2023, 9:39 a.m. UTC | #1
Hi Vignesh,

Thanks for the patch, PKTDMA address region sizes don't seem to match 
the TRM. Not sure if the patch is wrong or TRM is wrong.

On Dec 12, 2023 at 16:46:34 +0530, Vignesh Raghavendra wrote:
> Add additional reg properties for BCDMA and PKTDMA nodes which are
> mostly used by bootloader components before Device Manager firmware
> services are available, in order to setup DMA transfers.
> 
> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
> ---
>  arch/arm64/boot/dts/ti/k3-am62-main.dtsi  | 18 ++++++++++++++----
>  arch/arm64/boot/dts/ti/k3-am62a-main.dtsi | 18 ++++++++++++++----
>  arch/arm64/boot/dts/ti/k3-am62p-main.dtsi | 18 ++++++++++++++----
>  arch/arm64/boot/dts/ti/k3-am64-main.dtsi  | 18 ++++++++++++++----
>  4 files changed, 56 insertions(+), 16 deletions(-)
> 
> diff --git a/arch/arm64/boot/dts/ti/k3-am62-main.dtsi b/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
> index e5c64c86d1d5..4514a140ad38 100644
> --- a/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
> +++ b/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
> @@ -121,8 +121,13 @@ main_bcdma: dma-controller@485c0100 {
>  			      <0x00 0x4c000000 0x00 0x20000>,
>  			      <0x00 0x4a820000 0x00 0x20000>,
>  			      <0x00 0x4aa40000 0x00 0x20000>,
> -			      <0x00 0x4bc00000 0x00 0x100000>;
> -			reg-names = "gcfg", "bchanrt", "rchanrt", "tchanrt", "ringrt";
> +			      <0x00 0x4bc00000 0x00 0x100000>,
> +			      <0x00 0x48600000 0x00 0x8000>,
> +			      <0x00 0x484a4000 0x00 0x2000>,
> +			      <0x00 0x484c2000 0x00 0x2000>,
> +			      <0x00 0x48420000 0x00 0x2000>;
> +			reg-names = "gcfg", "bchanrt", "rchanrt", "tchanrt", "ringrt",
> +				    "ring", "tchan", "rchan", "bchan";

BCDMA ranges LGTM, but PDMA ranges below are not matching with the TRM.

>  			msi-parent = <&inta_main_dmss>;
>  			#dma-cells = <3>;
>  
> @@ -138,8 +143,13 @@ main_pktdma: dma-controller@485c0000 {
>  			reg = <0x00 0x485c0000 0x00 0x100>,
>  			      <0x00 0x4a800000 0x00 0x20000>,
>  			      <0x00 0x4aa00000 0x00 0x40000>,
> -			      <0x00 0x4b800000 0x00 0x400000>;
> -			reg-names = "gcfg", "rchanrt", "tchanrt", "ringrt";
> +			      <0x00 0x4b800000 0x00 0x400000>,
> +			      <0x00 0x485e0000 0x00 0x20000>,

PKTDMA RING region range 0x10000 in the TRM.

> +			      <0x00 0x484a0000 0x00 0x4000>,

PKTDMA TCHAN region range is 0x2000 in the TRM.

> +			      <0x00 0x484c0000 0x00 0x2000>,

This matches TRM.

> +			      <0x00 0x48430000 0x00 0x4000>;

PKGTMA RFLOW region range is 0x1000 in the TRM.

> +			reg-names = "gcfg", "rchanrt", "tchanrt", "ringrt",
> +				    "ring", "tchan", "rchan", "rflow";
>  			msi-parent = <&inta_main_dmss>;
>  			#dma-cells = <2>;
>  
> diff --git a/arch/arm64/boot/dts/ti/k3-am62a-main.dtsi b/arch/arm64/boot/dts/ti/k3-am62a-main.dtsi
> index 4ae7fdc5221b..36947d9d644d 100644
> --- a/arch/arm64/boot/dts/ti/k3-am62a-main.dtsi
> +++ b/arch/arm64/boot/dts/ti/k3-am62a-main.dtsi
> @@ -101,8 +101,13 @@ main_bcdma: dma-controller@485c0100 {
>  			      <0x00 0x4c000000 0x00 0x20000>,
>  			      <0x00 0x4a820000 0x00 0x20000>,
>  			      <0x00 0x4aa40000 0x00 0x20000>,
> -			      <0x00 0x4bc00000 0x00 0x100000>;
> -			reg-names = "gcfg", "bchanrt", "rchanrt", "tchanrt", "ringrt";
> +			      <0x00 0x4bc00000 0x00 0x100000>,
> +			      <0x00 0x48600000 0x00 0x8000>,
> +			      <0x00 0x484a4000 0x00 0x2000>,
> +			      <0x00 0x484c2000 0x00 0x2000>,
> +			      <0x00 0x48420000 0x00 0x2000>;
> +			reg-names = "gcfg", "bchanrt", "rchanrt", "tchanrt", "ringrt",
> +				    "ring", "tchan", "rchan", "bchan";
>  			msi-parent = <&inta_main_dmss>;
>  			#dma-cells = <3>;
>  			ti,sci = <&dmsc>;
> @@ -117,8 +122,13 @@ main_pktdma: dma-controller@485c0000 {
>  			reg = <0x00 0x485c0000 0x00 0x100>,
>  			      <0x00 0x4a800000 0x00 0x20000>,
>  			      <0x00 0x4aa00000 0x00 0x40000>,
> -			      <0x00 0x4b800000 0x00 0x400000>;
> -			reg-names = "gcfg", "rchanrt", "tchanrt", "ringrt";
> +			      <0x00 0x4b800000 0x00 0x400000>,
> +			      <0x00 0x485e0000 0x00 0x20000>,
> +			      <0x00 0x484a0000 0x00 0x4000>,
> +			      <0x00 0x484c0000 0x00 0x2000>,
> +			      <0x00 0x48430000 0x00 0x4000>;

Same issue as AM62, the TRM mentions a different size for these regions.

> +			reg-names = "gcfg", "rchanrt", "tchanrt", "ringrt",
> +				    "ring", "tchan", "rchan", "rflow";
>  			msi-parent = <&inta_main_dmss>;
>  			#dma-cells = <2>;
>  			ti,sci = <&dmsc>;
> diff --git a/arch/arm64/boot/dts/ti/k3-am62p-main.dtsi b/arch/arm64/boot/dts/ti/k3-am62p-main.dtsi
> index 963758c7d377..21981489b4db 100644
> --- a/arch/arm64/boot/dts/ti/k3-am62p-main.dtsi
> +++ b/arch/arm64/boot/dts/ti/k3-am62p-main.dtsi
> @@ -101,8 +101,13 @@ main_bcdma: dma-controller@485c0100 {
>  			      <0x00 0x4c000000 0x00 0x20000>,
>  			      <0x00 0x4a820000 0x00 0x20000>,
>  			      <0x00 0x4aa40000 0x00 0x20000>,
> -			      <0x00 0x4bc00000 0x00 0x100000>;
> -			reg-names = "gcfg", "bchanrt", "rchanrt", "tchanrt", "ringrt";
> +			      <0x00 0x4bc00000 0x00 0x100000>,
> +			      <0x00 0x48600000 0x00 0x8000>,
> +			      <0x00 0x484a4000 0x00 0x2000>,
> +			      <0x00 0x484c2000 0x00 0x2000>,
> +			      <0x00 0x48420000 0x00 0x2000>;
> +			reg-names = "gcfg", "bchanrt", "rchanrt", "tchanrt", "ringrt",
> +				    "ring", "tchan", "rchan", "bchan";
>  			msi-parent = <&inta_main_dmss>;
>  			#dma-cells = <3>;
>  
> @@ -119,8 +124,13 @@ main_pktdma: dma-controller@485c0000 {
>  			reg = <0x00 0x485c0000 0x00 0x100>,
>  			      <0x00 0x4a800000 0x00 0x20000>,
>  			      <0x00 0x4aa00000 0x00 0x40000>,
> -			      <0x00 0x4b800000 0x00 0x400000>;
> -			reg-names = "gcfg", "rchanrt", "tchanrt", "ringrt";
> +			      <0x00 0x4b800000 0x00 0x400000>,
> +			      <0x00 0x485e0000 0x00 0x20000>,
> +			      <0x00 0x484a0000 0x00 0x4000>,
> +			      <0x00 0x484c0000 0x00 0x2000>,
> +			      <0x00 0x48430000 0x00 0x4000>;

Same here as well.

> +			reg-names = "gcfg", "rchanrt", "tchanrt", "ringrt",
> +				    "ring", "tchan", "rchan", "rflow";
>  			msi-parent = <&inta_main_dmss>;
>  			#dma-cells = <2>;
>  			bootph-all;
> diff --git a/arch/arm64/boot/dts/ti/k3-am64-main.dtsi b/arch/arm64/boot/dts/ti/k3-am64-main.dtsi
> index 0be642bc1b86..bcdfd61c7d98 100644
> --- a/arch/arm64/boot/dts/ti/k3-am64-main.dtsi
> +++ b/arch/arm64/boot/dts/ti/k3-am64-main.dtsi
> @@ -138,8 +138,13 @@ main_bcdma: dma-controller@485c0100 {
>  			      <0x00 0x4c000000 0x00 0x20000>,
>  			      <0x00 0x4a820000 0x00 0x20000>,
>  			      <0x00 0x4aa40000 0x00 0x20000>,
> -			      <0x00 0x4bc00000 0x00 0x100000>;
> -			reg-names = "gcfg", "bchanrt", "rchanrt", "tchanrt", "ringrt";
> +			      <0x00 0x4bc00000 0x00 0x100000>,
> +			      <0x00 0x48600000 0x00 0x8000>,
> +			      <0x00 0x484a4000 0x00 0x2000>,
> +			      <0x00 0x484c2000 0x00 0x2000>,
> +			      <0x00 0x48420000 0x00 0x2000>;
> +			reg-names = "gcfg", "bchanrt", "rchanrt", "tchanrt", "ringrt",
> +				    "ring", "tchan", "rchan", "bchan";
>  			msi-parent = <&inta_main_dmss>;
>  			#dma-cells = <3>;
>  
> @@ -155,8 +160,13 @@ main_pktdma: dma-controller@485c0000 {
>  			reg = <0x00 0x485c0000 0x00 0x100>,
>  			      <0x00 0x4a800000 0x00 0x20000>,
>  			      <0x00 0x4aa00000 0x00 0x40000>,
> -			      <0x00 0x4b800000 0x00 0x400000>;
> -			reg-names = "gcfg", "rchanrt", "tchanrt", "ringrt";
> +			      <0x00 0x4b800000 0x00 0x400000>,
> +			      <0x00 0x485e0000 0x00 0x20000>,
> +			      <0x00 0x484a0000 0x00 0x4000>,
> +			      <0x00 0x484c0000 0x00 0x2000>,
> +			      <0x00 0x48430000 0x00 0x4000>;

Did not check TRM for AM64, might need a fix here as well.

> +			reg-names = "gcfg", "rchanrt", "tchanrt", "ringrt",
> +				    "ring", "tchan", "rchan", "rflow";
>  			msi-parent = <&inta_main_dmss>;
>  			#dma-cells = <2>;
>  
> -- 
> 2.43.0
> 
>
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/ti/k3-am62-main.dtsi b/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
index e5c64c86d1d5..4514a140ad38 100644
--- a/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
@@ -121,8 +121,13 @@  main_bcdma: dma-controller@485c0100 {
 			      <0x00 0x4c000000 0x00 0x20000>,
 			      <0x00 0x4a820000 0x00 0x20000>,
 			      <0x00 0x4aa40000 0x00 0x20000>,
-			      <0x00 0x4bc00000 0x00 0x100000>;
-			reg-names = "gcfg", "bchanrt", "rchanrt", "tchanrt", "ringrt";
+			      <0x00 0x4bc00000 0x00 0x100000>,
+			      <0x00 0x48600000 0x00 0x8000>,
+			      <0x00 0x484a4000 0x00 0x2000>,
+			      <0x00 0x484c2000 0x00 0x2000>,
+			      <0x00 0x48420000 0x00 0x2000>;
+			reg-names = "gcfg", "bchanrt", "rchanrt", "tchanrt", "ringrt",
+				    "ring", "tchan", "rchan", "bchan";
 			msi-parent = <&inta_main_dmss>;
 			#dma-cells = <3>;
 
@@ -138,8 +143,13 @@  main_pktdma: dma-controller@485c0000 {
 			reg = <0x00 0x485c0000 0x00 0x100>,
 			      <0x00 0x4a800000 0x00 0x20000>,
 			      <0x00 0x4aa00000 0x00 0x40000>,
-			      <0x00 0x4b800000 0x00 0x400000>;
-			reg-names = "gcfg", "rchanrt", "tchanrt", "ringrt";
+			      <0x00 0x4b800000 0x00 0x400000>,
+			      <0x00 0x485e0000 0x00 0x20000>,
+			      <0x00 0x484a0000 0x00 0x4000>,
+			      <0x00 0x484c0000 0x00 0x2000>,
+			      <0x00 0x48430000 0x00 0x4000>;
+			reg-names = "gcfg", "rchanrt", "tchanrt", "ringrt",
+				    "ring", "tchan", "rchan", "rflow";
 			msi-parent = <&inta_main_dmss>;
 			#dma-cells = <2>;
 
diff --git a/arch/arm64/boot/dts/ti/k3-am62a-main.dtsi b/arch/arm64/boot/dts/ti/k3-am62a-main.dtsi
index 4ae7fdc5221b..36947d9d644d 100644
--- a/arch/arm64/boot/dts/ti/k3-am62a-main.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am62a-main.dtsi
@@ -101,8 +101,13 @@  main_bcdma: dma-controller@485c0100 {
 			      <0x00 0x4c000000 0x00 0x20000>,
 			      <0x00 0x4a820000 0x00 0x20000>,
 			      <0x00 0x4aa40000 0x00 0x20000>,
-			      <0x00 0x4bc00000 0x00 0x100000>;
-			reg-names = "gcfg", "bchanrt", "rchanrt", "tchanrt", "ringrt";
+			      <0x00 0x4bc00000 0x00 0x100000>,
+			      <0x00 0x48600000 0x00 0x8000>,
+			      <0x00 0x484a4000 0x00 0x2000>,
+			      <0x00 0x484c2000 0x00 0x2000>,
+			      <0x00 0x48420000 0x00 0x2000>;
+			reg-names = "gcfg", "bchanrt", "rchanrt", "tchanrt", "ringrt",
+				    "ring", "tchan", "rchan", "bchan";
 			msi-parent = <&inta_main_dmss>;
 			#dma-cells = <3>;
 			ti,sci = <&dmsc>;
@@ -117,8 +122,13 @@  main_pktdma: dma-controller@485c0000 {
 			reg = <0x00 0x485c0000 0x00 0x100>,
 			      <0x00 0x4a800000 0x00 0x20000>,
 			      <0x00 0x4aa00000 0x00 0x40000>,
-			      <0x00 0x4b800000 0x00 0x400000>;
-			reg-names = "gcfg", "rchanrt", "tchanrt", "ringrt";
+			      <0x00 0x4b800000 0x00 0x400000>,
+			      <0x00 0x485e0000 0x00 0x20000>,
+			      <0x00 0x484a0000 0x00 0x4000>,
+			      <0x00 0x484c0000 0x00 0x2000>,
+			      <0x00 0x48430000 0x00 0x4000>;
+			reg-names = "gcfg", "rchanrt", "tchanrt", "ringrt",
+				    "ring", "tchan", "rchan", "rflow";
 			msi-parent = <&inta_main_dmss>;
 			#dma-cells = <2>;
 			ti,sci = <&dmsc>;
diff --git a/arch/arm64/boot/dts/ti/k3-am62p-main.dtsi b/arch/arm64/boot/dts/ti/k3-am62p-main.dtsi
index 963758c7d377..21981489b4db 100644
--- a/arch/arm64/boot/dts/ti/k3-am62p-main.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am62p-main.dtsi
@@ -101,8 +101,13 @@  main_bcdma: dma-controller@485c0100 {
 			      <0x00 0x4c000000 0x00 0x20000>,
 			      <0x00 0x4a820000 0x00 0x20000>,
 			      <0x00 0x4aa40000 0x00 0x20000>,
-			      <0x00 0x4bc00000 0x00 0x100000>;
-			reg-names = "gcfg", "bchanrt", "rchanrt", "tchanrt", "ringrt";
+			      <0x00 0x4bc00000 0x00 0x100000>,
+			      <0x00 0x48600000 0x00 0x8000>,
+			      <0x00 0x484a4000 0x00 0x2000>,
+			      <0x00 0x484c2000 0x00 0x2000>,
+			      <0x00 0x48420000 0x00 0x2000>;
+			reg-names = "gcfg", "bchanrt", "rchanrt", "tchanrt", "ringrt",
+				    "ring", "tchan", "rchan", "bchan";
 			msi-parent = <&inta_main_dmss>;
 			#dma-cells = <3>;
 
@@ -119,8 +124,13 @@  main_pktdma: dma-controller@485c0000 {
 			reg = <0x00 0x485c0000 0x00 0x100>,
 			      <0x00 0x4a800000 0x00 0x20000>,
 			      <0x00 0x4aa00000 0x00 0x40000>,
-			      <0x00 0x4b800000 0x00 0x400000>;
-			reg-names = "gcfg", "rchanrt", "tchanrt", "ringrt";
+			      <0x00 0x4b800000 0x00 0x400000>,
+			      <0x00 0x485e0000 0x00 0x20000>,
+			      <0x00 0x484a0000 0x00 0x4000>,
+			      <0x00 0x484c0000 0x00 0x2000>,
+			      <0x00 0x48430000 0x00 0x4000>;
+			reg-names = "gcfg", "rchanrt", "tchanrt", "ringrt",
+				    "ring", "tchan", "rchan", "rflow";
 			msi-parent = <&inta_main_dmss>;
 			#dma-cells = <2>;
 			bootph-all;
diff --git a/arch/arm64/boot/dts/ti/k3-am64-main.dtsi b/arch/arm64/boot/dts/ti/k3-am64-main.dtsi
index 0be642bc1b86..bcdfd61c7d98 100644
--- a/arch/arm64/boot/dts/ti/k3-am64-main.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am64-main.dtsi
@@ -138,8 +138,13 @@  main_bcdma: dma-controller@485c0100 {
 			      <0x00 0x4c000000 0x00 0x20000>,
 			      <0x00 0x4a820000 0x00 0x20000>,
 			      <0x00 0x4aa40000 0x00 0x20000>,
-			      <0x00 0x4bc00000 0x00 0x100000>;
-			reg-names = "gcfg", "bchanrt", "rchanrt", "tchanrt", "ringrt";
+			      <0x00 0x4bc00000 0x00 0x100000>,
+			      <0x00 0x48600000 0x00 0x8000>,
+			      <0x00 0x484a4000 0x00 0x2000>,
+			      <0x00 0x484c2000 0x00 0x2000>,
+			      <0x00 0x48420000 0x00 0x2000>;
+			reg-names = "gcfg", "bchanrt", "rchanrt", "tchanrt", "ringrt",
+				    "ring", "tchan", "rchan", "bchan";
 			msi-parent = <&inta_main_dmss>;
 			#dma-cells = <3>;
 
@@ -155,8 +160,13 @@  main_pktdma: dma-controller@485c0000 {
 			reg = <0x00 0x485c0000 0x00 0x100>,
 			      <0x00 0x4a800000 0x00 0x20000>,
 			      <0x00 0x4aa00000 0x00 0x40000>,
-			      <0x00 0x4b800000 0x00 0x400000>;
-			reg-names = "gcfg", "rchanrt", "tchanrt", "ringrt";
+			      <0x00 0x4b800000 0x00 0x400000>,
+			      <0x00 0x485e0000 0x00 0x20000>,
+			      <0x00 0x484a0000 0x00 0x4000>,
+			      <0x00 0x484c0000 0x00 0x2000>,
+			      <0x00 0x48430000 0x00 0x4000>;
+			reg-names = "gcfg", "rchanrt", "tchanrt", "ringrt",
+				    "ring", "tchan", "rchan", "rflow";
 			msi-parent = <&inta_main_dmss>;
 			#dma-cells = <2>;