[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250810-fix_reset_2-v1-1-b0d1900ba578@samsung.com>
Date: Sun, 10 Aug 2025 23:14:19 +0200
From: Michal Wilczynski <m.wilczynski@...sung.com>
To: Drew Fustini <fustini@...nel.org>, Guo Ren <guoren@...nel.org>, Fu Wei
<wefu@...hat.com>, Philipp Zabel <p.zabel@...gutronix.de>, Rob Herring
<robh@...nel.org>, Krzysztof Kozlowski <krzk+dt@...nel.org>, Conor Dooley
<conor+dt@...nel.org>, Paul Walmsley <paul.walmsley@...ive.com>, Palmer
Dabbelt <palmer@...belt.com>, Albert Ou <aou@...s.berkeley.edu>, Alexandre
Ghiti <alex@...ti.fr>
Cc: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>,
linux-riscv@...ts.infradead.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, Icenowy Zheng <uwu@...nowy.me>, Michal
Wilczynski <m.wilczynski@...sung.com>
Subject: [PATCH] reset: thead: Scope TH1520 reset driver to VO subsystem
The reset controller driver for the TH1520 was using the generic
compatible string "thead,th1520-reset". However, the current
implementation only manages the resets for the Video Output (VO)
subsystem.
Using a generic compatible is incorrect as it implies control over all
reset units on the SoC. This could lead to conflicts if support for
other reset controllers on the TH1520 is added in the future like AP.
To ensure correctness and prevent future issues, this patch renames the
compatible string to "thead,th1520-reset-vo". The device tree bindings,
the th1520.dtsi file, and the driver itself are updated to use this new,
more specific compatible. The device tree node label is also renamed
from 'rst' to 'rst_vo' for clarity.
Fixes: 30e7573babdc ("dt-bindings: reset: Add T-HEAD TH1520 SoC Reset Controller")
Reported-by: Icenowy Zheng <uwu@...nowy.me>
Signed-off-by: Michal Wilczynski <m.wilczynski@...sung.com>
---
Documentation/devicetree/bindings/reset/thead,th1520-reset.yaml | 6 +++---
arch/riscv/boot/dts/thead/th1520.dtsi | 6 +++---
drivers/reset/reset-th1520.c | 2 +-
3 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/Documentation/devicetree/bindings/reset/thead,th1520-reset.yaml b/Documentation/devicetree/bindings/reset/thead,th1520-reset.yaml
index f2e91d0add7a60e12973c216bb5a989857c3c47c..f84c5ae8bc3569cb1d4e8f07999888ea26e175d0 100644
--- a/Documentation/devicetree/bindings/reset/thead,th1520-reset.yaml
+++ b/Documentation/devicetree/bindings/reset/thead,th1520-reset.yaml
@@ -16,7 +16,7 @@ maintainers:
properties:
compatible:
enum:
- - thead,th1520-reset
+ - thead,th1520-reset-vo
reg:
maxItems: 1
@@ -36,8 +36,8 @@ examples:
soc {
#address-cells = <2>;
#size-cells = <2>;
- rst: reset-controller@...f528000 {
- compatible = "thead,th1520-reset";
+ rst_vo: reset-controller@...f528000 {
+ compatible = "thead,th1520-reset-vo";
reg = <0xff 0xef528000 0x0 0x1000>;
#reset-cells = <1>;
};
diff --git a/arch/riscv/boot/dts/thead/th1520.dtsi b/arch/riscv/boot/dts/thead/th1520.dtsi
index 42724bf7e90e08fac326c464d0f080e3bd2cd59b..9cc2f1adf489ac432b2f3fbb06b655490d9e14b3 100644
--- a/arch/riscv/boot/dts/thead/th1520.dtsi
+++ b/arch/riscv/boot/dts/thead/th1520.dtsi
@@ -235,7 +235,7 @@ aon: aon {
compatible = "thead,th1520-aon";
mboxes = <&mbox_910t 1>;
mbox-names = "aon";
- resets = <&rst TH1520_RESET_ID_GPU_CLKGEN>;
+ resets = <&rst_vo TH1520_RESET_ID_GPU_CLKGEN>;
reset-names = "gpu-clkgen";
#power-domain-cells = <1>;
};
@@ -500,8 +500,8 @@ clk: clock-controller@...f010000 {
#clock-cells = <1>;
};
- rst: reset-controller@...f528000 {
- compatible = "thead,th1520-reset";
+ rst_vo: reset-controller@...f528000 {
+ compatible = "thead,th1520-reset-vo";
reg = <0xff 0xef528000 0x0 0x4f>;
#reset-cells = <1>;
};
diff --git a/drivers/reset/reset-th1520.c b/drivers/reset/reset-th1520.c
index 7874f0693e1b427a094a68f2b6d783985e789bf8..05ed11972774618df4512b7c9f9f12e71455e48b 100644
--- a/drivers/reset/reset-th1520.c
+++ b/drivers/reset/reset-th1520.c
@@ -116,7 +116,7 @@ static int th1520_reset_probe(struct platform_device *pdev)
}
static const struct of_device_id th1520_reset_match[] = {
- { .compatible = "thead,th1520-reset" },
+ { .compatible = "thead,th1520-reset-vo" },
{ /* sentinel */ }
};
MODULE_DEVICE_TABLE(of, th1520_reset_match);
---
base-commit: 561c80369df0733ba0574882a1635287b20f9de2
change-id: 20250810-fix_reset_2-a618d7426534
Best regards,
--
Michal Wilczynski <m.wilczynski@...sung.com>
Powered by blists - more mailing lists