[PATCH] arm64: dts: fsd: Change the reg properties from 64-bit to 32-bit
From: Vivek Yadav
Date: Wed Nov 16 2022 - 05:49:29 EST
Change the reg properties from 64-bit to 32-bit for all IPs, as none of
the nodes are above 32-bit range in the fsd SoC.
Since dma-ranges length does not fit into 32-bit size, keep it 64-bit
and move it to specific node where it is used instead of SoC section.
Signed-off-by: Ravi Patel <ravi.patel@xxxxxxxxxxx>
Signed-off-by: Pankaj Dubey <pankaj.dubey@xxxxxxxxxxx>
Signed-off-by: Vivek Yadav <vivek.2311@xxxxxxxxxxx>
---
arch/arm64/boot/dts/tesla/fsd-evb.dts | 2 +
arch/arm64/boot/dts/tesla/fsd.dtsi | 109 ++++++++++++++------------
2 files changed, 62 insertions(+), 49 deletions(-)
diff --git a/arch/arm64/boot/dts/tesla/fsd-evb.dts b/arch/arm64/boot/dts/tesla/fsd-evb.dts
index 1db6ddf03f01..81d9937d8828 100644
--- a/arch/arm64/boot/dts/tesla/fsd-evb.dts
+++ b/arch/arm64/boot/dts/tesla/fsd-evb.dts
@@ -14,6 +14,8 @@
/ {
model = "Tesla Full Self-Driving (FSD) Evaluation board";
compatible = "tesla,fsd-evb", "tesla,fsd";
+ #address-cells = <2>;
+ #size-cells = <2>;
aliases {
serial0 = &serial_0;
diff --git a/arch/arm64/boot/dts/tesla/fsd.dtsi b/arch/arm64/boot/dts/tesla/fsd.dtsi
index f35bc5a288c2..7378ae39233a 100644
--- a/arch/arm64/boot/dts/tesla/fsd.dtsi
+++ b/arch/arm64/boot/dts/tesla/fsd.dtsi
@@ -342,23 +342,22 @@
soc: soc@0 {
compatible = "simple-bus";
- #address-cells = <2>;
- #size-cells = <2>;
- ranges = <0x0 0x0 0x0 0x0 0x0 0x18000000>;
- dma-ranges = <0x0 0x0 0x0 0x0 0x10 0x0>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges = <0x0 0x0 0x0 0x18000000>;
gic: interrupt-controller@10400000 {
compatible = "arm,gic-v3";
#interrupt-cells = <3>;
interrupt-controller;
- reg = <0x0 0x10400000 0x0 0x10000>, /* GICD */
- <0x0 0x10600000 0x0 0x200000>; /* GICR_RD+GICR_SGI */
+ reg = <0x10400000 0x10000>, /* GICD */
+ <0x10600000 0x200000>; /* GICR_RD+GICR_SGI */
interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
};
smmu_imem: iommu@10200000 {
compatible = "arm,mmu-500";
- reg = <0x0 0x10200000 0x0 0x10000>;
+ reg = <0x10200000 0x10000>;
#iommu-cells = <2>;
#global-interrupts = <7>;
interrupts = <GIC_SPI 438 IRQ_TYPE_LEVEL_HIGH>, /* Global secure fault */
@@ -378,7 +377,7 @@
smmu_isp: iommu@12100000 {
compatible = "arm,mmu-500";
- reg = <0x0 0x12100000 0x0 0x10000>;
+ reg = <0x12100000 0x10000>;
#iommu-cells = <2>;
#global-interrupts = <11>;
interrupts = <GIC_SPI 321 IRQ_TYPE_LEVEL_HIGH>, /* Global secure fault */
@@ -406,7 +405,7 @@
smmu_peric: iommu@14900000 {
compatible = "arm,mmu-500";
- reg = <0x0 0x14900000 0x0 0x10000>;
+ reg = <0x14900000 0x10000>;
#iommu-cells = <2>;
#global-interrupts = <5>;
interrupts = <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>, /* Global secure fault */
@@ -422,7 +421,7 @@
smmu_fsys0: iommu@15450000 {
compatible = "arm,mmu-500";
- reg = <0x0 0x15450000 0x0 0x10000>;
+ reg = <0x15450000 0x10000>;
#iommu-cells = <2>;
#global-interrupts = <5>;
interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>, /* Global secure fault */
@@ -438,7 +437,7 @@
clock_imem: clock-controller@10010000 {
compatible = "tesla,fsd-clock-imem";
- reg = <0x0 0x10010000 0x0 0x3000>;
+ reg = <0x10010000 0x3000>;
#clock-cells = <1>;
clocks = <&fin_pll>,
<&clock_cmu DOUT_CMU_IMEM_TCUCLK>,
@@ -452,7 +451,7 @@
clock_cmu: clock-controller@11c10000 {
compatible = "tesla,fsd-clock-cmu";
- reg = <0x0 0x11c10000 0x0 0x3000>;
+ reg = <0x11c10000 0x3000>;
#clock-cells = <1>;
clocks = <&fin_pll>;
clock-names = "fin_pll";
@@ -460,7 +459,7 @@
clock_csi: clock-controller@12610000 {
compatible = "tesla,fsd-clock-cam_csi";
- reg = <0x0 0x12610000 0x0 0x3000>;
+ reg = <0x12610000 0x3000>;
#clock-cells = <1>;
clocks = <&fin_pll>;
clock-names = "fin_pll";
@@ -468,7 +467,7 @@
clock_mfc: clock-controller@12810000 {
compatible = "tesla,fsd-clock-mfc";
- reg = <0x0 0x12810000 0x0 0x3000>;
+ reg = <0x12810000 0x3000>;
#clock-cells = <1>;
clocks = <&fin_pll>;
clock-names = "fin_pll";
@@ -476,7 +475,7 @@
clock_peric: clock-controller@14010000 {
compatible = "tesla,fsd-clock-peric";
- reg = <0x0 0x14010000 0x0 0x3000>;
+ reg = <0x14010000 0x3000>;
#clock-cells = <1>;
clocks = <&fin_pll>,
<&clock_cmu DOUT_CMU_PLL_SHARED0_DIV4>,
@@ -494,7 +493,7 @@
clock_fsys0: clock-controller@15010000 {
compatible = "tesla,fsd-clock-fsys0";
- reg = <0x0 0x15010000 0x0 0x3000>;
+ reg = <0x15010000 0x3000>;
#clock-cells = <1>;
clocks = <&fin_pll>,
<&clock_cmu DOUT_CMU_PLL_SHARED0_DIV6>,
@@ -508,7 +507,7 @@
clock_fsys1: clock-controller@16810000 {
compatible = "tesla,fsd-clock-fsys1";
- reg = <0x0 0x16810000 0x0 0x3000>;
+ reg = <0x16810000 0x3000>;
#clock-cells = <1>;
clocks = <&fin_pll>,
<&clock_cmu DOUT_CMU_FSYS1_SHARED0DIV8>,
@@ -520,47 +519,59 @@
mdma0: dma-controller@10100000 {
compatible = "arm,pl330", "arm,primecell";
- reg = <0x0 0x10100000 0x0 0x1000>;
+ reg = <0x10100000 0x1000>;
interrupts = <GIC_SPI 424 IRQ_TYPE_LEVEL_HIGH>;
#dma-cells = <1>;
clocks = <&clock_imem IMEM_DMA0_IPCLKPORT_ACLK>;
clock-names = "apb_pclk";
iommus = <&smmu_imem 0x800 0x0>;
+ #address-cells = <2>;
+ #size-cells = <2>;
+ dma-ranges = <0x0 0x0 0x0 0x10 0x0>;
};
mdma1: dma-controller@10110000 {
compatible = "arm,pl330", "arm,primecell";
- reg = <0x0 0x10110000 0x0 0x1000>;
+ reg = <0x10110000 0x1000>;
interrupts = <GIC_SPI 425 IRQ_TYPE_LEVEL_HIGH>;
#dma-cells = <1>;
clocks = <&clock_imem IMEM_DMA1_IPCLKPORT_ACLK>;
clock-names = "apb_pclk";
iommus = <&smmu_imem 0x801 0x0>;
+ #address-cells = <2>;
+ #size-cells = <2>;
+ dma-ranges = <0x0 0x0 0x0 0x10 0x0>;
};
pdma0: dma-controller@14280000 {
compatible = "arm,pl330", "arm,primecell";
- reg = <0x0 0x14280000 0x0 0x1000>;
+ reg = <0x14280000 0x1000>;
interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>;
#dma-cells = <1>;
clocks = <&clock_peric PERIC_DMA0_IPCLKPORT_ACLK>;
clock-names = "apb_pclk";
iommus = <&smmu_peric 0x2 0x0>;
+ #address-cells = <2>;
+ #size-cells = <2>;
+ dma-ranges = <0x0 0x0 0x0 0x10 0x0>;
};
pdma1: dma-controller@14290000 {
compatible = "arm,pl330", "arm,primecell";
- reg = <0x0 0x14290000 0x0 0x1000>;
+ reg = <0x14290000 0x1000>;
interrupts = <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>;
#dma-cells = <1>;
clocks = <&clock_peric PERIC_DMA1_IPCLKPORT_ACLK>;
clock-names = "apb_pclk";
iommus = <&smmu_peric 0x1 0x0>;
+ #address-cells = <2>;
+ #size-cells = <2>;
+ dma-ranges = <0x0 0x0 0x0 0x10 0x0>;
};
serial_0: serial@14180000 {
compatible = "samsung,exynos4210-uart";
- reg = <0x0 0x14180000 0x0 0x100>;
+ reg = <0x14180000 0x100>;
interrupts = <GIC_SPI 171 IRQ_TYPE_LEVEL_HIGH>;
dmas = <&pdma1 1>, <&pdma1 0>;
dma-names = "rx", "tx";
@@ -572,7 +583,7 @@
serial_1: serial@14190000 {
compatible = "samsung,exynos4210-uart";
- reg = <0x0 0x14190000 0x0 0x100>;
+ reg = <0x14190000 0x100>;
interrupts = <GIC_SPI 172 IRQ_TYPE_LEVEL_HIGH>;
dmas = <&pdma1 3>, <&pdma1 2>;
dma-names = "rx", "tx";
@@ -584,12 +595,12 @@
pmu_system_controller: system-controller@11400000 {
compatible = "samsung,exynos7-pmu", "syscon";
- reg = <0x0 0x11400000 0x0 0x5000>;
+ reg = <0x11400000 0x5000>;
};
watchdog_0: watchdog@100a0000 {
compatible = "samsung,exynos7-wdt";
- reg = <0x0 0x100a0000 0x0 0x100>;
+ reg = <0x100a0000 0x100>;
interrupts = <GIC_SPI 471 IRQ_TYPE_LEVEL_HIGH>;
samsung,syscon-phandle = <&pmu_system_controller>;
clocks = <&fin_pll>;
@@ -598,7 +609,7 @@
watchdog_1: watchdog@100b0000 {
compatible = "samsung,exynos7-wdt";
- reg = <0x0 0x100b0000 0x0 0x100>;
+ reg = <0x100b0000 0x100>;
interrupts = <GIC_SPI 472 IRQ_TYPE_LEVEL_HIGH>;
samsung,syscon-phandle = <&pmu_system_controller>;
clocks = <&fin_pll>;
@@ -607,7 +618,7 @@
watchdog_2: watchdog@100c0000 {
compatible = "samsung,exynos7-wdt";
- reg = <0x0 0x100c0000 0x0 0x100>;
+ reg = <0x100c0000 0x100>;
interrupts = <GIC_SPI 473 IRQ_TYPE_LEVEL_HIGH>;
samsung,syscon-phandle = <&pmu_system_controller>;
clocks = <&fin_pll>;
@@ -616,7 +627,7 @@
pwm_0: pwm@14100000 {
compatible = "samsung,exynos4210-pwm";
- reg = <0x0 0x14100000 0x0 0x100>;
+ reg = <0x14100000 0x100>;
samsung,pwm-outputs = <0>, <1>, <2>, <3>;
#pwm-cells = <3>;
clocks = <&clock_peric PERIC_PWM0_IPCLKPORT_I_PCLK_S0>;
@@ -626,7 +637,7 @@
pwm_1: pwm@14110000 {
compatible = "samsung,exynos4210-pwm";
- reg = <0x0 0x14110000 0x0 0x100>;
+ reg = <0x14110000 0x100>;
samsung,pwm-outputs = <0>, <1>, <2>, <3>;
#pwm-cells = <3>;
clocks = <&clock_peric PERIC_PWM1_IPCLKPORT_I_PCLK_S0>;
@@ -636,7 +647,7 @@
hsi2c_0: i2c@14200000 {
compatible = "samsung,exynos7-hsi2c";
- reg = <0x0 0x14200000 0x0 0x1000>;
+ reg = <0x14200000 0x1000>;
interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
#size-cells = <0>;
@@ -649,7 +660,7 @@
hsi2c_1: i2c@14210000 {
compatible = "samsung,exynos7-hsi2c";
- reg = <0x0 0x14210000 0x0 0x1000>;
+ reg = <0x14210000 0x1000>;
interrupts = <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
#size-cells = <0>;
@@ -662,7 +673,7 @@
hsi2c_2: i2c@14220000 {
compatible = "samsung,exynos7-hsi2c";
- reg = <0x0 0x14220000 0x0 0x1000>;
+ reg = <0x14220000 0x1000>;
interrupts = <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
#size-cells = <0>;
@@ -675,7 +686,7 @@
hsi2c_3: i2c@14230000 {
compatible = "samsung,exynos7-hsi2c";
- reg = <0x0 0x14230000 0x0 0x1000>;
+ reg = <0x14230000 0x1000>;
interrupts = <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
#size-cells = <0>;
@@ -688,7 +699,7 @@
hsi2c_4: i2c@14240000 {
compatible = "samsung,exynos7-hsi2c";
- reg = <0x0 0x14240000 0x0 0x1000>;
+ reg = <0x14240000 0x1000>;
interrupts = <GIC_SPI 152 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
#size-cells = <0>;
@@ -701,7 +712,7 @@
hsi2c_5: i2c@14250000 {
compatible = "samsung,exynos7-hsi2c";
- reg = <0x0 0x14250000 0x0 0x1000>;
+ reg = <0x14250000 0x1000>;
interrupts = <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
#size-cells = <0>;
@@ -714,7 +725,7 @@
hsi2c_6: i2c@14260000 {
compatible = "samsung,exynos7-hsi2c";
- reg = <0x0 0x14260000 0x0 0x1000>;
+ reg = <0x14260000 0x1000>;
interrupts = <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
#size-cells = <0>;
@@ -727,7 +738,7 @@
hsi2c_7: i2c@14270000 {
compatible = "samsung,exynos7-hsi2c";
- reg = <0x0 0x14270000 0x0 0x1000>;
+ reg = <0x14270000 0x1000>;
interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
#size-cells = <0>;
@@ -740,24 +751,24 @@
pinctrl_pmu: pinctrl@114f0000 {
compatible = "tesla,fsd-pinctrl";
- reg = <0x0 0x114f0000 0x0 0x1000>;
+ reg = <0x114f0000 0x1000>;
};
pinctrl_peric: pinctrl@141f0000 {
compatible = "tesla,fsd-pinctrl";
- reg = <0x0 0x141f0000 0x0 0x1000>;
+ reg = <0x141f0000 0x1000>;
interrupts = <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>;
};
pinctrl_fsys0: pinctrl@15020000 {
compatible = "tesla,fsd-pinctrl";
- reg = <0x0 0x15020000 0x0 0x1000>;
+ reg = <0x15020000 0x1000>;
interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
};
spi_0: spi@14140000 {
compatible = "tesla,fsd-spi";
- reg = <0x0 0x14140000 0x0 0x100>;
+ reg = <0x14140000 0x100>;
interrupts = <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>;
dmas = <&pdma1 4>, <&pdma1 5>;
dma-names = "tx", "rx";
@@ -775,7 +786,7 @@
spi_1: spi@14150000 {
compatible = "tesla,fsd-spi";
- reg = <0x0 0x14150000 0x0 0x100>;
+ reg = <0x14150000 0x100>;
interrupts = <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>;
dmas = <&pdma1 6>, <&pdma1 7>;
dma-names = "tx", "rx";
@@ -793,7 +804,7 @@
spi_2: spi@14160000 {
compatible = "tesla,fsd-spi";
- reg = <0x0 0x14160000 0x0 0x100>;
+ reg = <0x14160000 0x100>;
interrupts = <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>;
dmas = <&pdma1 8>, <&pdma1 9>;
dma-names = "tx", "rx";
@@ -811,7 +822,7 @@
timer@10040000 {
compatible = "tesla,fsd-mct", "samsung,exynos4210-mct";
- reg = <0x0 0x10040000 0x0 0x800>;
+ reg = <0x10040000 0x800>;
interrupts = <GIC_SPI 455 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 456 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 457 IRQ_TYPE_LEVEL_HIGH>,
@@ -834,10 +845,10 @@
ufs: ufs@15120000 {
compatible = "tesla,fsd-ufs";
- reg = <0x0 0x15120000 0x0 0x200>, /* 0: HCI standard */
- <0x0 0x15121100 0x0 0x200>, /* 1: Vendor specified */
- <0x0 0x15110000 0x0 0x8000>, /* 2: UNIPRO */
- <0x0 0x15130000 0x0 0x100>; /* 3: UFS protector */
+ reg = <0x15120000 0x200>, /* 0: HCI standard */
+ <0x15121100 0x200>, /* 1: Vendor specified */
+ <0x15110000 0x8000>, /* 2: UNIPRO */
+ <0x15130000 0x100>; /* 3: UFS protector */
reg-names = "hci", "vs_hci", "unipro", "ufsp";
interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clock_fsys0 UFS0_TOP0_HCLK_BUS>,
@@ -853,7 +864,7 @@
ufs_phy: ufs-phy@15124000 {
compatible = "tesla,fsd-ufs-phy";
- reg = <0x0 0x15124000 0x0 0x800>;
+ reg = <0x15124000 0x800>;
reg-names = "phy-pma";
samsung,pmu-syscon = <&pmu_system_controller>;
#phy-cells = <0>;
--
2.17.1