]> www.infradead.org Git - users/willy/xarray.git/commitdiff
arm64: dts: ti: k3-j721e-main: Switch to 64-bit address space for PCIe0 and PCIe1
authorSiddharth Vadapalli <s-vadapalli@ti.com>
Tue, 22 Apr 2025 12:00:39 +0000 (17:30 +0530)
committerNishanth Menon <nm@ti.com>
Fri, 2 May 2025 13:29:34 +0000 (08:29 -0500)
The PCIe0 and PCIe1 instances of PCIe in J721E SoC support:
1. 128 MB address region in the 32-bit address space
2. 4 GB address region in the 64-bit address space

The default configuration is that of a 128 MB address region in the
32-bit address space. While this might be sufficient for most use-cases,
it is insufficient for supporting use-cases which require larger address
spaces. Therefore, switch to using the 64-bit address space with a 4 GB
address region.

Signed-off-by: Siddharth Vadapalli <s-vadapalli@ti.com>
Reviewed-by: Udit Kumar <u-kumar1@ti.com>
Link: https://lore.kernel.org/r/20250422120042.3746004-5-s-vadapalli@ti.com
Signed-off-by: Nishanth Menon <nm@ti.com>
arch/arm64/boot/dts/ti/k3-j721e-main.dtsi

index d7263ad4316322302dc66aafc2d7194d7cefcb1f..5bd0d36bf33ef84c0f7decd523d8d6be19111958 100644 (file)
                reg = <0x00 0x02900000 0x00 0x1000>,
                      <0x00 0x02907000 0x00 0x400>,
                      <0x00 0x0d000000 0x00 0x00800000>,
-                     <0x00 0x10000000 0x00 0x00001000>;
+                     <0x40 0x00000000 0x00 0x00001000>; /* ECAM (4 KB) */
                reg-names = "intd_cfg", "user_cfg", "reg", "cfg";
                interrupt-names = "link_state";
                interrupts = <GIC_SPI 318 IRQ_TYPE_EDGE_RISING>;
                device-id = <0xb00d>;
                msi-map = <0x0 &gic_its 0x0 0x10000>;
                dma-coherent;
-               ranges = <0x01000000 0x0 0x10001000 0x0 0x10001000 0x0 0x0010000>,
-                        <0x02000000 0x0 0x10011000 0x0 0x10011000 0x0 0x7fef000>;
+               ranges = <0x01000000 0x00 0x00001000 0x40 0x00001000 0x00 0x00100000>, /* IO (1 MB) */
+                        <0x02000000 0x00 0x00101000 0x40 0x00101000 0x00 0xffeff000>; /* 32-bit Non-Prefetchable MEM (4 GB - 1 MB - 4 KB) */
                dma-ranges = <0x02000000 0x0 0x0 0x0 0x0 0x10000 0x0>;
                status = "disabled";
        };
                reg = <0x00 0x02910000 0x00 0x1000>,
                      <0x00 0x02917000 0x00 0x400>,
                      <0x00 0x0d800000 0x00 0x00800000>,
-                     <0x00 0x18000000 0x00 0x00001000>;
+                     <0x41 0x00000000 0x00 0x00001000>; /* ECAM (4 KB) */
                reg-names = "intd_cfg", "user_cfg", "reg", "cfg";
                interrupt-names = "link_state";
                interrupts = <GIC_SPI 330 IRQ_TYPE_EDGE_RISING>;
                device-id = <0xb00d>;
                msi-map = <0x0 &gic_its 0x10000 0x10000>;
                dma-coherent;
-               ranges = <0x01000000 0x0 0x18001000 0x0 0x18001000 0x0 0x0010000>,
-                        <0x02000000 0x0 0x18011000 0x0 0x18011000 0x0 0x7fef000>;
+               ranges = <0x01000000 0x00 0x00001000 0x41 0x00001000 0x00 0x00100000>, /* IO (1 MB) */
+                        <0x02000000 0x00 0x00101000 0x41 0x00101000 0x00 0xffeff000>; /* 32-bit Non-Prefetchable MEM (4 GB - 1 MB - 4 KB) */
                dma-ranges = <0x02000000 0x0 0x0 0x0 0x0 0x10000 0x0>;
                status = "disabled";
        };