* [PATCH 0/4] riscv: dts: thead: Cleanup with dt-check-style
@ 2026-10-02 13:43 Kanak Shilledar
2026-10-02 13:43 ` [PATCH 1/4] riscv: dts: thead: beaglev-ahead: " Kanak Shilledar
` (3 more replies)
0 siblings, 4 replies; 5+ messages in thread
From: Kanak Shilledar @ 2026-10-02 13:43 UTC (permalink / raw)
To: Drew Fustini, Guo Ren, Fu Wei, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Paul Walmsley, Palmer Dabbelt, Albert Ou,
Alexandre Ghiti
Cc: linux-riscv, devicetree, linux-kernel, Kanak Shilledar
Fix almost all warnings thrown by dt-check-style after krzk's updates
to the tool [1] when run under the strict mode. There are still a few
warnings remaining which are documented in the relevant commit message.
By doing this the files become easier to read and maintain.
After this patch series only the following warnings are thrown:
arch/riscv/boot/dts/thead/th1520.dtsi:221: [child-name-order] child node 'oscillator' out of name order
arch/riscv/boot/dts/thead/th1520.dtsi:227: [child-name-order] child node '32k-oscillator' out of name order
arch/riscv/boot/dts/thead/th1520.dtsi:248: [property-name] property name "snps,wr_osr_lmt" is using discouraged style
arch/riscv/boot/dts/thead/th1520.dtsi:249: [property-name] property name "snps,rd_osr_lmt" is using discouraged style
arch/riscv/boot/dts/thead/th1520.dtsi:253: [child-name-order] child node 'aon' out of name order
These are left for future work as they create a very large diff.
[1] https://github.com/krzk/linux/tree/b4/dts-style-checker-blank-lines
Signed-off-by: Kanak Shilledar <kanak.shilledar@axis.com>
---
Kanak Shilledar (4):
riscv: dts: thead: beaglev-ahead: Cleanup with dt-check-style
riscv: dts: thead: th1520: Cleanup with dt-check-style
riscv: dts: th1520-lichee-module-4a: Cleanup with dt-check-style
riscv: dts: thead: th1520-lichee-pi-4a: Cleanup with dt-check-style
arch/riscv/boot/dts/thead/th1520-beaglev-ahead.dts | 119 +++++++++++----------
.../boot/dts/thead/th1520-lichee-module-4a.dtsi | 56 +++++-----
arch/riscv/boot/dts/thead/th1520-lichee-pi-4a.dts | 90 ++++++++--------
arch/riscv/boot/dts/thead/th1520.dtsi | 108 ++++++++++++-------
4 files changed, 208 insertions(+), 165 deletions(-)
---
base-commit: 3cc5a8e8ee39edbd9c918f12342c8fd4a177a47d
change-id: 20260918-fix-dts-th1520-7a0a14123be1
Best regards,
--
Kanak Shilledar <kanak.shilledar@axis.com>
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 1/4] riscv: dts: thead: beaglev-ahead: Cleanup with dt-check-style
2026-10-02 13:43 [PATCH 0/4] riscv: dts: thead: Cleanup with dt-check-style Kanak Shilledar
@ 2026-10-02 13:43 ` Kanak Shilledar
2026-10-02 13:43 ` [PATCH 2/4] riscv: dts: thead: th1520: " Kanak Shilledar
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: Kanak Shilledar @ 2026-10-02 13:43 UTC (permalink / raw)
To: Drew Fustini, Guo Ren, Fu Wei, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Paul Walmsley, Palmer Dabbelt, Albert Ou,
Alexandre Ghiti
Cc: linux-riscv, devicetree, linux-kernel, Kanak Shilledar
A lot of warnings were thrown via krzk's updates to the dt-check-style
tool. These were observed when running the tool in strict mode. Most
of the issues were related to missing blank lines and out of order
properties and nodes such as:
thead/th1520-beaglev-ahead.dts:43: [child-name-order] child node 'leds' out of name order
thead/th1520-beaglev-ahead.dts:46: [property-order] property 'compatible' out of canonical order (should sort before 'pinctrl-0')
thead/th1520-beaglev-ahead.dts:79: [child-name-order] child node 'hdmi-connector' out of name order
thead/th1520-beaglev-ahead.dts:115: [required-blank-lines] "status" must be preceded by a blank line
[...]
Fix these warnings to make the file more readable and maintainable
along with that to make it more compliant with the devicetree
specifications.
Signed-off-by: Kanak Shilledar <kanak.shilledar@axis.com>
---
arch/riscv/boot/dts/thead/th1520-beaglev-ahead.dts | 119 +++++++++++----------
1 file changed, 62 insertions(+), 57 deletions(-)
diff --git a/arch/riscv/boot/dts/thead/th1520-beaglev-ahead.dts b/arch/riscv/boot/dts/thead/th1520-beaglev-ahead.dts
index e16484a476534..426890f812745 100644
--- a/arch/riscv/boot/dts/thead/th1520-beaglev-ahead.dts
+++ b/arch/riscv/boot/dts/thead/th1520-beaglev-ahead.dts
@@ -35,15 +35,21 @@ chosen {
stdout-path = "serial0:115200n8";
};
- memory@0 {
- device_type = "memory";
- reg = <0x0 0x00000000 0x1 0x00000000>;
+ hdmi-connector {
+ compatible = "hdmi-connector";
+ type = "d";
+
+ port {
+ hdmi_con_in: endpoint {
+ remote-endpoint = <&hdmi_out_con>;
+ };
+ };
};
leds {
- pinctrl-names = "default";
- pinctrl-0 = <&led_pins>;
compatible = "gpio-leds";
+ pinctrl-0 = <&led_pins>;
+ pinctrl-names = "default";
led-1 {
gpios = <&gpio4 8 GPIO_ACTIVE_HIGH>;
@@ -76,15 +82,9 @@ led-5 {
};
};
- hdmi-connector {
- compatible = "hdmi-connector";
- type = "d";
-
- port {
- hdmi_con_in: endpoint {
- remote-endpoint = <&hdmi_out_con>;
- };
- };
+ memory@0 {
+ device_type = "memory";
+ reg = <0x0 0x00000000 0x1 0x00000000>;
};
wifi_pwrseq: wifi-pwrseq {
@@ -112,14 +112,16 @@ &emmc {
non-removable;
no-sdio;
no-sd;
+
status = "okay";
};
&gmac0 {
- pinctrl-names = "default";
pinctrl-0 = <&gmac0_pins>;
+ pinctrl-names = "default";
phy-handle = <&phy0>;
phy-mode = "rgmii-id";
+
status = "okay";
};
@@ -153,36 +155,6 @@ led-pins {
&padctrl0_apsys {
gmac0_pins: gmac0-0 {
- tx-pins {
- pins = "GMAC0_TX_CLK",
- "GMAC0_TXEN",
- "GMAC0_TXD0",
- "GMAC0_TXD1",
- "GMAC0_TXD2",
- "GMAC0_TXD3";
- function = "gmac0";
- bias-disable;
- drive-strength = <25>;
- input-disable;
- input-schmitt-disable;
- slew-rate = <0>;
- };
-
- rx-pins {
- pins = "GMAC0_RX_CLK",
- "GMAC0_RXDV",
- "GMAC0_RXD0",
- "GMAC0_RXD1",
- "GMAC0_RXD2",
- "GMAC0_RXD3";
- function = "gmac0";
- bias-disable;
- drive-strength = <1>;
- input-enable;
- input-schmitt-disable;
- slew-rate = <0>;
- };
-
mdc-pins {
pins = "GMAC0_MDC";
function = "gmac0";
@@ -203,6 +175,16 @@ mdio-pins {
slew-rate = <0>;
};
+ phy-interrupt-pins {
+ pins = "GMAC0_CRS"; /* GPIO3_22 */
+ function = "gpio";
+ bias-pull-up;
+ drive-strength = <1>;
+ input-enable;
+ input-schmitt-enable;
+ slew-rate = <0>;
+ };
+
phy-reset-pins {
pins = "GMAC0_COL"; /* GPIO3_21 */
bias-disable;
@@ -212,28 +194,38 @@ phy-reset-pins {
slew-rate = <0>;
};
- phy-interrupt-pins {
- pins = "GMAC0_CRS"; /* GPIO3_22 */
- function = "gpio";
- bias-pull-up;
+ rx-pins {
+ pins = "GMAC0_RX_CLK",
+ "GMAC0_RXDV",
+ "GMAC0_RXD0",
+ "GMAC0_RXD1",
+ "GMAC0_RXD2",
+ "GMAC0_RXD3";
+ function = "gmac0";
+ bias-disable;
drive-strength = <1>;
input-enable;
- input-schmitt-enable;
+ input-schmitt-disable;
slew-rate = <0>;
};
- };
- uart0_pins: uart0-0 {
tx-pins {
- pins = "UART0_TXD";
- function = "uart";
+ pins = "GMAC0_TX_CLK",
+ "GMAC0_TXEN",
+ "GMAC0_TXD0",
+ "GMAC0_TXD1",
+ "GMAC0_TXD2",
+ "GMAC0_TXD3";
+ function = "gmac0";
bias-disable;
- drive-strength = <3>;
+ drive-strength = <25>;
input-disable;
input-schmitt-disable;
slew-rate = <0>;
};
+ };
+ uart0_pins: uart0-0 {
rx-pins {
pins = "UART0_RXD";
function = "uart";
@@ -243,6 +235,16 @@ rx-pins {
input-schmitt-enable;
slew-rate = <0>;
};
+
+ tx-pins {
+ pins = "UART0_TXD";
+ function = "uart";
+ bias-disable;
+ drive-strength = <3>;
+ input-disable;
+ input-schmitt-disable;
+ slew-rate = <0>;
+ };
};
wifi_pins: wifi-0 {
@@ -271,19 +273,21 @@ reg-on-pins {
&sdio0 {
bus-width = <4>;
max-frequency = <198000000>;
+
status = "okay";
};
&sdio1 {
bus-width = <4>;
max-frequency = <198000000>;
- pinctrl-names = "default";
pinctrl-0 = <&wifi_pins>;
+ pinctrl-names = "default";
#address-cells = <1>;
#size-cells = <0>;
non-removable;
keep-power-in-suspend;
mmc-pwrseq = <&wifi_pwrseq>;
+
status = "okay";
wifi@1 {
@@ -310,7 +314,8 @@ hdmi_out_con: endpoint {
};
&uart0 {
- pinctrl-names = "default";
pinctrl-0 = <&uart0_pins>;
+ pinctrl-names = "default";
+
status = "okay";
};
--
2.43.0
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 2/4] riscv: dts: thead: th1520: Cleanup with dt-check-style
2026-10-02 13:43 [PATCH 0/4] riscv: dts: thead: Cleanup with dt-check-style Kanak Shilledar
2026-10-02 13:43 ` [PATCH 1/4] riscv: dts: thead: beaglev-ahead: " Kanak Shilledar
@ 2026-10-02 13:43 ` Kanak Shilledar
2026-10-02 13:43 ` [PATCH 3/4] riscv: dts: th1520-lichee-module-4a: " Kanak Shilledar
2026-10-02 13:43 ` [PATCH 4/4] riscv: dts: thead: th1520-lichee-pi-4a: " Kanak Shilledar
3 siblings, 0 replies; 5+ messages in thread
From: Kanak Shilledar @ 2026-10-02 13:43 UTC (permalink / raw)
To: Drew Fustini, Guo Ren, Fu Wei, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Paul Walmsley, Palmer Dabbelt, Albert Ou,
Alexandre Ghiti
Cc: linux-riscv, devicetree, linux-kernel, Kanak Shilledar
Fix warnings related to "property-order" and "required-blank-lines"
reported from krzk's recent updates to dt-check-style tool. Leave
out reordering of the nodes as it creates a very bit diff. After this
patch only the following warnings remain which can be fixed in future
work:
thead/th1520.dtsi:221: [child-name-order] child node 'oscillator' out of name order
thead/th1520.dtsi:227: [child-name-order] child node '32k-oscillator' out of name order
thead/th1520.dtsi:248: [property-name] property name "snps,wr_osr_lmt" is using discouraged style
thead/th1520.dtsi:249: [property-name] property name "snps,rd_osr_lmt" is using discouraged style
thead/th1520.dtsi:253: [child-name-order] child node 'aon' out of name order
Fix these warnings to make the file more readable and maintainable
along with that to make it more compliant with the devicetree
specifications.
Signed-off-by: Kanak Shilledar <kanak.shilledar@axis.com>
---
arch/riscv/boot/dts/thead/th1520.dtsi | 108 ++++++++++++++++++++++------------
1 file changed, 69 insertions(+), 39 deletions(-)
diff --git a/arch/riscv/boot/dts/thead/th1520.dtsi b/arch/riscv/boot/dts/thead/th1520.dtsi
index b01a94785d870..aa6572b4af559 100644
--- a/arch/riscv/boot/dts/thead/th1520.dtsi
+++ b/arch/riscv/boot/dts/thead/th1520.dtsi
@@ -20,15 +20,8 @@ cpus: cpus {
timebase-frequency = <3000000>;
c910_0: cpu@0 {
- compatible = "thead,c910", "riscv";
device_type = "cpu";
- riscv,isa = "rv64imafdc";
- riscv,isa-base = "rv64i";
- riscv,isa-extensions = "i", "m", "a", "f", "d", "c",
- "ziccrse", "zicntr", "zicsr",
- "zifencei", "zihpm", "zfh",
- "xtheadvector";
- thead,vlenb = <16>;
+ compatible = "thead,c910", "riscv";
reg = <0>;
i-cache-block-size = <64>;
i-cache-size = <65536>;
@@ -38,6 +31,13 @@ c910_0: cpu@0 {
d-cache-sets = <512>;
next-level-cache = <&l2_cache>;
mmu-type = "riscv,sv39";
+ riscv,isa = "rv64imafdc";
+ riscv,isa-base = "rv64i";
+ riscv,isa-extensions = "i", "m", "a", "f", "d", "c",
+ "ziccrse", "zicntr", "zicsr",
+ "zifencei", "zihpm", "zfh",
+ "xtheadvector";
+ thead,vlenb = <16>;
cpu0_intc: interrupt-controller {
compatible = "riscv,cpu-intc";
@@ -47,15 +47,8 @@ cpu0_intc: interrupt-controller {
};
c910_1: cpu@1 {
- compatible = "thead,c910", "riscv";
device_type = "cpu";
- riscv,isa = "rv64imafdc";
- riscv,isa-base = "rv64i";
- riscv,isa-extensions = "i", "m", "a", "f", "d", "c",
- "ziccrse", "zicntr", "zicsr",
- "zifencei", "zihpm", "zfh",
- "xtheadvector";
- thead,vlenb = <16>;
+ compatible = "thead,c910", "riscv";
reg = <1>;
i-cache-block-size = <64>;
i-cache-size = <65536>;
@@ -65,6 +58,13 @@ c910_1: cpu@1 {
d-cache-sets = <512>;
next-level-cache = <&l2_cache>;
mmu-type = "riscv,sv39";
+ riscv,isa = "rv64imafdc";
+ riscv,isa-base = "rv64i";
+ riscv,isa-extensions = "i", "m", "a", "f", "d", "c",
+ "ziccrse", "zicntr", "zicsr",
+ "zifencei", "zihpm", "zfh",
+ "xtheadvector";
+ thead,vlenb = <16>;
cpu1_intc: interrupt-controller {
compatible = "riscv,cpu-intc";
@@ -74,15 +74,8 @@ cpu1_intc: interrupt-controller {
};
c910_2: cpu@2 {
- compatible = "thead,c910", "riscv";
device_type = "cpu";
- riscv,isa = "rv64imafdc";
- riscv,isa-base = "rv64i";
- riscv,isa-extensions = "i", "m", "a", "f", "d", "c",
- "ziccrse", "zicntr", "zicsr",
- "zifencei", "zihpm", "zfh",
- "xtheadvector";
- thead,vlenb = <16>;
+ compatible = "thead,c910", "riscv";
reg = <2>;
i-cache-block-size = <64>;
i-cache-size = <65536>;
@@ -92,6 +85,13 @@ c910_2: cpu@2 {
d-cache-sets = <512>;
next-level-cache = <&l2_cache>;
mmu-type = "riscv,sv39";
+ riscv,isa = "rv64imafdc";
+ riscv,isa-base = "rv64i";
+ riscv,isa-extensions = "i", "m", "a", "f", "d", "c",
+ "ziccrse", "zicntr", "zicsr",
+ "zifencei", "zihpm", "zfh",
+ "xtheadvector";
+ thead,vlenb = <16>;
cpu2_intc: interrupt-controller {
compatible = "riscv,cpu-intc";
@@ -101,15 +101,8 @@ cpu2_intc: interrupt-controller {
};
c910_3: cpu@3 {
- compatible = "thead,c910", "riscv";
device_type = "cpu";
- riscv,isa = "rv64imafdc";
- riscv,isa-base = "rv64i";
- riscv,isa-extensions = "i", "m", "a", "f", "d", "c",
- "ziccrse", "zicntr", "zicsr",
- "zifencei", "zihpm", "zfh",
- "xtheadvector";
- thead,vlenb = <16>;
+ compatible = "thead,c910", "riscv";
reg = <3>;
i-cache-block-size = <64>;
i-cache-size = <65536>;
@@ -119,6 +112,13 @@ c910_3: cpu@3 {
d-cache-sets = <512>;
next-level-cache = <&l2_cache>;
mmu-type = "riscv,sv39";
+ riscv,isa = "rv64imafdc";
+ riscv,isa-base = "rv64i";
+ riscv,isa-extensions = "i", "m", "a", "f", "d", "c",
+ "ziccrse", "zicntr", "zicsr",
+ "zifencei", "zihpm", "zfh",
+ "xtheadvector";
+ thead,vlenb = <16>;
cpu3_intc: interrupt-controller {
compatible = "riscv,cpu-intc";
@@ -261,11 +261,11 @@ aon: aon {
soc {
compatible = "simple-bus";
+ ranges;
interrupt-parent = <&plic>;
#address-cells = <2>;
#size-cells = <2>;
dma-noncoherent;
- ranges;
plic: interrupt-controller@ffd8000000 {
compatible = "thead,th1520-plic", "thead,c900-plic";
@@ -302,6 +302,7 @@ spi0: spi@ffe700c000 {
clocks = <&clk CLK_SPI>;
#address-cells = <1>;
#size-cells = <0>;
+
status = "disabled";
};
@@ -313,6 +314,7 @@ uart0: serial@ffe7014000 {
clock-names = "baudclk", "apb_pclk";
reg-shift = <2>;
reg-io-width = <4>;
+
status = "disabled";
};
@@ -330,6 +332,7 @@ gmac1: ethernet@ffe7060000 {
snps,multicast-filter-bins = <64>;
snps,perfect-filter-entries = <32>;
snps,axi-config = <&stmmac_axi_config>;
+
status = "disabled";
mdio1: mdio {
@@ -353,6 +356,7 @@ gmac0: ethernet@ffe7070000 {
snps,multicast-filter-bins = <64>;
snps,perfect-filter-entries = <32>;
snps,axi-config = <&stmmac_axi_config>;
+
status = "disabled";
mdio0: mdio {
@@ -368,6 +372,7 @@ emmc: mmc@ffe7080000 {
interrupts = <62 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clk CLK_EMMC_SDIO>;
clock-names = "core";
+
status = "disabled";
};
@@ -377,6 +382,7 @@ sdio0: mmc@ffe7090000 {
interrupts = <64 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clk CLK_EMMC_SDIO>;
clock-names = "core";
+
status = "disabled";
};
@@ -386,6 +392,7 @@ sdio1: mmc@ffe70a0000 {
interrupts = <71 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clk CLK_EMMC_SDIO>;
clock-names = "core";
+
status = "disabled";
};
@@ -397,6 +404,7 @@ uart1: serial@ffe7f00000 {
clock-names = "baudclk", "apb_pclk";
reg-shift = <2>;
reg-io-width = <4>;
+
status = "disabled";
};
@@ -408,6 +416,7 @@ uart3: serial@ffe7f04000 {
clock-names = "baudclk", "apb_pclk";
reg-shift = <2>;
reg-io-width = <4>;
+
status = "disabled";
};
@@ -418,6 +427,7 @@ i2c0: i2c@ffe7f20000 {
clocks = <&clk CLK_I2C0>;
#address-cells = <1>;
#size-cells = <0>;
+
status = "disabled";
};
@@ -428,6 +438,7 @@ i2c1: i2c@ffe7f24000 {
clocks = <&clk CLK_I2C1>;
#address-cells = <1>;
#size-cells = <0>;
+
status = "disabled";
};
@@ -438,6 +449,7 @@ i2c4: i2c@ffe7f28000 {
clocks = <&clk CLK_I2C4>;
#address-cells = <1>;
#size-cells = <0>;
+
status = "disabled";
};
@@ -451,11 +463,11 @@ gpio@ffe7f34000 {
gpio2: gpio-controller@0 {
compatible = "snps,dw-apb-gpio-port";
+ reg = <0>;
gpio-controller;
#gpio-cells = <2>;
ngpios = <32>;
gpio-ranges = <&padctrl0_apsys 0 0 32>;
- reg = <0>;
interrupt-controller;
#interrupt-cells = <2>;
interrupts = <58 IRQ_TYPE_LEVEL_HIGH>;
@@ -472,11 +484,11 @@ gpio@ffe7f38000 {
gpio3: gpio-controller@0 {
compatible = "snps,dw-apb-gpio-port";
+ reg = <0>;
gpio-controller;
#gpio-cells = <2>;
ngpios = <23>;
gpio-ranges = <&padctrl0_apsys 0 32 23>;
- reg = <0>;
interrupt-controller;
#interrupt-cells = <2>;
interrupts = <59 IRQ_TYPE_LEVEL_HIGH>;
@@ -500,11 +512,11 @@ gpio@ffec005000 {
gpio0: gpio-controller@0 {
compatible = "snps,dw-apb-gpio-port";
+ reg = <0>;
gpio-controller;
#gpio-cells = <2>;
ngpios = <32>;
gpio-ranges = <&padctrl1_apsys 0 0 32>;
- reg = <0>;
interrupt-controller;
#interrupt-cells = <2>;
interrupts = <56 IRQ_TYPE_LEVEL_HIGH>;
@@ -521,11 +533,11 @@ gpio@ffec006000 {
gpio1: gpio-controller@0 {
compatible = "snps,dw-apb-gpio-port";
+ reg = <0>;
gpio-controller;
#gpio-cells = <2>;
ngpios = <31>;
gpio-ranges = <&padctrl1_apsys 0 32 31>;
- reg = <0>;
interrupt-controller;
#interrupt-cells = <2>;
interrupts = <57 IRQ_TYPE_LEVEL_HIGH>;
@@ -546,6 +558,7 @@ i2c2: i2c@ffec00c000 {
clocks = <&clk CLK_I2C2>;
#address-cells = <1>;
#size-cells = <0>;
+
status = "disabled";
};
@@ -557,6 +570,7 @@ uart2: serial@ffec010000 {
clock-names = "baudclk", "apb_pclk";
reg-shift = <2>;
reg-io-width = <4>;
+
status = "disabled";
};
@@ -567,6 +581,7 @@ i2c3: i2c@ffec014000 {
clocks = <&clk CLK_I2C3>;
#address-cells = <1>;
#size-cells = <0>;
+
status = "disabled";
};
@@ -648,6 +663,7 @@ hdmi: hdmi@ffef540000 {
resets = <&rst TH1520_RESET_ID_HDMI>,
<&rst TH1520_RESET_ID_HDMI_APB>;
reset-names = "main", "apb";
+
status = "disabled";
ports {
@@ -682,6 +698,7 @@ dpu: display@ffef600000 {
<&rst TH1520_RESET_ID_DPU_AXI>,
<&rst TH1520_RESET_ID_DPU_AHB>;
reset-names = "core", "axi", "ahb";
+
status = "disabled";
ports {
@@ -714,6 +731,7 @@ dmac0: dma-controller@ffefc00000 {
snps,dma-masters = <1>;
snps,data-width = <4>;
snps,axi-max-burst-len = <16>;
+
status = "disabled";
};
@@ -723,6 +741,7 @@ timer0: timer@ffefc32000 {
clocks = <&clk CLK_PERI_APB_PCLK>;
clock-names = "timer";
interrupts = <16 IRQ_TYPE_LEVEL_HIGH>;
+
status = "disabled";
};
@@ -732,6 +751,7 @@ timer1: timer@ffefc32014 {
clocks = <&clk CLK_PERI_APB_PCLK>;
clock-names = "timer";
interrupts = <17 IRQ_TYPE_LEVEL_HIGH>;
+
status = "disabled";
};
@@ -741,6 +761,7 @@ timer2: timer@ffefc32028 {
clocks = <&clk CLK_PERI_APB_PCLK>;
clock-names = "timer";
interrupts = <18 IRQ_TYPE_LEVEL_HIGH>;
+
status = "disabled";
};
@@ -750,6 +771,7 @@ timer3: timer@ffefc3203c {
clocks = <&clk CLK_PERI_APB_PCLK>;
clock-names = "timer";
interrupts = <19 IRQ_TYPE_LEVEL_HIGH>;
+
status = "disabled";
};
@@ -761,6 +783,7 @@ uart4: serial@fff7f08000 {
clock-names = "baudclk", "apb_pclk";
reg-shift = <2>;
reg-io-width = <4>;
+
status = "disabled";
};
@@ -772,6 +795,7 @@ uart5: serial@fff7f0c000 {
clock-names = "baudclk", "apb_pclk";
reg-shift = <2>;
reg-io-width = <4>;
+
status = "disabled";
};
@@ -782,6 +806,7 @@ i2c5: i2c@fff7f2c000 {
clocks = <&clk CLK_I2C5>;
#address-cells = <1>;
#size-cells = <0>;
+
status = "disabled";
};
@@ -791,6 +816,7 @@ timer4: timer@ffffc33000 {
clocks = <&clk CLK_PERI_APB_PCLK>;
clock-names = "timer";
interrupts = <20 IRQ_TYPE_LEVEL_HIGH>;
+
status = "disabled";
};
@@ -800,6 +826,7 @@ timer5: timer@ffffc33014 {
clocks = <&clk CLK_PERI_APB_PCLK>;
clock-names = "timer";
interrupts = <21 IRQ_TYPE_LEVEL_HIGH>;
+
status = "disabled";
};
@@ -809,6 +836,7 @@ timer6: timer@ffffc33028 {
clocks = <&clk CLK_PERI_APB_PCLK>;
clock-names = "timer";
interrupts = <22 IRQ_TYPE_LEVEL_HIGH>;
+
status = "disabled";
};
@@ -818,6 +846,7 @@ timer7: timer@ffffc3303c {
clocks = <&clk CLK_PERI_APB_PCLK>;
clock-names = "timer";
interrupts = <23 IRQ_TYPE_LEVEL_HIGH>;
+
status = "disabled";
};
@@ -845,11 +874,11 @@ gpio@fffff41000 {
aogpio: gpio-controller@0 {
compatible = "snps,dw-apb-gpio-port";
+ reg = <0>;
gpio-controller;
#gpio-cells = <2>;
ngpios = <16>;
gpio-ranges = <&padctrl_aosys 0 9 16>;
- reg = <0>;
interrupt-controller;
#interrupt-cells = <2>;
interrupts = <76 IRQ_TYPE_LEVEL_HIGH>;
@@ -860,6 +889,7 @@ rst_ao: reset-controller@fffff44000 {
compatible = "thead,th1520-reset-ao";
reg = <0xff 0xfff44000 0x0 0x2000>;
#reset-cells = <1>;
+
status = "reserved";
};
@@ -893,11 +923,11 @@ gpio@fffff52000 {
gpio4: gpio-controller@0 {
compatible = "snps,dw-apb-gpio-port";
+ reg = <0>;
gpio-controller;
#gpio-cells = <2>;
ngpios = <23>;
gpio-ranges = <&padctrl_aosys 0 25 22>, <&padctrl_aosys 22 7 1>;
- reg = <0>;
interrupt-controller;
#interrupt-cells = <2>;
interrupts = <55 IRQ_TYPE_LEVEL_HIGH>;
--
2.43.0
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 3/4] riscv: dts: th1520-lichee-module-4a: Cleanup with dt-check-style
2026-10-02 13:43 [PATCH 0/4] riscv: dts: thead: Cleanup with dt-check-style Kanak Shilledar
2026-10-02 13:43 ` [PATCH 1/4] riscv: dts: thead: beaglev-ahead: " Kanak Shilledar
2026-10-02 13:43 ` [PATCH 2/4] riscv: dts: thead: th1520: " Kanak Shilledar
@ 2026-10-02 13:43 ` Kanak Shilledar
2026-10-02 13:43 ` [PATCH 4/4] riscv: dts: thead: th1520-lichee-pi-4a: " Kanak Shilledar
3 siblings, 0 replies; 5+ messages in thread
From: Kanak Shilledar @ 2026-10-02 13:43 UTC (permalink / raw)
To: Drew Fustini, Guo Ren, Fu Wei, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Paul Walmsley, Palmer Dabbelt, Albert Ou,
Alexandre Ghiti
Cc: linux-riscv, devicetree, linux-kernel, Kanak Shilledar
Fix warnings thrown by krzk's recent updates to the dt-check-style
tool when run with strict mode. Fix the following warnings:
thead/th1520-lichee-module-4a.dtsi:62: [property-order] property 'pinctrl-names' must be placed after 'pinctrl-0'
thead/th1520-lichee-module-4a.dtsi:66: [required-blank-lines] "status" must be preceded by a blank line
thead/th1520-lichee-module-4a.dtsi:129: [child-name-order] child node 'rx-pins' out of name order
After this patch, there are no more warnings left. Fix these warnings
to make the file more readable and maintainable along with that to
make it more compliant with the devicetree specifications.
Signed-off-by: Kanak Shilledar <kanak.shilledar@axis.com>
---
.../boot/dts/thead/th1520-lichee-module-4a.dtsi | 56 ++++++++++++----------
1 file changed, 30 insertions(+), 26 deletions(-)
diff --git a/arch/riscv/boot/dts/thead/th1520-lichee-module-4a.dtsi b/arch/riscv/boot/dts/thead/th1520-lichee-module-4a.dtsi
index 8e76b63e0100a..e8930e994e91a 100644
--- a/arch/riscv/boot/dts/thead/th1520-lichee-module-4a.dtsi
+++ b/arch/riscv/boot/dts/thead/th1520-lichee-module-4a.dtsi
@@ -47,22 +47,25 @@ &emmc {
non-removable;
no-sdio;
no-sd;
+
status = "okay";
};
&gmac0 {
- pinctrl-names = "default";
pinctrl-0 = <&gmac0_pins>, <&mdio0_pins>;
+ pinctrl-names = "default";
phy-handle = <&phy0>;
phy-mode = "rgmii-id";
+
status = "okay";
};
&gmac1 {
- pinctrl-names = "default";
pinctrl-0 = <&gmac1_pins>;
+ pinctrl-names = "default";
phy-handle = <&phy1>;
phy-mode = "rgmii-id";
+
status = "okay";
};
@@ -111,21 +114,6 @@ phy1: ethernet-phy@2 {
&padctrl0_apsys {
gmac0_pins: gmac0-0 {
- tx-pins {
- pins = "GMAC0_TX_CLK",
- "GMAC0_TXEN",
- "GMAC0_TXD0",
- "GMAC0_TXD1",
- "GMAC0_TXD2",
- "GMAC0_TXD3";
- function = "gmac0";
- bias-disable;
- drive-strength = <25>;
- input-disable;
- input-schmitt-disable;
- slew-rate = <0>;
- };
-
rx-pins {
pins = "GMAC0_RX_CLK",
"GMAC0_RXDV",
@@ -140,24 +128,24 @@ rx-pins {
input-schmitt-disable;
slew-rate = <0>;
};
- };
- gmac1_pins: gmac1-0 {
tx-pins {
- pins = "GPIO2_18", /* GMAC1_TX_CLK */
- "GPIO2_20", /* GMAC1_TXEN */
- "GPIO2_21", /* GMAC1_TXD0 */
- "GPIO2_22", /* GMAC1_TXD1 */
- "GPIO2_23", /* GMAC1_TXD2 */
- "GPIO2_24"; /* GMAC1_TXD3 */
- function = "gmac1";
+ pins = "GMAC0_TX_CLK",
+ "GMAC0_TXEN",
+ "GMAC0_TXD0",
+ "GMAC0_TXD1",
+ "GMAC0_TXD2",
+ "GMAC0_TXD3";
+ function = "gmac0";
bias-disable;
drive-strength = <25>;
input-disable;
input-schmitt-disable;
slew-rate = <0>;
};
+ };
+ gmac1_pins: gmac1-0 {
rx-pins {
pins = "GPIO2_19", /* GMAC1_RX_CLK */
"GPIO2_25", /* GMAC1_RXDV */
@@ -172,6 +160,21 @@ rx-pins {
input-schmitt-disable;
slew-rate = <0>;
};
+
+ tx-pins {
+ pins = "GPIO2_18", /* GMAC1_TX_CLK */
+ "GPIO2_20", /* GMAC1_TXEN */
+ "GPIO2_21", /* GMAC1_TXD0 */
+ "GPIO2_22", /* GMAC1_TXD1 */
+ "GPIO2_23", /* GMAC1_TXD2 */
+ "GPIO2_24"; /* GMAC1_TXD3 */
+ function = "gmac1";
+ bias-disable;
+ drive-strength = <25>;
+ input-disable;
+ input-schmitt-disable;
+ slew-rate = <0>;
+ };
};
mdio0_pins: mdio0-0 {
@@ -200,5 +203,6 @@ mdio-pins {
&sdio0 {
bus-width = <4>;
max-frequency = <198000000>;
+
status = "okay";
};
--
2.43.0
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 4/4] riscv: dts: thead: th1520-lichee-pi-4a: Cleanup with dt-check-style
2026-10-02 13:43 [PATCH 0/4] riscv: dts: thead: Cleanup with dt-check-style Kanak Shilledar
` (2 preceding siblings ...)
2026-10-02 13:43 ` [PATCH 3/4] riscv: dts: th1520-lichee-module-4a: " Kanak Shilledar
@ 2026-10-02 13:43 ` Kanak Shilledar
3 siblings, 0 replies; 5+ messages in thread
From: Kanak Shilledar @ 2026-10-02 13:43 UTC (permalink / raw)
To: Drew Fustini, Guo Ren, Fu Wei, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Paul Walmsley, Palmer Dabbelt, Albert Ou,
Alexandre Ghiti
Cc: linux-riscv, devicetree, linux-kernel, Kanak Shilledar
Fix warnings thrown by krzk's recent updates to the dt-check-style
tool when run with strict mode. Fix the following warnings:
thead/th1520-lichee-pi-4a.dts:161: [property-order] property 'pinctrl-names' must be placed after 'pinctrl-0'
thead/th1520-lichee-pi-4a.dts:163: [required-blank-lines] "status" must be preceded by a blank line
thead/th1520-lichee-pi-4a.dts:217: [child-name-order] child node 'rx-pins' out of name order
After this patch, there are no more warnings thrown. Fix these
warnings to make the file more readable and maintainable along with
that to make it more compliant with the devicetree specifications.
Signed-off-by: Kanak Shilledar <kanak.shilledar@axis.com>
---
arch/riscv/boot/dts/thead/th1520-lichee-pi-4a.dts | 90 ++++++++++++-----------
1 file changed, 47 insertions(+), 43 deletions(-)
diff --git a/arch/riscv/boot/dts/thead/th1520-lichee-pi-4a.dts b/arch/riscv/boot/dts/thead/th1520-lichee-pi-4a.dts
index 1eb575aa9a74f..5908b21d558d4 100644
--- a/arch/riscv/boot/dts/thead/th1520-lichee-pi-4a.dts
+++ b/arch/riscv/boot/dts/thead/th1520-lichee-pi-4a.dts
@@ -41,10 +41,13 @@ hdmi_con_in: endpoint {
};
};
- wifi_pwrseq: wifi-pwrseq {
- compatible = "mmc-pwrseq-simple";
- reset-gpios = <&ioexp2 4 GPIO_ACTIVE_LOW>;
- post-power-on-delay-ms = <200>;
+ fan: pwm-fan {
+ compatible = "pwm-fan";
+ pinctrl-0 = <&fan_pins>;
+ pinctrl-names = "default";
+ #cooling-cells = <2>;
+ pwms = <&pwm 1 10000000 0>;
+ cooling-levels = <0 66 196 255>;
};
thermal-zones {
@@ -53,6 +56,23 @@ cpu-thermal {
polling-delay-passive = <1000>;
thermal-sensors = <&pvt 0>;
+ cooling-maps {
+ map-active-0 {
+ cooling-device = <&fan 1 1>;
+ trip = <&fan_config0>;
+ };
+
+ map-active-1 {
+ cooling-device = <&fan 2 2>;
+ trip = <&fan_config1>;
+ };
+
+ map-active-2 {
+ cooling-device = <&fan 3 3>;
+ trip = <&fan_config2>;
+ };
+ };
+
trips {
fan_config0: fan-trip0 {
temperature = <39000>;
@@ -72,35 +92,14 @@ fan_config2: fan-trip2 {
type = "active";
};
};
-
- cooling-maps {
- map-active-0 {
- cooling-device = <&fan 1 1>;
- trip = <&fan_config0>;
- };
-
- map-active-1 {
- cooling-device = <&fan 2 2>;
- trip = <&fan_config1>;
- };
-
- map-active-2 {
- cooling-device = <&fan 3 3>;
- trip = <&fan_config2>;
- };
- };
};
};
- fan: pwm-fan {
- pinctrl-names = "default";
- pinctrl-0 = <&fan_pins>;
- compatible = "pwm-fan";
- #cooling-cells = <2>;
- pwms = <&pwm 1 10000000 0>;
- cooling-levels = <0 66 196 255>;
+ wifi_pwrseq: wifi-pwrseq {
+ compatible = "mmc-pwrseq-simple";
+ reset-gpios = <&ioexp2 4 GPIO_ACTIVE_LOW>;
+ post-power-on-delay-ms = <200>;
};
-
};
&dpu {
@@ -119,8 +118,9 @@ hdmi_out_con: endpoint {
&i2c0 {
clock-frequency = <400000>;
- pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins>;
+ pinctrl-names = "default";
+
status = "okay";
ioexp1: gpio@18 {
@@ -136,8 +136,9 @@ ioexp1: gpio@18 {
&i2c1 {
clock-frequency = <400000>;
- pinctrl-names = "default";
pinctrl-0 = <&i2c1_pins>;
+ pinctrl-names = "default";
+
status = "okay";
ioexp2: gpio@18 {
@@ -158,8 +159,9 @@ ioexp2: gpio@18 {
&i2c3 {
clock-frequency = <400000>;
- pinctrl-names = "default";
pinctrl-0 = <&i2c3_pins>;
+ pinctrl-names = "default";
+
status = "okay";
ioexp3: gpio@18 {
@@ -204,16 +206,6 @@ i2c-pins {
};
uart0_pins: uart0-0 {
- tx-pins {
- pins = "UART0_TXD";
- function = "uart";
- bias-disable;
- drive-strength = <3>;
- input-disable;
- input-schmitt-disable;
- slew-rate = <0>;
- };
-
rx-pins {
pins = "UART0_RXD";
function = "uart";
@@ -223,6 +215,16 @@ rx-pins {
input-schmitt-enable;
slew-rate = <0>;
};
+
+ tx-pins {
+ pins = "UART0_TXD";
+ function = "uart";
+ bias-disable;
+ drive-strength = <3>;
+ input-disable;
+ input-schmitt-disable;
+ slew-rate = <0>;
+ };
};
};
@@ -261,11 +263,13 @@ &sdio1 {
keep-power-in-suspend;
mmc-pwrseq = <&wifi_pwrseq>;
non-removable;
+
status = "okay";
};
&uart0 {
- pinctrl-names = "default";
pinctrl-0 = <&uart0_pins>;
+ pinctrl-names = "default";
+
status = "okay";
};
--
2.43.0
^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2026-10-02 13:44 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-02 13:43 [PATCH 0/4] riscv: dts: thead: Cleanup with dt-check-style Kanak Shilledar
2026-10-02 13:43 ` [PATCH 1/4] riscv: dts: thead: beaglev-ahead: " Kanak Shilledar
2026-10-02 13:43 ` [PATCH 2/4] riscv: dts: thead: th1520: " Kanak Shilledar
2026-10-02 13:43 ` [PATCH 3/4] riscv: dts: th1520-lichee-module-4a: " Kanak Shilledar
2026-10-02 13:43 ` [PATCH 4/4] riscv: dts: thead: th1520-lichee-pi-4a: " Kanak Shilledar
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox