* [PATCH 0/5] arm64: dts: fsd: Cleanups with new dt-style-check
@ 2026-09-09 14:17 Krzysztof Kozlowski
2026-09-09 14:17 ` [PATCH 1/5] arm64: dts: fsd: Fix indentation of CPU nodes Krzysztof Kozlowski
` (4 more replies)
0 siblings, 5 replies; 11+ messages in thread
From: Krzysztof Kozlowski @ 2026-09-09 14:17 UTC (permalink / raw)
To: Alim Akhtar, linux-fsd, Krzysztof Kozlowski, Peter Griffin,
Rob Herring, Conor Dooley
Cc: linux-arm-kernel, linux-samsung-soc, devicetree, linux-kernel,
Krzysztof Kozlowski
Only a few warnings are left
Best regards,
Krzysztof
---
Krzysztof Kozlowski (5):
arm64: dts: fsd: Fix indentation of CPU nodes
arm64: dts: fsd: evb: Correct node order
arm64: dts: fsd: Move idle states out of CPUs node
arm64: dts: fsd: Re-order nodes to match coding style
arm64: dts: fsd: Re-order properties to match coding style
arch/arm64/boot/dts/tesla/fsd-evb.dts | 10 +-
arch/arm64/boot/dts/tesla/fsd-pinctrl.dtsi | 16 +-
arch/arm64/boot/dts/tesla/fsd.dtsi | 1162 ++++++++++++++--------------
3 files changed, 594 insertions(+), 594 deletions(-)
---
base-commit: 664f1ec11b4dc75f6de70a52e8219f812b6e57b3
change-id: 20260909-dts-samsung-cleanup-strict-327cdcdd68ea
Best regards,
--
Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 1/5] arm64: dts: fsd: Fix indentation of CPU nodes
2026-09-09 14:17 [PATCH 0/5] arm64: dts: fsd: Cleanups with new dt-style-check Krzysztof Kozlowski
@ 2026-09-09 14:17 ` Krzysztof Kozlowski
2026-09-10 15:19 ` Alim Akhtar
2026-09-09 14:17 ` [PATCH 2/5] arm64: dts: fsd: evb: Correct node order Krzysztof Kozlowski
` (3 subsequent siblings)
4 siblings, 1 reply; 11+ messages in thread
From: Krzysztof Kozlowski @ 2026-09-09 14:17 UTC (permalink / raw)
To: Alim Akhtar, linux-fsd, Krzysztof Kozlowski, Peter Griffin,
Rob Herring, Conor Dooley
Cc: linux-arm-kernel, linux-samsung-soc, devicetree, linux-kernel,
Krzysztof Kozlowski
Drop one tab too much to fix dt-check-style warning:
fsd.dtsi:198: [indent-consistent] indent mismatch (expected depth 3 * '\t')
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
---
arch/arm64/boot/dts/tesla/fsd.dtsi | 310 ++++++++++++++++++-------------------
1 file changed, 155 insertions(+), 155 deletions(-)
diff --git a/arch/arm64/boot/dts/tesla/fsd.dtsi b/arch/arm64/boot/dts/tesla/fsd.dtsi
index 6766c78243a3..d076ea634f4e 100644
--- a/arch/arm64/boot/dts/tesla/fsd.dtsi
+++ b/arch/arm64/boot/dts/tesla/fsd.dtsi
@@ -96,196 +96,196 @@ core3 {
/* Cluster 0 */
cpucl0_0: cpu@0 {
- device_type = "cpu";
- compatible = "arm,cortex-a72";
- reg = <0x0 0x000>;
- enable-method = "psci";
- clock-frequency = <2400000000>;
- cpu-idle-states = <&cpu_sleep>;
- i-cache-size = <0xc000>;
- i-cache-line-size = <64>;
- i-cache-sets = <256>;
- d-cache-size = <0x8000>;
- d-cache-line-size = <64>;
- d-cache-sets = <256>;
- next-level-cache = <&cpucl_l2>;
+ device_type = "cpu";
+ compatible = "arm,cortex-a72";
+ reg = <0x0 0x000>;
+ enable-method = "psci";
+ clock-frequency = <2400000000>;
+ cpu-idle-states = <&cpu_sleep>;
+ i-cache-size = <0xc000>;
+ i-cache-line-size = <64>;
+ i-cache-sets = <256>;
+ d-cache-size = <0x8000>;
+ d-cache-line-size = <64>;
+ d-cache-sets = <256>;
+ next-level-cache = <&cpucl_l2>;
};
cpucl0_1: cpu@1 {
- device_type = "cpu";
- compatible = "arm,cortex-a72";
- reg = <0x0 0x001>;
- enable-method = "psci";
- clock-frequency = <2400000000>;
- cpu-idle-states = <&cpu_sleep>;
- i-cache-size = <0xc000>;
- i-cache-line-size = <64>;
- i-cache-sets = <256>;
- d-cache-size = <0x8000>;
- d-cache-line-size = <64>;
- d-cache-sets = <256>;
- next-level-cache = <&cpucl_l2>;
+ device_type = "cpu";
+ compatible = "arm,cortex-a72";
+ reg = <0x0 0x001>;
+ enable-method = "psci";
+ clock-frequency = <2400000000>;
+ cpu-idle-states = <&cpu_sleep>;
+ i-cache-size = <0xc000>;
+ i-cache-line-size = <64>;
+ i-cache-sets = <256>;
+ d-cache-size = <0x8000>;
+ d-cache-line-size = <64>;
+ d-cache-sets = <256>;
+ next-level-cache = <&cpucl_l2>;
};
cpucl0_2: cpu@2 {
- device_type = "cpu";
- compatible = "arm,cortex-a72";
- reg = <0x0 0x002>;
- enable-method = "psci";
- clock-frequency = <2400000000>;
- cpu-idle-states = <&cpu_sleep>;
- i-cache-size = <0xc000>;
- i-cache-line-size = <64>;
- i-cache-sets = <256>;
- d-cache-size = <0x8000>;
- d-cache-line-size = <64>;
- d-cache-sets = <256>;
- next-level-cache = <&cpucl_l2>;
+ device_type = "cpu";
+ compatible = "arm,cortex-a72";
+ reg = <0x0 0x002>;
+ enable-method = "psci";
+ clock-frequency = <2400000000>;
+ cpu-idle-states = <&cpu_sleep>;
+ i-cache-size = <0xc000>;
+ i-cache-line-size = <64>;
+ i-cache-sets = <256>;
+ d-cache-size = <0x8000>;
+ d-cache-line-size = <64>;
+ d-cache-sets = <256>;
+ next-level-cache = <&cpucl_l2>;
};
cpucl0_3: cpu@3 {
- device_type = "cpu";
- compatible = "arm,cortex-a72";
- reg = <0x0 0x003>;
- enable-method = "psci";
- cpu-idle-states = <&cpu_sleep>;
- i-cache-size = <0xc000>;
- i-cache-line-size = <64>;
- i-cache-sets = <256>;
- d-cache-size = <0x8000>;
- d-cache-line-size = <64>;
- d-cache-sets = <256>;
- next-level-cache = <&cpucl_l2>;
+ device_type = "cpu";
+ compatible = "arm,cortex-a72";
+ reg = <0x0 0x003>;
+ enable-method = "psci";
+ cpu-idle-states = <&cpu_sleep>;
+ i-cache-size = <0xc000>;
+ i-cache-line-size = <64>;
+ i-cache-sets = <256>;
+ d-cache-size = <0x8000>;
+ d-cache-line-size = <64>;
+ d-cache-sets = <256>;
+ next-level-cache = <&cpucl_l2>;
};
/* Cluster 1 */
cpucl1_0: cpu@100 {
- device_type = "cpu";
- compatible = "arm,cortex-a72";
- reg = <0x0 0x100>;
- enable-method = "psci";
- clock-frequency = <2400000000>;
- cpu-idle-states = <&cpu_sleep>;
- i-cache-size = <0xc000>;
- i-cache-line-size = <64>;
- i-cache-sets = <256>;
- d-cache-size = <0x8000>;
- d-cache-line-size = <64>;
- d-cache-sets = <256>;
- next-level-cache = <&cpucl_l2>;
+ device_type = "cpu";
+ compatible = "arm,cortex-a72";
+ reg = <0x0 0x100>;
+ enable-method = "psci";
+ clock-frequency = <2400000000>;
+ cpu-idle-states = <&cpu_sleep>;
+ i-cache-size = <0xc000>;
+ i-cache-line-size = <64>;
+ i-cache-sets = <256>;
+ d-cache-size = <0x8000>;
+ d-cache-line-size = <64>;
+ d-cache-sets = <256>;
+ next-level-cache = <&cpucl_l2>;
};
cpucl1_1: cpu@101 {
- device_type = "cpu";
- compatible = "arm,cortex-a72";
- reg = <0x0 0x101>;
- enable-method = "psci";
- clock-frequency = <2400000000>;
- cpu-idle-states = <&cpu_sleep>;
- i-cache-size = <0xc000>;
- i-cache-line-size = <64>;
- i-cache-sets = <256>;
- d-cache-size = <0x8000>;
- d-cache-line-size = <64>;
- d-cache-sets = <256>;
- next-level-cache = <&cpucl_l2>;
+ device_type = "cpu";
+ compatible = "arm,cortex-a72";
+ reg = <0x0 0x101>;
+ enable-method = "psci";
+ clock-frequency = <2400000000>;
+ cpu-idle-states = <&cpu_sleep>;
+ i-cache-size = <0xc000>;
+ i-cache-line-size = <64>;
+ i-cache-sets = <256>;
+ d-cache-size = <0x8000>;
+ d-cache-line-size = <64>;
+ d-cache-sets = <256>;
+ next-level-cache = <&cpucl_l2>;
};
cpucl1_2: cpu@102 {
- device_type = "cpu";
- compatible = "arm,cortex-a72";
- reg = <0x0 0x102>;
- enable-method = "psci";
- clock-frequency = <2400000000>;
- cpu-idle-states = <&cpu_sleep>;
- i-cache-size = <0xc000>;
- i-cache-line-size = <64>;
- i-cache-sets = <256>;
- d-cache-size = <0x8000>;
- d-cache-line-size = <64>;
- d-cache-sets = <256>;
- next-level-cache = <&cpucl_l2>;
+ device_type = "cpu";
+ compatible = "arm,cortex-a72";
+ reg = <0x0 0x102>;
+ enable-method = "psci";
+ clock-frequency = <2400000000>;
+ cpu-idle-states = <&cpu_sleep>;
+ i-cache-size = <0xc000>;
+ i-cache-line-size = <64>;
+ i-cache-sets = <256>;
+ d-cache-size = <0x8000>;
+ d-cache-line-size = <64>;
+ d-cache-sets = <256>;
+ next-level-cache = <&cpucl_l2>;
};
cpucl1_3: cpu@103 {
- device_type = "cpu";
- compatible = "arm,cortex-a72";
- reg = <0x0 0x103>;
- enable-method = "psci";
- clock-frequency = <2400000000>;
- cpu-idle-states = <&cpu_sleep>;
- i-cache-size = <0xc000>;
- i-cache-line-size = <64>;
- i-cache-sets = <256>;
- d-cache-size = <0x8000>;
- d-cache-line-size = <64>;
- d-cache-sets = <256>;
- next-level-cache = <&cpucl_l2>;
+ device_type = "cpu";
+ compatible = "arm,cortex-a72";
+ reg = <0x0 0x103>;
+ enable-method = "psci";
+ clock-frequency = <2400000000>;
+ cpu-idle-states = <&cpu_sleep>;
+ i-cache-size = <0xc000>;
+ i-cache-line-size = <64>;
+ i-cache-sets = <256>;
+ d-cache-size = <0x8000>;
+ d-cache-line-size = <64>;
+ d-cache-sets = <256>;
+ next-level-cache = <&cpucl_l2>;
};
/* Cluster 2 */
cpucl2_0: cpu@200 {
- device_type = "cpu";
- compatible = "arm,cortex-a72";
- reg = <0x0 0x200>;
- enable-method = "psci";
- clock-frequency = <2400000000>;
- cpu-idle-states = <&cpu_sleep>;
- i-cache-size = <0xc000>;
- i-cache-line-size = <64>;
- i-cache-sets = <256>;
- d-cache-size = <0x8000>;
- d-cache-line-size = <64>;
- d-cache-sets = <256>;
- next-level-cache = <&cpucl_l2>;
+ device_type = "cpu";
+ compatible = "arm,cortex-a72";
+ reg = <0x0 0x200>;
+ enable-method = "psci";
+ clock-frequency = <2400000000>;
+ cpu-idle-states = <&cpu_sleep>;
+ i-cache-size = <0xc000>;
+ i-cache-line-size = <64>;
+ i-cache-sets = <256>;
+ d-cache-size = <0x8000>;
+ d-cache-line-size = <64>;
+ d-cache-sets = <256>;
+ next-level-cache = <&cpucl_l2>;
};
cpucl2_1: cpu@201 {
- device_type = "cpu";
- compatible = "arm,cortex-a72";
- reg = <0x0 0x201>;
- enable-method = "psci";
- clock-frequency = <2400000000>;
- cpu-idle-states = <&cpu_sleep>;
- i-cache-size = <0xc000>;
- i-cache-line-size = <64>;
- i-cache-sets = <256>;
- d-cache-size = <0x8000>;
- d-cache-line-size = <64>;
- d-cache-sets = <256>;
- next-level-cache = <&cpucl_l2>;
+ device_type = "cpu";
+ compatible = "arm,cortex-a72";
+ reg = <0x0 0x201>;
+ enable-method = "psci";
+ clock-frequency = <2400000000>;
+ cpu-idle-states = <&cpu_sleep>;
+ i-cache-size = <0xc000>;
+ i-cache-line-size = <64>;
+ i-cache-sets = <256>;
+ d-cache-size = <0x8000>;
+ d-cache-line-size = <64>;
+ d-cache-sets = <256>;
+ next-level-cache = <&cpucl_l2>;
};
cpucl2_2: cpu@202 {
- device_type = "cpu";
- compatible = "arm,cortex-a72";
- reg = <0x0 0x202>;
- enable-method = "psci";
- clock-frequency = <2400000000>;
- cpu-idle-states = <&cpu_sleep>;
- i-cache-size = <0xc000>;
- i-cache-line-size = <64>;
- i-cache-sets = <256>;
- d-cache-size = <0x8000>;
- d-cache-line-size = <64>;
- d-cache-sets = <256>;
- next-level-cache = <&cpucl_l2>;
+ device_type = "cpu";
+ compatible = "arm,cortex-a72";
+ reg = <0x0 0x202>;
+ enable-method = "psci";
+ clock-frequency = <2400000000>;
+ cpu-idle-states = <&cpu_sleep>;
+ i-cache-size = <0xc000>;
+ i-cache-line-size = <64>;
+ i-cache-sets = <256>;
+ d-cache-size = <0x8000>;
+ d-cache-line-size = <64>;
+ d-cache-sets = <256>;
+ next-level-cache = <&cpucl_l2>;
};
cpucl2_3: cpu@203 {
- device_type = "cpu";
- compatible = "arm,cortex-a72";
- reg = <0x0 0x203>;
- enable-method = "psci";
- clock-frequency = <2400000000>;
- cpu-idle-states = <&cpu_sleep>;
- i-cache-size = <0xc000>;
- i-cache-line-size = <64>;
- i-cache-sets = <256>;
- d-cache-size = <0x8000>;
- d-cache-line-size = <64>;
- d-cache-sets = <256>;
- next-level-cache = <&cpucl_l2>;
+ device_type = "cpu";
+ compatible = "arm,cortex-a72";
+ reg = <0x0 0x203>;
+ enable-method = "psci";
+ clock-frequency = <2400000000>;
+ cpu-idle-states = <&cpu_sleep>;
+ i-cache-size = <0xc000>;
+ i-cache-line-size = <64>;
+ i-cache-sets = <256>;
+ d-cache-size = <0x8000>;
+ d-cache-line-size = <64>;
+ d-cache-sets = <256>;
+ next-level-cache = <&cpucl_l2>;
};
cpucl_l2: l2-cache0 {
--
2.53.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH 2/5] arm64: dts: fsd: evb: Correct node order
2026-09-09 14:17 [PATCH 0/5] arm64: dts: fsd: Cleanups with new dt-style-check Krzysztof Kozlowski
2026-09-09 14:17 ` [PATCH 1/5] arm64: dts: fsd: Fix indentation of CPU nodes Krzysztof Kozlowski
@ 2026-09-09 14:17 ` Krzysztof Kozlowski
2026-09-10 14:52 ` Alim Akhtar
2026-09-09 14:17 ` [PATCH 3/5] arm64: dts: fsd: Move idle states out of CPUs node Krzysztof Kozlowski
` (2 subsequent siblings)
4 siblings, 1 reply; 11+ messages in thread
From: Krzysztof Kozlowski @ 2026-09-09 14:17 UTC (permalink / raw)
To: Alim Akhtar, linux-fsd, Krzysztof Kozlowski, Peter Griffin,
Rob Herring, Conor Dooley
Cc: linux-arm-kernel, linux-samsung-soc, devicetree, linux-kernel,
Krzysztof Kozlowski
Order nodes by name to fix dt-check-style warning:
fsd-evb.dts:61: [child-name-order] child node 'codec' out of name order
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
---
arch/arm64/boot/dts/tesla/fsd-evb.dts | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/arch/arm64/boot/dts/tesla/fsd-evb.dts b/arch/arm64/boot/dts/tesla/fsd-evb.dts
index 503abe52a81c..a1f3d3fbbf8b 100644
--- a/arch/arm64/boot/dts/tesla/fsd-evb.dts
+++ b/arch/arm64/boot/dts/tesla/fsd-evb.dts
@@ -50,6 +50,11 @@ simple-audio-card,dai-link@0 {
bitclock-master = <&tlv320aic3x>;
frame-master = <&tlv320aic3x>;
+ codec {
+ sound-dai = <&tlv320aic3x>;
+ system-clock-frequency = <33000000>;
+ };
+
cpu-0 {
sound-dai = <&i2s_0 0>;
};
@@ -57,11 +62,6 @@ cpu-0 {
cpu-1 {
sound-dai = <&i2s_0 1>;
};
-
- codec {
- sound-dai = <&tlv320aic3x>;
- system-clock-frequency = <33000000>;
- };
};
};
};
--
2.53.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH 3/5] arm64: dts: fsd: Move idle states out of CPUs node
2026-09-09 14:17 [PATCH 0/5] arm64: dts: fsd: Cleanups with new dt-style-check Krzysztof Kozlowski
2026-09-09 14:17 ` [PATCH 1/5] arm64: dts: fsd: Fix indentation of CPU nodes Krzysztof Kozlowski
2026-09-09 14:17 ` [PATCH 2/5] arm64: dts: fsd: evb: Correct node order Krzysztof Kozlowski
@ 2026-09-09 14:17 ` Krzysztof Kozlowski
2026-09-10 15:26 ` Alim Akhtar
2026-09-09 14:17 ` [PATCH 4/5] arm64: dts: fsd: Re-order nodes to match coding style Krzysztof Kozlowski
2026-09-09 14:17 ` [PATCH 5/5] arm64: dts: fsd: Re-order properties " Krzysztof Kozlowski
4 siblings, 1 reply; 11+ messages in thread
From: Krzysztof Kozlowski @ 2026-09-09 14:17 UTC (permalink / raw)
To: Alim Akhtar, linux-fsd, Krzysztof Kozlowski, Peter Griffin,
Rob Herring, Conor Dooley
Cc: linux-arm-kernel, linux-samsung-soc, devicetree, linux-kernel,
Krzysztof Kozlowski
Idle states are not really part of CPUs, as often they have domain idle
states, so move them level up to fix to fix dt-check-style warning:
fsd.dtsi:300: [child-name-order] child node 'idle-states' out of name order
Also, re-order properties to silence:
fsd.dtsi:305: [property-order] property 'compatible' out of canonical order (should sort before 'idle-state-name')
fsd.dtsi:308: [property-order] property 'entry-latency-us' out of canonical order (should sort before 'arm,psci-suspend-param')
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
---
arch/arm64/boot/dts/tesla/fsd.dtsi | 22 +++++++++++-----------
1 file changed, 11 insertions(+), 11 deletions(-)
diff --git a/arch/arm64/boot/dts/tesla/fsd.dtsi b/arch/arm64/boot/dts/tesla/fsd.dtsi
index d076ea634f4e..acbe93756a76 100644
--- a/arch/arm64/boot/dts/tesla/fsd.dtsi
+++ b/arch/arm64/boot/dts/tesla/fsd.dtsi
@@ -296,19 +296,19 @@ cpucl_l2: l2-cache0 {
cache-line-size = <64>;
cache-sets = <4096>;
};
+ };
- idle-states {
- entry-method = "psci";
+ idle-states {
+ entry-method = "psci";
- cpu_sleep: cpu-sleep {
- idle-state-name = "c2";
- compatible = "arm,idle-state";
- local-timer-stop;
- arm,psci-suspend-param = <0x0010000>;
- entry-latency-us = <30>;
- exit-latency-us = <75>;
- min-residency-us = <300>;
- };
+ cpu_sleep: cpu-sleep {
+ compatible = "arm,idle-state";
+ idle-state-name = "c2";
+ local-timer-stop;
+ entry-latency-us = <30>;
+ exit-latency-us = <75>;
+ min-residency-us = <300>;
+ arm,psci-suspend-param = <0x0010000>;
};
};
--
2.53.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH 4/5] arm64: dts: fsd: Re-order nodes to match coding style
2026-09-09 14:17 [PATCH 0/5] arm64: dts: fsd: Cleanups with new dt-style-check Krzysztof Kozlowski
` (2 preceding siblings ...)
2026-09-09 14:17 ` [PATCH 3/5] arm64: dts: fsd: Move idle states out of CPUs node Krzysztof Kozlowski
@ 2026-09-09 14:17 ` Krzysztof Kozlowski
2026-09-10 15:59 ` Alim Akhtar
2026-09-09 14:17 ` [PATCH 5/5] arm64: dts: fsd: Re-order properties " Krzysztof Kozlowski
4 siblings, 1 reply; 11+ messages in thread
From: Krzysztof Kozlowski @ 2026-09-09 14:17 UTC (permalink / raw)
To: Alim Akhtar, linux-fsd, Krzysztof Kozlowski, Peter Griffin,
Rob Herring, Conor Dooley
Cc: linux-arm-kernel, linux-samsung-soc, devicetree, linux-kernel,
Krzysztof Kozlowski
Re-order several top-level and MMIO nodes to match coding style -
ordering by name or by unit address, as pointed out by dt-check-style,
e.g.:
fsd.dtsi:981: [child-address-order] child node @10040000 out of address order
fsd.dtsi:315: [child-name-order] child node 'arm-pmu' out of name order
fsd.dtsi:348: [child-name-order] child node 'clock' out of name order
While moving chunks of code, also re-order a few properties (I2S, SPI
and CAN nodes) to fix:
fsd.dtsi:661: [property-order] property 'clocks' out of canonical order (should sort before 'samsung,syscon-phandle')
fsd.dtsi:936: [property-order] property 'pinctrl-names' must be placed after 'pinctrl-0'
fsd.dtsi:936: [property-order] property 'pinctrl-names' out of canonical order (should sort before 'samsung,spi-src-clk')
Moving several nodes already creates unreviewable commit, thus
reshuffling the properties allows to skip changing the same line twice
without loss of readability.
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
---
arch/arm64/boot/dts/tesla/fsd-pinctrl.dtsi | 16 +-
arch/arm64/boot/dts/tesla/fsd.dtsi | 798 ++++++++++++++---------------
2 files changed, 407 insertions(+), 407 deletions(-)
diff --git a/arch/arm64/boot/dts/tesla/fsd-pinctrl.dtsi b/arch/arm64/boot/dts/tesla/fsd-pinctrl.dtsi
index 6f4658f57453..ab25433e9b32 100644
--- a/arch/arm64/boot/dts/tesla/fsd-pinctrl.dtsi
+++ b/arch/arm64/boot/dts/tesla/fsd-pinctrl.dtsi
@@ -27,14 +27,6 @@ gpf1: gpf1-gpio-bank {
#interrupt-cells = <2>;
};
- gpf6: gpf6-gpio-bank {
- gpio-controller;
- #gpio-cells = <2>;
-
- interrupt-controller;
- #interrupt-cells = <2>;
- };
-
gpf4: gpf4-gpio-bank {
gpio-controller;
#gpio-cells = <2>;
@@ -51,6 +43,14 @@ gpf5: gpf5-gpio-bank {
#interrupt-cells = <2>;
};
+ gpf6: gpf6-gpio-bank {
+ gpio-controller;
+ #gpio-cells = <2>;
+
+ interrupt-controller;
+ #interrupt-cells = <2>;
+ };
+
ufs_rst_n: ufs-rst-n-pins {
samsung,pins = "gpf5-0";
samsung,pin-function = <FSD_PIN_FUNC_2>;
diff --git a/arch/arm64/boot/dts/tesla/fsd.dtsi b/arch/arm64/boot/dts/tesla/fsd.dtsi
index acbe93756a76..22b997880d65 100644
--- a/arch/arm64/boot/dts/tesla/fsd.dtsi
+++ b/arch/arm64/boot/dts/tesla/fsd.dtsi
@@ -34,6 +34,12 @@ aliases {
spi2 = &spi_2;
};
+ fin_pll: clock {
+ compatible = "fixed-clock";
+ clock-output-names = "fin_pll";
+ #clock-cells = <0>;
+ };
+
cpus {
#address-cells = <2>;
#size-cells = <0>;
@@ -312,7 +318,7 @@ cpu_sleep: cpu-sleep {
};
};
- arm-pmu {
+ pmu {
compatible = "arm,cortex-a72-pmu";
interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>,
@@ -337,20 +343,6 @@ psci {
method = "smc";
};
- timer {
- compatible = "arm,armv8-timer";
- interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>,
- <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>,
- <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>,
- <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>;
- };
-
- fin_pll: clock {
- compatible = "fixed-clock";
- clock-output-names = "fin_pll";
- #clock-cells = <0>;
- };
-
reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
@@ -370,14 +362,88 @@ soc: soc@0 {
ranges = <0x0 0x0 0x0 0x0 0x0 0x18000000>;
dma-ranges = <0x0 0x0 0x0 0x0 0x10 0x0>;
- gic: interrupt-controller@10400000 {
- compatible = "arm,gic-v3";
- #address-cells = <0>;
- #interrupt-cells = <3>;
- interrupt-controller;
- reg = <0x0 0x10400000 0x0 0x10000>, /* GICD */
- <0x0 0x10600000 0x0 0x200000>; /* GICR_RD+GICR_SGI */
- interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
+ clock_imem: clock-controller@10010000 {
+ compatible = "tesla,fsd-clock-imem";
+ reg = <0x0 0x10010000 0x0 0x3000>;
+ #clock-cells = <1>;
+ clocks = <&fin_pll>,
+ <&clock_cmu DOUT_CMU_IMEM_TCUCLK>,
+ <&clock_cmu DOUT_CMU_IMEM_ACLK>,
+ <&clock_cmu DOUT_CMU_IMEM_DMACLK>;
+ clock-names = "fin_pll",
+ "dout_cmu_imem_tcuclk",
+ "dout_cmu_imem_aclk",
+ "dout_cmu_imem_dmaclk";
+ };
+
+ timer@10040000 {
+ compatible = "tesla,fsd-mct", "samsung,exynos4210-mct";
+ reg = <0x0 0x10040000 0x0 0x800>;
+ interrupts = <GIC_SPI 455 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 456 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 457 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 458 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 459 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 460 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 461 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 462 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 463 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 464 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 465 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 466 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 467 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 468 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 469 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 470 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&fin_pll>, <&clock_imem IMEM_MCT_PCLK>;
+ clock-names = "fin_pll", "mct";
+ };
+
+ watchdog_0: watchdog@100a0000 {
+ compatible = "tesla,fsd-wdt", "samsung,exynos7-wdt";
+ reg = <0x0 0x100a0000 0x0 0x100>;
+ interrupts = <GIC_SPI 471 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&fin_pll>;
+ clock-names = "watchdog";
+ samsung,syscon-phandle = <&pmu_system_controller>;
+ };
+
+ watchdog_1: watchdog@100b0000 {
+ compatible = "tesla,fsd-wdt", "samsung,exynos7-wdt";
+ reg = <0x0 0x100b0000 0x0 0x100>;
+ interrupts = <GIC_SPI 472 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&fin_pll>;
+ clock-names = "watchdog";
+ samsung,syscon-phandle = <&pmu_system_controller>;
+ };
+
+ watchdog_2: watchdog@100c0000 {
+ compatible = "tesla,fsd-wdt", "samsung,exynos7-wdt";
+ reg = <0x0 0x100c0000 0x0 0x100>;
+ interrupts = <GIC_SPI 473 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&fin_pll>;
+ clock-names = "watchdog";
+ samsung,syscon-phandle = <&pmu_system_controller>;
+ };
+
+ mdma0: dma-controller@10100000 {
+ compatible = "arm,pl330", "arm,primecell";
+ reg = <0x0 0x10100000 0x0 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>;
+ };
+
+ mdma1: dma-controller@10110000 {
+ compatible = "arm,pl330", "arm,primecell";
+ reg = <0x0 0x10110000 0x0 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>;
};
smmu_imem: iommu@10200000 {
@@ -400,6 +466,34 @@ smmu_imem: iommu@10200000 {
<GIC_SPI 449 IRQ_TYPE_LEVEL_HIGH>; /* for CONTEXT_3 */
};
+ gic: interrupt-controller@10400000 {
+ compatible = "arm,gic-v3";
+ #address-cells = <0>;
+ #interrupt-cells = <3>;
+ interrupt-controller;
+ reg = <0x0 0x10400000 0x0 0x10000>, /* GICD */
+ <0x0 0x10600000 0x0 0x200000>; /* GICR_RD+GICR_SGI */
+ interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
+ };
+
+ pmu_system_controller: system-controller@11400000 {
+ compatible = "tesla,fsd-pmu", "samsung,exynos7-pmu", "syscon";
+ reg = <0x0 0x11400000 0x0 0x5000>;
+ };
+
+ pinctrl_pmu: pinctrl@114f0000 {
+ compatible = "tesla,fsd-pinctrl";
+ reg = <0x0 0x114f0000 0x0 0x1000>;
+ };
+
+ clock_cmu: clock-controller@11c10000 {
+ compatible = "tesla,fsd-clock-cmu";
+ reg = <0x0 0x11c10000 0x0 0x3000>;
+ #clock-cells = <1>;
+ clocks = <&fin_pll>;
+ clock-names = "fin_pll";
+ };
+
smmu_isp: iommu@12100000 {
compatible = "arm,mmu-500";
reg = <0x0 0x12100000 0x0 0x10000>;
@@ -428,60 +522,6 @@ smmu_isp: iommu@12100000 {
<GIC_SPI 337 IRQ_TYPE_LEVEL_HIGH>; /* for CONTEXT_7 */
};
- smmu_peric: iommu@14900000 {
- compatible = "arm,mmu-500";
- reg = <0x0 0x14900000 0x0 0x10000>;
- #iommu-cells = <2>;
- #global-interrupts = <5>;
- interrupts = <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>, /* Global secure fault */
- <GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH>, /* Global non-secure fault */
- <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>, /* Combined secure interrupt */
- <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>, /* Combined non-secure interrupt */
- /* Performance counter interrupts */
- <GIC_SPI 198 IRQ_TYPE_LEVEL_HIGH>, /* for PERIC */
- /* Per context non-secure context interrupts, 0-1 interrupts */
- <GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH>, /* for CONTEXT_0 */
- <GIC_SPI 195 IRQ_TYPE_LEVEL_HIGH>; /* for CONTEXT_1 */
- };
-
- smmu_fsys0: iommu@15450000 {
- compatible = "arm,mmu-500";
- reg = <0x0 0x15450000 0x0 0x10000>;
- #iommu-cells = <2>;
- #global-interrupts = <5>;
- interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>, /* Global secure fault */
- <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>, /* Global non-secure fault */
- <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>, /* Combined secure interrupt */
- <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>, /* Combined non-secure interrupt */
- /* Performance counter interrupts */
- <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>, /* for FSYS0 */
- /* Per context non-secure context interrupts, 0-1 interrupts */
- <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>, /* for CONTEXT_0 */
- <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; /* for CONTEXT_1 */
- };
-
- clock_imem: clock-controller@10010000 {
- compatible = "tesla,fsd-clock-imem";
- reg = <0x0 0x10010000 0x0 0x3000>;
- #clock-cells = <1>;
- clocks = <&fin_pll>,
- <&clock_cmu DOUT_CMU_IMEM_TCUCLK>,
- <&clock_cmu DOUT_CMU_IMEM_ACLK>,
- <&clock_cmu DOUT_CMU_IMEM_DMACLK>;
- clock-names = "fin_pll",
- "dout_cmu_imem_tcuclk",
- "dout_cmu_imem_aclk",
- "dout_cmu_imem_dmaclk";
- };
-
- clock_cmu: clock-controller@11c10000 {
- compatible = "tesla,fsd-clock-cmu";
- reg = <0x0 0x11c10000 0x0 0x3000>;
- #clock-cells = <1>;
- clocks = <&fin_pll>;
- clock-names = "fin_pll";
- };
-
clock_csi: clock-controller@12610000 {
compatible = "tesla,fsd-clock-cam_csi";
reg = <0x0 0x12610000 0x0 0x3000>;
@@ -503,6 +543,15 @@ clock_mfc: clock-controller@12810000 {
clock-names = "fin_pll";
};
+ mfc: mfc@12880000 {
+ compatible = "tesla,fsd-mfc";
+ reg = <0x0 0x12880000 0x0 0x10000>;
+ interrupts = <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&clock_mfc MFC_MFC_IPCLKPORT_ACLK>;
+ clock-names = "mfc";
+ memory-region = <&mfc_left>;
+ };
+
clock_peric: clock-controller@14010000 {
compatible = "tesla,fsd-clock-peric";
reg = <0x0 0x14010000 0x0 0x3000>;
@@ -526,80 +575,191 @@ sysreg_peric: system-controller@14030000 {
reg = <0x0 0x14030000 0x0 0x1000>;
};
- clock_fsys0: clock-controller@15010000 {
- compatible = "tesla,fsd-clock-fsys0";
- reg = <0x0 0x15010000 0x0 0x3000>;
+ m_can0: can@14088000 {
+ compatible = "bosch,m_can";
+ reg = <0x0 0x14088000 0x0 0x0200>,
+ <0x0 0x14080000 0x0 0x8000>;
+ reg-names = "m_can", "message_ram";
+ interrupts = <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "int0", "int1";
+ pinctrl-0 = <&m_can0_bus>;
+ pinctrl-names = "default";
+ clocks = <&clock_peric PERIC_MCAN0_IPCLKPORT_PCLK>,
+ <&clock_peric PERIC_MCAN0_IPCLKPORT_CCLK>;
+ clock-names = "hclk", "cclk";
+ bosch,mram-cfg = <0x0 128 64 64 64 64 32 32>;
+
+ status = "disabled";
+ };
+
+ m_can1: can@14098000 {
+ compatible = "bosch,m_can";
+ reg = <0x0 0x14098000 0x0 0x0200>,
+ <0x0 0x14090000 0x0 0x8000>;
+ reg-names = "m_can", "message_ram";
+ interrupts = <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "int0", "int1";
+ pinctrl-0 = <&m_can1_bus>;
+ pinctrl-names = "default";
+ clocks = <&clock_peric PERIC_MCAN1_IPCLKPORT_PCLK>,
+ <&clock_peric PERIC_MCAN1_IPCLKPORT_CCLK>;
+ clock-names = "hclk", "cclk";
+ bosch,mram-cfg = <0x0 128 64 64 64 64 32 32>;
+
+ status = "disabled";
+ };
+
+ m_can2: can@140a8000 {
+ compatible = "bosch,m_can";
+ reg = <0x0 0x140a8000 0x0 0x0200>,
+ <0x0 0x140a0000 0x0 0x8000>;
+ reg-names = "m_can", "message_ram";
+ interrupts = <GIC_SPI 165 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 166 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "int0", "int1";
+ pinctrl-0 = <&m_can2_bus>;
+ pinctrl-names = "default";
+ clocks = <&clock_peric PERIC_MCAN2_IPCLKPORT_PCLK>,
+ <&clock_peric PERIC_MCAN2_IPCLKPORT_CCLK>;
+ clock-names = "hclk", "cclk";
+ bosch,mram-cfg = <0x0 128 64 64 64 64 32 32>;
+
+ status = "disabled";
+ };
+
+ m_can3: can@140b8000 {
+ compatible = "bosch,m_can";
+ reg = <0x0 0x140b8000 0x0 0x0200>,
+ <0x0 0x140b0000 0x0 0x8000>;
+ reg-names = "m_can", "message_ram";
+ interrupts = <GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "int0", "int1";
+ pinctrl-0 = <&m_can3_bus>;
+ pinctrl-names = "default";
+ clocks = <&clock_peric PERIC_MCAN3_IPCLKPORT_PCLK>,
+ <&clock_peric PERIC_MCAN3_IPCLKPORT_CCLK>;
+ clock-names = "hclk", "cclk";
+ bosch,mram-cfg = <0x0 128 64 64 64 64 32 32>;
+
+ status = "disabled";
+ };
+
+ i2s_0: i2s@140e0000 {
+ compatible = "tesla,fsd-i2s";
+ reg = <0x0 0x140e0000 0x0 0x100>;
+ interrupts = <GIC_SPI 206 IRQ_TYPE_LEVEL_HIGH>;
+ dmas = <&pdma1 14>, <&pdma1 13>, <&pdma1 12>;
+ dma-names = "tx", "rx", "tx-sec";
#clock-cells = <1>;
- clocks = <&fin_pll>,
- <&clock_cmu DOUT_CMU_PLL_SHARED0_DIV6>,
- <&clock_cmu DOUT_CMU_FSYS0_SHARED1DIV4>,
- <&clock_cmu DOUT_CMU_FSYS0_SHARED0DIV4>;
- clock-names = "fin_pll",
- "dout_cmu_pll_shared0_div6",
- "dout_cmu_fsys0_shared1div4",
- "dout_cmu_fsys0_shared0div4";
+ clocks = <&clock_peric PERIC_PCLK_TDM0>,
+ <&clock_peric PERIC_HCLK_TDM0>,
+ <&clock_peric PERIC_HCLK_TDM0>;
+ clock-names = "iis", "i2s_opclk0", "i2s_opclk1";
+ pinctrl-0 = <&i2s0_bus>;
+ pinctrl-names = "default";
+ #sound-dai-cells = <1>;
+
+ status = "disabled";
};
- sysreg_fsys0: system-controller@15030000 {
- compatible = "tesla,fsd-fsys0-sysreg", "syscon";
- reg = <0x0 0x15030000 0x0 0x1000>;
- };
-
- clock_fsys1: clock-controller@16810000 {
- compatible = "tesla,fsd-clock-fsys1";
- reg = <0x0 0x16810000 0x0 0x3000>;
+ i2s_1: i2s@140f0000 {
+ compatible = "tesla,fsd-i2s";
+ reg = <0x0 0x140f0000 0x0 0x100>;
+ interrupts = <GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>;
+ dmas = <&pdma1 17>, <&pdma1 16>, <&pdma1 15>;
+ dma-names = "tx", "rx", "tx-sec";
#clock-cells = <1>;
- clocks = <&fin_pll>,
- <&clock_cmu DOUT_CMU_FSYS1_SHARED0DIV8>,
- <&clock_cmu DOUT_CMU_FSYS1_SHARED0DIV4>;
- clock-names = "fin_pll",
- "dout_cmu_fsys1_shared0div8",
- "dout_cmu_fsys1_shared0div4";
+ clocks = <&clock_peric PERIC_PCLK_TDM1>,
+ <&clock_peric PERIC_HCLK_TDM1>,
+ <&clock_peric PERIC_HCLK_TDM1>;
+ clock-names = "iis", "i2s_opclk0", "i2s_opclk1";
+ pinctrl-0 = <&i2s1_bus>;
+ pinctrl-names = "default";
+ #sound-dai-cells = <1>;
+
+ status = "disabled";
};
- sysreg_fsys1: system-controller@16830000 {
- compatible = "tesla,fsd-fsys1-sysreg", "syscon";
- reg = <0x0 0x16830000 0x0 0x1000>;
+ pwm_0: pwm@14100000 {
+ compatible = "tesla,fsd-pwm", "samsung,exynos4210-pwm";
+ reg = <0x0 0x14100000 0x0 0x100>;
+ samsung,pwm-outputs = <0>, <1>, <2>, <3>;
+ #pwm-cells = <3>;
+ clocks = <&clock_peric PERIC_PWM0_IPCLKPORT_I_PCLK_S0>;
+ clock-names = "timers";
+
+ status = "disabled";
};
- mdma0: dma-controller@10100000 {
- compatible = "arm,pl330", "arm,primecell";
- reg = <0x0 0x10100000 0x0 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>;
+ pwm_1: pwm@14110000 {
+ compatible = "tesla,fsd-pwm", "samsung,exynos4210-pwm";
+ reg = <0x0 0x14110000 0x0 0x100>;
+ samsung,pwm-outputs = <0>, <1>, <2>, <3>;
+ #pwm-cells = <3>;
+ clocks = <&clock_peric PERIC_PWM1_IPCLKPORT_I_PCLK_S0>;
+ clock-names = "timers";
+
+ status = "disabled";
};
- mdma1: dma-controller@10110000 {
- compatible = "arm,pl330", "arm,primecell";
- reg = <0x0 0x10110000 0x0 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>;
+ spi_0: spi@14140000 {
+ compatible = "tesla,fsd-spi";
+ reg = <0x0 0x14140000 0x0 0x100>;
+ interrupts = <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>;
+ dmas = <&pdma1 4>, <&pdma1 5>;
+ dma-names = "tx", "rx";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ clocks = <&clock_peric PERIC_PCLK_SPI0>,
+ <&clock_peric PERIC_SCLK_SPI0>;
+ clock-names = "spi", "spi_busclk0";
+ pinctrl-0 = <&spi0_bus>;
+ pinctrl-names = "default";
+ num-cs = <1>;
+ samsung,spi-src-clk = <0>;
+
+ status = "disabled";
};
- pdma0: dma-controller@14280000 {
- compatible = "arm,pl330", "arm,primecell";
- reg = <0x0 0x14280000 0x0 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>;
+ spi_1: spi@14150000 {
+ compatible = "tesla,fsd-spi";
+ reg = <0x0 0x14150000 0x0 0x100>;
+ interrupts = <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>;
+ dmas = <&pdma1 6>, <&pdma1 7>;
+ dma-names = "tx", "rx";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ clocks = <&clock_peric PERIC_PCLK_SPI1>,
+ <&clock_peric PERIC_SCLK_SPI1>;
+ clock-names = "spi", "spi_busclk0";
+ pinctrl-0 = <&spi1_bus>;
+ pinctrl-names = "default";
+ num-cs = <1>;
+ samsung,spi-src-clk = <0>;
+
+ status = "disabled";
};
- pdma1: dma-controller@14290000 {
- compatible = "arm,pl330", "arm,primecell";
- reg = <0x0 0x14290000 0x0 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>;
+ spi_2: spi@14160000 {
+ compatible = "tesla,fsd-spi";
+ reg = <0x0 0x14160000 0x0 0x100>;
+ interrupts = <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>;
+ dmas = <&pdma1 8>, <&pdma1 9>;
+ dma-names = "tx", "rx";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ clocks = <&clock_peric PERIC_PCLK_SPI2>,
+ <&clock_peric PERIC_SCLK_SPI2>;
+ clock-names = "spi", "spi_busclk0";
+ pinctrl-0 = <&spi2_bus>;
+ pinctrl-names = "default";
+ num-cs = <1>;
+ samsung,spi-src-clk = <0>;
+
+ status = "disabled";
};
serial_0: serial@14180000 {
@@ -630,58 +790,10 @@ serial_1: serial@14190000 {
status = "disabled";
};
- pmu_system_controller: system-controller@11400000 {
- compatible = "tesla,fsd-pmu", "samsung,exynos7-pmu", "syscon";
- reg = <0x0 0x11400000 0x0 0x5000>;
- };
-
- watchdog_0: watchdog@100a0000 {
- compatible = "tesla,fsd-wdt", "samsung,exynos7-wdt";
- reg = <0x0 0x100a0000 0x0 0x100>;
- interrupts = <GIC_SPI 471 IRQ_TYPE_LEVEL_HIGH>;
- samsung,syscon-phandle = <&pmu_system_controller>;
- clocks = <&fin_pll>;
- clock-names = "watchdog";
- };
-
- watchdog_1: watchdog@100b0000 {
- compatible = "tesla,fsd-wdt", "samsung,exynos7-wdt";
- reg = <0x0 0x100b0000 0x0 0x100>;
- interrupts = <GIC_SPI 472 IRQ_TYPE_LEVEL_HIGH>;
- samsung,syscon-phandle = <&pmu_system_controller>;
- clocks = <&fin_pll>;
- clock-names = "watchdog";
- };
-
- watchdog_2: watchdog@100c0000 {
- compatible = "tesla,fsd-wdt", "samsung,exynos7-wdt";
- reg = <0x0 0x100c0000 0x0 0x100>;
- interrupts = <GIC_SPI 473 IRQ_TYPE_LEVEL_HIGH>;
- samsung,syscon-phandle = <&pmu_system_controller>;
- clocks = <&fin_pll>;
- clock-names = "watchdog";
- };
-
- pwm_0: pwm@14100000 {
- compatible = "tesla,fsd-pwm", "samsung,exynos4210-pwm";
- reg = <0x0 0x14100000 0x0 0x100>;
- samsung,pwm-outputs = <0>, <1>, <2>, <3>;
- #pwm-cells = <3>;
- clocks = <&clock_peric PERIC_PWM0_IPCLKPORT_I_PCLK_S0>;
- clock-names = "timers";
-
- status = "disabled";
- };
-
- pwm_1: pwm@14110000 {
- compatible = "tesla,fsd-pwm", "samsung,exynos4210-pwm";
- reg = <0x0 0x14110000 0x0 0x100>;
- samsung,pwm-outputs = <0>, <1>, <2>, <3>;
- #pwm-cells = <3>;
- clocks = <&clock_peric PERIC_PWM1_IPCLKPORT_I_PCLK_S0>;
- clock-names = "timers";
-
- status = "disabled";
+ pinctrl_peric: pinctrl@141f0000 {
+ compatible = "tesla,fsd-pinctrl";
+ reg = <0x0 0x141f0000 0x0 0x1000>;
+ interrupts = <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>;
};
hsi2c_0: i2c@14200000 {
@@ -796,218 +908,24 @@ hsi2c_7: i2c@14270000 {
status = "disabled";
};
- i2s_0: i2s@140e0000 {
- compatible = "tesla,fsd-i2s";
- reg = <0x0 0x140e0000 0x0 0x100>;
- interrupts = <GIC_SPI 206 IRQ_TYPE_LEVEL_HIGH>;
- dmas = <&pdma1 14>, <&pdma1 13>, <&pdma1 12>;
- dma-names = "tx", "rx", "tx-sec";
- #clock-cells = <1>;
- clocks = <&clock_peric PERIC_PCLK_TDM0>,
- <&clock_peric PERIC_HCLK_TDM0>,
- <&clock_peric PERIC_HCLK_TDM0>;
- clock-names = "iis", "i2s_opclk0", "i2s_opclk1";
- pinctrl-names = "default";
- pinctrl-0 = <&i2s0_bus>;
- #sound-dai-cells = <1>;
-
- status = "disabled";
+ pdma0: dma-controller@14280000 {
+ compatible = "arm,pl330", "arm,primecell";
+ reg = <0x0 0x14280000 0x0 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>;
};
- i2s_1: i2s@140f0000 {
- compatible = "tesla,fsd-i2s";
- reg = <0x0 0x140f0000 0x0 0x100>;
- interrupts = <GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>;
- dmas = <&pdma1 17>, <&pdma1 16>, <&pdma1 15>;
- dma-names = "tx", "rx", "tx-sec";
- #clock-cells = <1>;
- clocks = <&clock_peric PERIC_PCLK_TDM1>,
- <&clock_peric PERIC_HCLK_TDM1>,
- <&clock_peric PERIC_HCLK_TDM1>;
- clock-names = "iis", "i2s_opclk0", "i2s_opclk1";
- pinctrl-names = "default";
- pinctrl-0 = <&i2s1_bus>;
- #sound-dai-cells = <1>;
-
- status = "disabled";
- };
-
- pinctrl_pmu: pinctrl@114f0000 {
- compatible = "tesla,fsd-pinctrl";
- reg = <0x0 0x114f0000 0x0 0x1000>;
- };
-
- pinctrl_peric: pinctrl@141f0000 {
- compatible = "tesla,fsd-pinctrl";
- reg = <0x0 0x141f0000 0x0 0x1000>;
- interrupts = <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>;
- };
-
- pinctrl_fsys0: pinctrl@15020000 {
- compatible = "tesla,fsd-pinctrl";
- reg = <0x0 0x15020000 0x0 0x1000>;
- interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
- };
-
- m_can0: can@14088000 {
- compatible = "bosch,m_can";
- reg = <0x0 0x14088000 0x0 0x0200>,
- <0x0 0x14080000 0x0 0x8000>;
- reg-names = "m_can", "message_ram";
- interrupts = <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>,
- <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>;
- interrupt-names = "int0", "int1";
- pinctrl-names = "default";
- pinctrl-0 = <&m_can0_bus>;
- clocks = <&clock_peric PERIC_MCAN0_IPCLKPORT_PCLK>,
- <&clock_peric PERIC_MCAN0_IPCLKPORT_CCLK>;
- clock-names = "hclk", "cclk";
- bosch,mram-cfg = <0x0 128 64 64 64 64 32 32>;
-
- status = "disabled";
- };
-
- m_can1: can@14098000 {
- compatible = "bosch,m_can";
- reg = <0x0 0x14098000 0x0 0x0200>,
- <0x0 0x14090000 0x0 0x8000>;
- reg-names = "m_can", "message_ram";
- interrupts = <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>,
- <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>;
- interrupt-names = "int0", "int1";
- pinctrl-names = "default";
- pinctrl-0 = <&m_can1_bus>;
- clocks = <&clock_peric PERIC_MCAN1_IPCLKPORT_PCLK>,
- <&clock_peric PERIC_MCAN1_IPCLKPORT_CCLK>;
- clock-names = "hclk", "cclk";
- bosch,mram-cfg = <0x0 128 64 64 64 64 32 32>;
-
- status = "disabled";
- };
-
- m_can2: can@140a8000 {
- compatible = "bosch,m_can";
- reg = <0x0 0x140a8000 0x0 0x0200>,
- <0x0 0x140a0000 0x0 0x8000>;
- reg-names = "m_can", "message_ram";
- interrupts = <GIC_SPI 165 IRQ_TYPE_LEVEL_HIGH>,
- <GIC_SPI 166 IRQ_TYPE_LEVEL_HIGH>;
- interrupt-names = "int0", "int1";
- pinctrl-names = "default";
- pinctrl-0 = <&m_can2_bus>;
- clocks = <&clock_peric PERIC_MCAN2_IPCLKPORT_PCLK>,
- <&clock_peric PERIC_MCAN2_IPCLKPORT_CCLK>;
- clock-names = "hclk", "cclk";
- bosch,mram-cfg = <0x0 128 64 64 64 64 32 32>;
-
- status = "disabled";
- };
-
- m_can3: can@140b8000 {
- compatible = "bosch,m_can";
- reg = <0x0 0x140b8000 0x0 0x0200>,
- <0x0 0x140b0000 0x0 0x8000>;
- reg-names = "m_can", "message_ram";
- interrupts = <GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>,
- <GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH>;
- interrupt-names = "int0", "int1";
- pinctrl-names = "default";
- pinctrl-0 = <&m_can3_bus>;
- clocks = <&clock_peric PERIC_MCAN3_IPCLKPORT_PCLK>,
- <&clock_peric PERIC_MCAN3_IPCLKPORT_CCLK>;
- clock-names = "hclk", "cclk";
- bosch,mram-cfg = <0x0 128 64 64 64 64 32 32>;
-
- status = "disabled";
- };
-
- spi_0: spi@14140000 {
- compatible = "tesla,fsd-spi";
- reg = <0x0 0x14140000 0x0 0x100>;
- interrupts = <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>;
- dmas = <&pdma1 4>, <&pdma1 5>;
- dma-names = "tx", "rx";
- #address-cells = <1>;
- #size-cells = <0>;
- clocks = <&clock_peric PERIC_PCLK_SPI0>,
- <&clock_peric PERIC_SCLK_SPI0>;
- clock-names = "spi", "spi_busclk0";
- samsung,spi-src-clk = <0>;
- pinctrl-names = "default";
- pinctrl-0 = <&spi0_bus>;
- num-cs = <1>;
-
- status = "disabled";
- };
-
- spi_1: spi@14150000 {
- compatible = "tesla,fsd-spi";
- reg = <0x0 0x14150000 0x0 0x100>;
- interrupts = <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>;
- dmas = <&pdma1 6>, <&pdma1 7>;
- dma-names = "tx", "rx";
- #address-cells = <1>;
- #size-cells = <0>;
- clocks = <&clock_peric PERIC_PCLK_SPI1>,
- <&clock_peric PERIC_SCLK_SPI1>;
- clock-names = "spi", "spi_busclk0";
- samsung,spi-src-clk = <0>;
- pinctrl-names = "default";
- pinctrl-0 = <&spi1_bus>;
- num-cs = <1>;
-
- status = "disabled";
- };
-
- spi_2: spi@14160000 {
- compatible = "tesla,fsd-spi";
- reg = <0x0 0x14160000 0x0 0x100>;
- interrupts = <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>;
- dmas = <&pdma1 8>, <&pdma1 9>;
- dma-names = "tx", "rx";
- #address-cells = <1>;
- #size-cells = <0>;
- clocks = <&clock_peric PERIC_PCLK_SPI2>,
- <&clock_peric PERIC_SCLK_SPI2>;
- clock-names = "spi", "spi_busclk0";
- samsung,spi-src-clk = <0>;
- pinctrl-names = "default";
- pinctrl-0 = <&spi2_bus>;
- num-cs = <1>;
-
- status = "disabled";
- };
-
- timer@10040000 {
- compatible = "tesla,fsd-mct", "samsung,exynos4210-mct";
- reg = <0x0 0x10040000 0x0 0x800>;
- interrupts = <GIC_SPI 455 IRQ_TYPE_LEVEL_HIGH>,
- <GIC_SPI 456 IRQ_TYPE_LEVEL_HIGH>,
- <GIC_SPI 457 IRQ_TYPE_LEVEL_HIGH>,
- <GIC_SPI 458 IRQ_TYPE_LEVEL_HIGH>,
- <GIC_SPI 459 IRQ_TYPE_LEVEL_HIGH>,
- <GIC_SPI 460 IRQ_TYPE_LEVEL_HIGH>,
- <GIC_SPI 461 IRQ_TYPE_LEVEL_HIGH>,
- <GIC_SPI 462 IRQ_TYPE_LEVEL_HIGH>,
- <GIC_SPI 463 IRQ_TYPE_LEVEL_HIGH>,
- <GIC_SPI 464 IRQ_TYPE_LEVEL_HIGH>,
- <GIC_SPI 465 IRQ_TYPE_LEVEL_HIGH>,
- <GIC_SPI 466 IRQ_TYPE_LEVEL_HIGH>,
- <GIC_SPI 467 IRQ_TYPE_LEVEL_HIGH>,
- <GIC_SPI 468 IRQ_TYPE_LEVEL_HIGH>,
- <GIC_SPI 469 IRQ_TYPE_LEVEL_HIGH>,
- <GIC_SPI 470 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&fin_pll>, <&clock_imem IMEM_MCT_PCLK>;
- clock-names = "fin_pll", "mct";
- };
-
- mfc: mfc@12880000 {
- compatible = "tesla,fsd-mfc";
- reg = <0x0 0x12880000 0x0 0x10000>;
- interrupts = <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>;
- clock-names = "mfc";
- clocks = <&clock_mfc MFC_MFC_IPCLKPORT_ACLK>;
- memory-region = <&mfc_left>;
+ pdma1: dma-controller@14290000 {
+ compatible = "arm,pl330", "arm,primecell";
+ reg = <0x0 0x14290000 0x0 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>;
};
ethernet1: ethernet@14300000 {
@@ -1041,6 +959,47 @@ ethernet1: ethernet@14300000 {
status = "disabled";
};
+ smmu_peric: iommu@14900000 {
+ compatible = "arm,mmu-500";
+ reg = <0x0 0x14900000 0x0 0x10000>;
+ #iommu-cells = <2>;
+ #global-interrupts = <5>;
+ interrupts = <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>, /* Global secure fault */
+ <GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH>, /* Global non-secure fault */
+ <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>, /* Combined secure interrupt */
+ <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>, /* Combined non-secure interrupt */
+ /* Performance counter interrupts */
+ <GIC_SPI 198 IRQ_TYPE_LEVEL_HIGH>, /* for PERIC */
+ /* Per context non-secure context interrupts, 0-1 interrupts */
+ <GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH>, /* for CONTEXT_0 */
+ <GIC_SPI 195 IRQ_TYPE_LEVEL_HIGH>; /* for CONTEXT_1 */
+ };
+
+ clock_fsys0: clock-controller@15010000 {
+ compatible = "tesla,fsd-clock-fsys0";
+ reg = <0x0 0x15010000 0x0 0x3000>;
+ #clock-cells = <1>;
+ clocks = <&fin_pll>,
+ <&clock_cmu DOUT_CMU_PLL_SHARED0_DIV6>,
+ <&clock_cmu DOUT_CMU_FSYS0_SHARED1DIV4>,
+ <&clock_cmu DOUT_CMU_FSYS0_SHARED0DIV4>;
+ clock-names = "fin_pll",
+ "dout_cmu_pll_shared0_div6",
+ "dout_cmu_fsys0_shared1div4",
+ "dout_cmu_fsys0_shared0div4";
+ };
+
+ pinctrl_fsys0: pinctrl@15020000 {
+ compatible = "tesla,fsd-pinctrl";
+ reg = <0x0 0x15020000 0x0 0x1000>;
+ interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
+ };
+
+ sysreg_fsys0: system-controller@15030000 {
+ compatible = "tesla,fsd-fsys0-sysreg", "syscon";
+ reg = <0x0 0x15030000 0x0 0x1000>;
+ };
+
ufs: ufs@15120000 {
compatible = "tesla,fsd-ufs";
reg = <0x0 0x15120000 0x0 0x200>, /* 0: HCI standard */
@@ -1091,6 +1050,47 @@ ethernet0: ethernet@15300000 {
status = "disabled";
};
+
+ smmu_fsys0: iommu@15450000 {
+ compatible = "arm,mmu-500";
+ reg = <0x0 0x15450000 0x0 0x10000>;
+ #iommu-cells = <2>;
+ #global-interrupts = <5>;
+ interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>, /* Global secure fault */
+ <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>, /* Global non-secure fault */
+ <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>, /* Combined secure interrupt */
+ <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>, /* Combined non-secure interrupt */
+ /* Performance counter interrupts */
+ <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>, /* for FSYS0 */
+ /* Per context non-secure context interrupts, 0-1 interrupts */
+ <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>, /* for CONTEXT_0 */
+ <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; /* for CONTEXT_1 */
+ };
+
+ clock_fsys1: clock-controller@16810000 {
+ compatible = "tesla,fsd-clock-fsys1";
+ reg = <0x0 0x16810000 0x0 0x3000>;
+ #clock-cells = <1>;
+ clocks = <&fin_pll>,
+ <&clock_cmu DOUT_CMU_FSYS1_SHARED0DIV8>,
+ <&clock_cmu DOUT_CMU_FSYS1_SHARED0DIV4>;
+ clock-names = "fin_pll",
+ "dout_cmu_fsys1_shared0div8",
+ "dout_cmu_fsys1_shared0div4";
+ };
+
+ sysreg_fsys1: system-controller@16830000 {
+ compatible = "tesla,fsd-fsys1-sysreg", "syscon";
+ reg = <0x0 0x16830000 0x0 0x1000>;
+ };
+ };
+
+ timer {
+ compatible = "arm,armv8-timer";
+ interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>,
+ <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>,
+ <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>,
+ <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>;
};
};
--
2.53.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH 5/5] arm64: dts: fsd: Re-order properties to match coding style
2026-09-09 14:17 [PATCH 0/5] arm64: dts: fsd: Cleanups with new dt-style-check Krzysztof Kozlowski
` (3 preceding siblings ...)
2026-09-09 14:17 ` [PATCH 4/5] arm64: dts: fsd: Re-order nodes to match coding style Krzysztof Kozlowski
@ 2026-09-09 14:17 ` Krzysztof Kozlowski
2026-09-10 16:01 ` Alim Akhtar
4 siblings, 1 reply; 11+ messages in thread
From: Krzysztof Kozlowski @ 2026-09-09 14:17 UTC (permalink / raw)
To: Alim Akhtar, linux-fsd, Krzysztof Kozlowski, Peter Griffin,
Rob Herring, Conor Dooley
Cc: linux-arm-kernel, linux-samsung-soc, devicetree, linux-kernel,
Krzysztof Kozlowski
Re-order a few properties to match coding style, as pointed out by
dt-check-style, e.g.:
fsd.dtsi:357: [property-order] property 'ranges' out of canonical order (should sort before '#size-cells')
fsd.dtsi:362: [property-order] property 'reg' out of canonical order (should sort before 'no-map')
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
---
arch/arm64/boot/dts/tesla/fsd.dtsi | 40 +++++++++++++++++++-------------------
1 file changed, 20 insertions(+), 20 deletions(-)
diff --git a/arch/arm64/boot/dts/tesla/fsd.dtsi b/arch/arm64/boot/dts/tesla/fsd.dtsi
index 22b997880d65..36925b2749b5 100644
--- a/arch/arm64/boot/dts/tesla/fsd.dtsi
+++ b/arch/arm64/boot/dts/tesla/fsd.dtsi
@@ -344,23 +344,23 @@ psci {
};
reserved-memory {
+ ranges;
#address-cells = <2>;
#size-cells = <2>;
- ranges;
mfc_left: region@84000000 {
compatible = "shared-dma-pool";
- no-map;
reg = <0 0x84000000 0 0x8000000>;
+ no-map;
};
};
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 = <2>;
+ #size-cells = <2>;
clock_imem: clock-controller@10010000 {
compatible = "tesla,fsd-clock-imem";
@@ -468,11 +468,11 @@ smmu_imem: iommu@10200000 {
gic: interrupt-controller@10400000 {
compatible = "arm,gic-v3";
+ reg = <0x0 0x10400000 0x0 0x10000>, /* GICD */
+ <0x0 0x10600000 0x0 0x200000>; /* GICR_RD+GICR_SGI */
#address-cells = <0>;
#interrupt-cells = <3>;
interrupt-controller;
- reg = <0x0 0x10400000 0x0 0x10000>, /* GICD */
- <0x0 0x10600000 0x0 0x200000>; /* GICR_RD+GICR_SGI */
interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
};
@@ -686,10 +686,10 @@ i2s_1: i2s@140f0000 {
pwm_0: pwm@14100000 {
compatible = "tesla,fsd-pwm", "samsung,exynos4210-pwm";
reg = <0x0 0x14100000 0x0 0x100>;
- samsung,pwm-outputs = <0>, <1>, <2>, <3>;
#pwm-cells = <3>;
clocks = <&clock_peric PERIC_PWM0_IPCLKPORT_I_PCLK_S0>;
clock-names = "timers";
+ samsung,pwm-outputs = <0>, <1>, <2>, <3>;
status = "disabled";
};
@@ -697,10 +697,10 @@ pwm_0: pwm@14100000 {
pwm_1: pwm@14110000 {
compatible = "tesla,fsd-pwm", "samsung,exynos4210-pwm";
reg = <0x0 0x14110000 0x0 0x100>;
- samsung,pwm-outputs = <0>, <1>, <2>, <3>;
#pwm-cells = <3>;
clocks = <&clock_peric PERIC_PWM1_IPCLKPORT_I_PCLK_S0>;
clock-names = "timers";
+ samsung,pwm-outputs = <0>, <1>, <2>, <3>;
status = "disabled";
};
@@ -802,8 +802,8 @@ hsi2c_0: i2c@14200000 {
interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
#size-cells = <0>;
- pinctrl-names = "default";
pinctrl-0 = <&hs_i2c0_bus>;
+ pinctrl-names = "default";
clocks = <&clock_peric PERIC_PCLK_HSI2C0>;
clock-names = "hsi2c";
@@ -816,8 +816,8 @@ hsi2c_1: i2c@14210000 {
interrupts = <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
#size-cells = <0>;
- pinctrl-names = "default";
pinctrl-0 = <&hs_i2c1_bus>;
+ pinctrl-names = "default";
clocks = <&clock_peric PERIC_PCLK_HSI2C1>;
clock-names = "hsi2c";
@@ -830,8 +830,8 @@ hsi2c_2: i2c@14220000 {
interrupts = <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
#size-cells = <0>;
- pinctrl-names = "default";
pinctrl-0 = <&hs_i2c2_bus>;
+ pinctrl-names = "default";
clocks = <&clock_peric PERIC_PCLK_HSI2C2>;
clock-names = "hsi2c";
@@ -844,8 +844,8 @@ hsi2c_3: i2c@14230000 {
interrupts = <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
#size-cells = <0>;
- pinctrl-names = "default";
pinctrl-0 = <&hs_i2c3_bus>;
+ pinctrl-names = "default";
clocks = <&clock_peric PERIC_PCLK_HSI2C3>;
clock-names = "hsi2c";
@@ -858,8 +858,8 @@ hsi2c_4: i2c@14240000 {
interrupts = <GIC_SPI 152 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
#size-cells = <0>;
- pinctrl-names = "default";
pinctrl-0 = <&hs_i2c4_bus>;
+ pinctrl-names = "default";
clocks = <&clock_peric PERIC_PCLK_HSI2C4>;
clock-names = "hsi2c";
@@ -872,8 +872,8 @@ hsi2c_5: i2c@14250000 {
interrupts = <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
#size-cells = <0>;
- pinctrl-names = "default";
pinctrl-0 = <&hs_i2c5_bus>;
+ pinctrl-names = "default";
clocks = <&clock_peric PERIC_PCLK_HSI2C5>;
clock-names = "hsi2c";
@@ -886,8 +886,8 @@ hsi2c_6: i2c@14260000 {
interrupts = <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
#size-cells = <0>;
- pinctrl-names = "default";
pinctrl-0 = <&hs_i2c6_bus>;
+ pinctrl-names = "default";
clocks = <&clock_peric PERIC_PCLK_HSI2C6>;
clock-names = "hsi2c";
@@ -900,8 +900,8 @@ hsi2c_7: i2c@14270000 {
interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
#size-cells = <0>;
- pinctrl-names = "default";
pinctrl-0 = <&hs_i2c7_bus>;
+ pinctrl-names = "default";
clocks = <&clock_peric PERIC_PCLK_HSI2C7>;
clock-names = "hsi2c";
@@ -949,10 +949,10 @@ ethernet1: ethernet@14300000 {
assigned-clocks = <&clock_peric PERIC_EQOS_PHYRXCLK_MUX>,
<&clock_peric PERIC_EQOS_PHYRXCLK>;
assigned-clock-parents = <&clock_peric PERIC_EQOS_PHYRXCLK>;
- pinctrl-names = "default";
pinctrl-0 = <ð1_tx_clk>, <ð1_tx_data>, <ð1_tx_ctrl>,
<ð1_phy_intr>, <ð1_rx_clk>, <ð1_rx_data>,
<ð1_rx_ctrl>, <ð1_mdio>;
+ pinctrl-names = "default";
local-mac-address = [00 00 00 00 00 00];
iommus = <&smmu_peric 0x0 0x1>;
@@ -1012,8 +1012,8 @@ ufs: ufs@15120000 {
<&clock_fsys0 UFS0_TOP0_CLK_UNIPRO>;
clock-names = "core_clk", "sclk_unipro_main";
freq-table-hz = <0 0>, <0 0>;
- pinctrl-names = "default";
pinctrl-0 = <&ufs_rst_n &ufs_refclk_out>;
+ pinctrl-names = "default";
phys = <&ufs_phy>;
phy-names = "ufs-phy";
@@ -1024,10 +1024,10 @@ ufs_phy: ufs-phy@15124000 {
compatible = "tesla,fsd-ufs-phy";
reg = <0x0 0x15124000 0x0 0x800>;
reg-names = "phy-pma";
- samsung,pmu-syscon = <&pmu_system_controller>;
#phy-cells = <0>;
clocks = <&clock_fsys0 UFS0_MPHY_REFCLK_IXTAL26>;
clock-names = "ref_clk";
+ samsung,pmu-syscon = <&pmu_system_controller>;
};
ethernet0: ethernet@15300000 {
@@ -1041,10 +1041,10 @@ ethernet0: ethernet@15300000 {
<&clock_fsys0 FSYS0_EQOS_TOP0_IPCLKPORT_RGMII_CLK_I>,
<&clock_fsys0 FSYS0_EQOS_TOP0_IPCLKPORT_CLK_RX_I>;
clock-names = "ptp_ref", "master_bus", "slave_bus", "tx", "rx";
- pinctrl-names = "default";
pinctrl-0 = <ð0_tx_clk>, <ð0_tx_data>, <ð0_tx_ctrl>,
<ð0_phy_intr>, <ð0_rx_clk>, <ð0_rx_data>,
<ð0_rx_ctrl>, <ð0_mdio>;
+ pinctrl-names = "default";
local-mac-address = [00 00 00 00 00 00];
iommus = <&smmu_fsys0 0x0 0x1>;
--
2.53.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* RE: [PATCH 2/5] arm64: dts: fsd: evb: Correct node order
2026-09-09 14:17 ` [PATCH 2/5] arm64: dts: fsd: evb: Correct node order Krzysztof Kozlowski
@ 2026-09-10 14:52 ` Alim Akhtar
0 siblings, 0 replies; 11+ messages in thread
From: Alim Akhtar @ 2026-09-10 14:52 UTC (permalink / raw)
To: 'Krzysztof Kozlowski', linux-fsd,
'Krzysztof Kozlowski', 'Peter Griffin',
'Rob Herring', 'Conor Dooley'
Cc: linux-arm-kernel, linux-samsung-soc, devicetree, linux-kernel
> -----Original Message-----
> From: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
> Sent: Wednesday, September 9, 2026 7:48 PM
> To: Alim Akhtar <alim.akhtar@samsung.com>; linux-fsd@tesla.com;
> Krzysztof Kozlowski <krzk@kernel.org>; Peter Griffin
> <peter.griffin@linaro.org>; Rob Herring <robh@kernel.org>; Conor Dooley
> <conor+dt@kernel.org>
> Cc: linux-arm-kernel@lists.infradead.org; linux-samsung-
> soc@vger.kernel.org; devicetree@vger.kernel.org; linux-
> kernel@vger.kernel.org; Krzysztof Kozlowski
> <krzysztof.kozlowski@oss.qualcomm.com>
> Subject: [PATCH 2/5] arm64: dts: fsd: evb: Correct node order
>
> Order nodes by name to fix dt-check-style warning:
>
> fsd-evb.dts:61: [child-name-order] child node 'codec' out of name order
>
> Signed-off-by: Krzysztof Kozlowski
> <krzysztof.kozlowski@oss.qualcomm.com>
> ---
Reviewed-by: Alim Akhtar <alim.akhtar@samsung.com>
> arch/arm64/boot/dts/tesla/fsd-evb.dts | 10 +++++-----
> 1 file changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/tesla/fsd-evb.dts
> b/arch/arm64/boot/dts/tesla/fsd-evb.dts
> index 503abe52a81c..a1f3d3fbbf8b 100644
> --- a/arch/arm64/boot/dts/tesla/fsd-evb.dts
> +++ b/arch/arm64/boot/dts/tesla/fsd-evb.dts
> @@ -50,6 +50,11 @@ simple-audio-card,dai-link@0 {
> bitclock-master = <&tlv320aic3x>;
> frame-master = <&tlv320aic3x>;
>
> + codec {
> + sound-dai = <&tlv320aic3x>;
> + system-clock-frequency = <33000000>;
> + };
> +
> cpu-0 {
> sound-dai = <&i2s_0 0>;
> };
> @@ -57,11 +62,6 @@ cpu-0 {
> cpu-1 {
> sound-dai = <&i2s_0 1>;
> };
> -
> - codec {
> - sound-dai = <&tlv320aic3x>;
> - system-clock-frequency = <33000000>;
> - };
> };
> };
> };
>
> --
> 2.53.0
^ permalink raw reply [flat|nested] 11+ messages in thread
* RE: [PATCH 1/5] arm64: dts: fsd: Fix indentation of CPU nodes
2026-09-09 14:17 ` [PATCH 1/5] arm64: dts: fsd: Fix indentation of CPU nodes Krzysztof Kozlowski
@ 2026-09-10 15:19 ` Alim Akhtar
0 siblings, 0 replies; 11+ messages in thread
From: Alim Akhtar @ 2026-09-10 15:19 UTC (permalink / raw)
To: 'Krzysztof Kozlowski', linux-fsd,
'Krzysztof Kozlowski', 'Peter Griffin',
'Rob Herring', 'Conor Dooley'
Cc: linux-arm-kernel, linux-samsung-soc, devicetree, linux-kernel
> -----Original Message-----
> From: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
> Sent: Wednesday, September 9, 2026 7:48 PM
> To: Alim Akhtar <alim.akhtar@samsung.com>; linux-fsd@tesla.com;
> Krzysztof Kozlowski <krzk@kernel.org>; Peter Griffin
> <peter.griffin@linaro.org>; Rob Herring <robh@kernel.org>; Conor Dooley
> <conor+dt@kernel.org>
> Cc: linux-arm-kernel@lists.infradead.org; linux-samsung-
> soc@vger.kernel.org; devicetree@vger.kernel.org; linux-
> kernel@vger.kernel.org; Krzysztof Kozlowski
> <krzysztof.kozlowski@oss.qualcomm.com>
> Subject: [PATCH 1/5] arm64: dts: fsd: Fix indentation of CPU nodes
>
> Drop one tab too much to fix dt-check-style warning:
>
> fsd.dtsi:198: [indent-consistent] indent mismatch (expected depth 3 * '\t')
>
> Signed-off-by: Krzysztof Kozlowski
> <krzysztof.kozlowski@oss.qualcomm.com>
> ---
Reviewed-by: Alim Akhtar <alim.akhtar@samsung.com>
^ permalink raw reply [flat|nested] 11+ messages in thread
* RE: [PATCH 3/5] arm64: dts: fsd: Move idle states out of CPUs node
2026-09-09 14:17 ` [PATCH 3/5] arm64: dts: fsd: Move idle states out of CPUs node Krzysztof Kozlowski
@ 2026-09-10 15:26 ` Alim Akhtar
0 siblings, 0 replies; 11+ messages in thread
From: Alim Akhtar @ 2026-09-10 15:26 UTC (permalink / raw)
To: 'Krzysztof Kozlowski', linux-fsd,
'Krzysztof Kozlowski', 'Peter Griffin',
'Rob Herring', 'Conor Dooley'
Cc: linux-arm-kernel, linux-samsung-soc, devicetree, linux-kernel
> -----Original Message-----
> From: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
> Sent: Wednesday, September 9, 2026 7:48 PM
> To: Alim Akhtar <alim.akhtar@samsung.com>; linux-fsd@tesla.com;
> Krzysztof Kozlowski <krzk@kernel.org>; Peter Griffin
> <peter.griffin@linaro.org>; Rob Herring <robh@kernel.org>; Conor Dooley
> <conor+dt@kernel.org>
> Cc: linux-arm-kernel@lists.infradead.org; linux-samsung-
> soc@vger.kernel.org; devicetree@vger.kernel.org; linux-
> kernel@vger.kernel.org; Krzysztof Kozlowski
> <krzysztof.kozlowski@oss.qualcomm.com>
> Subject: [PATCH 3/5] arm64: dts: fsd: Move idle states out of CPUs node
>
> Idle states are not really part of CPUs, as often they have domain idle states,
> so move them level up to fix to fix dt-check-style warning:
>
> fsd.dtsi:300: [child-name-order] child node 'idle-states' out of name order
>
> Also, re-order properties to silence:
>
> fsd.dtsi:305: [property-order] property 'compatible' out of canonical order
> (should sort before 'idle-state-name')
> fsd.dtsi:308: [property-order] property 'entry-latency-us' out of canonical
> order (should sort before 'arm,psci-suspend-param')
>
> Signed-off-by: Krzysztof Kozlowski
> <krzysztof.kozlowski@oss.qualcomm.com>
> ---
Probably this need to be done for many other SoCs and platforms
Reviewed-by: Alim Akhtar <alim.akhtar@samsung.com>
> arch/arm64/boot/dts/tesla/fsd.dtsi | 22 +++++++++++-----------
> 1 file changed, 11 insertions(+), 11 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/tesla/fsd.dtsi
> b/arch/arm64/boot/dts/tesla/fsd.dtsi
> index d076ea634f4e..acbe93756a76 100644
> --- a/arch/arm64/boot/dts/tesla/fsd.dtsi
> +++ b/arch/arm64/boot/dts/tesla/fsd.dtsi
> @@ -296,19 +296,19 @@ cpucl_l2: l2-cache0 {
> cache-line-size = <64>;
> cache-sets = <4096>;
> };
> + };
>
> - idle-states {
> - entry-method = "psci";
> + idle-states {
> + entry-method = "psci";
>
> - cpu_sleep: cpu-sleep {
> - idle-state-name = "c2";
> - compatible = "arm,idle-state";
> - local-timer-stop;
> - arm,psci-suspend-param = <0x0010000>;
> - entry-latency-us = <30>;
> - exit-latency-us = <75>;
> - min-residency-us = <300>;
> - };
> + cpu_sleep: cpu-sleep {
> + compatible = "arm,idle-state";
> + idle-state-name = "c2";
> + local-timer-stop;
> + entry-latency-us = <30>;
> + exit-latency-us = <75>;
> + min-residency-us = <300>;
> + arm,psci-suspend-param = <0x0010000>;
> };
> };
>
>
> --
> 2.53.0
^ permalink raw reply [flat|nested] 11+ messages in thread
* RE: [PATCH 4/5] arm64: dts: fsd: Re-order nodes to match coding style
2026-09-09 14:17 ` [PATCH 4/5] arm64: dts: fsd: Re-order nodes to match coding style Krzysztof Kozlowski
@ 2026-09-10 15:59 ` Alim Akhtar
0 siblings, 0 replies; 11+ messages in thread
From: Alim Akhtar @ 2026-09-10 15:59 UTC (permalink / raw)
To: 'Krzysztof Kozlowski', linux-fsd,
'Krzysztof Kozlowski', 'Peter Griffin',
'Rob Herring', 'Conor Dooley'
Cc: linux-arm-kernel, linux-samsung-soc, devicetree, linux-kernel
> -----Original Message-----
> From: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
> Sent: Wednesday, September 9, 2026 7:48 PM
> To: Alim Akhtar <alim.akhtar@samsung.com>; linux-fsd@tesla.com;
> Krzysztof Kozlowski <krzk@kernel.org>; Peter Griffin
> <peter.griffin@linaro.org>; Rob Herring <robh@kernel.org>; Conor Dooley
> <conor+dt@kernel.org>
> Cc: linux-arm-kernel@lists.infradead.org; linux-samsung-
> soc@vger.kernel.org; devicetree@vger.kernel.org; linux-
> kernel@vger.kernel.org; Krzysztof Kozlowski
> <krzysztof.kozlowski@oss.qualcomm.com>
> Subject: [PATCH 4/5] arm64: dts: fsd: Re-order nodes to match coding style
>
> Re-order several top-level and MMIO nodes to match coding style - ordering
> by name or by unit address, as pointed out by dt-check-style,
> e.g.:
>
> fsd.dtsi:981: [child-address-order] child node @10040000 out of address
> order
> fsd.dtsi:315: [child-name-order] child node 'arm-pmu' out of name order
> fsd.dtsi:348: [child-name-order] child node 'clock' out of name order
>
> While moving chunks of code, also re-order a few properties (I2S, SPI and
> CAN nodes) to fix:
>
> fsd.dtsi:661: [property-order] property 'clocks' out of canonical order
> (should sort before 'samsung,syscon-phandle')
> fsd.dtsi:936: [property-order] property 'pinctrl-names' must be placed after
> 'pinctrl-0'
> fsd.dtsi:936: [property-order] property 'pinctrl-names' out of canonical
> order (should sort before 'samsung,spi-src-clk')
>
> Moving several nodes already creates unreviewable commit, thus reshuffling
> the properties allows to skip changing the same line twice without loss of
> readability.
>
> Signed-off-by: Krzysztof Kozlowski
> <krzysztof.kozlowski@oss.qualcomm.com>
> ---
Reviewed-by: Alim Akhtar <alim.akhtar@samsung.com>
^ permalink raw reply [flat|nested] 11+ messages in thread
* RE: [PATCH 5/5] arm64: dts: fsd: Re-order properties to match coding style
2026-09-09 14:17 ` [PATCH 5/5] arm64: dts: fsd: Re-order properties " Krzysztof Kozlowski
@ 2026-09-10 16:01 ` Alim Akhtar
0 siblings, 0 replies; 11+ messages in thread
From: Alim Akhtar @ 2026-09-10 16:01 UTC (permalink / raw)
To: 'Krzysztof Kozlowski', linux-fsd,
'Krzysztof Kozlowski', 'Peter Griffin',
'Rob Herring', 'Conor Dooley'
Cc: linux-arm-kernel, linux-samsung-soc, devicetree, linux-kernel
> -----Original Message-----
> From: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
> Sent: Wednesday, September 9, 2026 7:48 PM
> To: Alim Akhtar <alim.akhtar@samsung.com>; linux-fsd@tesla.com;
> Krzysztof Kozlowski <krzk@kernel.org>; Peter Griffin
> <peter.griffin@linaro.org>; Rob Herring <robh@kernel.org>; Conor Dooley
> <conor+dt@kernel.org>
> Cc: linux-arm-kernel@lists.infradead.org; linux-samsung-
> soc@vger.kernel.org; devicetree@vger.kernel.org; linux-
> kernel@vger.kernel.org; Krzysztof Kozlowski
> <krzysztof.kozlowski@oss.qualcomm.com>
> Subject: [PATCH 5/5] arm64: dts: fsd: Re-order properties to match coding
> style
>
> Re-order a few properties to match coding style, as pointed out by dt-check-
> style, e.g.:
>
> fsd.dtsi:357: [property-order] property 'ranges' out of canonical order
> (should sort before '#size-cells')
> fsd.dtsi:362: [property-order] property 'reg' out of canonical order (should
> sort before 'no-map')
>
> Signed-off-by: Krzysztof Kozlowski
> <krzysztof.kozlowski@oss.qualcomm.com>
> ---
Reviewed-by: Alim Akhtar <alim.akhtar@samsung.com>
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2026-09-11 2:34 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-09 14:17 [PATCH 0/5] arm64: dts: fsd: Cleanups with new dt-style-check Krzysztof Kozlowski
2026-09-09 14:17 ` [PATCH 1/5] arm64: dts: fsd: Fix indentation of CPU nodes Krzysztof Kozlowski
2026-09-10 15:19 ` Alim Akhtar
2026-09-09 14:17 ` [PATCH 2/5] arm64: dts: fsd: evb: Correct node order Krzysztof Kozlowski
2026-09-10 14:52 ` Alim Akhtar
2026-09-09 14:17 ` [PATCH 3/5] arm64: dts: fsd: Move idle states out of CPUs node Krzysztof Kozlowski
2026-09-10 15:26 ` Alim Akhtar
2026-09-09 14:17 ` [PATCH 4/5] arm64: dts: fsd: Re-order nodes to match coding style Krzysztof Kozlowski
2026-09-10 15:59 ` Alim Akhtar
2026-09-09 14:17 ` [PATCH 5/5] arm64: dts: fsd: Re-order properties " Krzysztof Kozlowski
2026-09-10 16:01 ` Alim Akhtar
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox