devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/5] ti: fix dtbs_check for some syscon bindings and DTS node
@ 2024-06-26 11:23 Krzysztof Kozlowski
  2024-06-26 11:23 ` [PATCH v2 1/5] dt-bindings: soc: ti: am62-system-controller: add AM62 syscon Krzysztof Kozlowski
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: Krzysztof Kozlowski @ 2024-06-26 11:23 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Kishon Vijay Abraham I, Roger Quadros, Nishanth Menon,
	Vignesh Raghavendra, Tero Kristo
  Cc: devicetree, linux-kernel, linux-arm-kernel, Conor Dooley,
	Krzysztof Kozlowski

Hi,

Changes in v2:
- Add acks/tags
- Correct Kishon Vijay Abraham email
- Drop R/W from title of bindings
- Link to v1: https://lore.kernel.org/r/20240518-dt-bindings-ti-soc-mfd-v1-0-b3952f104c9a@linaro.org

I am in the process of fixing syscon/simple-mfd bindings (to be posted
separately) and found set of issues in TI looking independent of my
series.  Please apply via TI SoC.

Best regards,
Krzysztof

---
Krzysztof Kozlowski (5):
      dt-bindings: soc: ti: am62-system-controller: add AM62 syscon
      dt-bindings: soc: ti: am645-system-controller: add AM654 syscon
      arm64: dts: ti: k3-am62: add dedicated wakeup controller compatible
      arm64: dts: ti: k3-am65-mcu: add dedicated wakeup controller compatible
      arm64: dts: ti: k3-am62a: use a specific MCU controller compatible

 .../bindings/soc/ti/ti,am62-system-controller.yaml | 77 ++++++++++++++++++++++
 .../soc/ti/ti,am654-system-controller.yaml         | 60 +++++++++++++++++
 arch/arm64/boot/dts/ti/k3-am62-wakeup.dtsi         |  2 +-
 arch/arm64/boot/dts/ti/k3-am62a-wakeup.dtsi        |  2 +-
 arch/arm64/boot/dts/ti/k3-am65-mcu.dtsi            |  2 +-
 5 files changed, 140 insertions(+), 3 deletions(-)
---
base-commit: e032bb82c315d2317a80506195d16ce4308d8cf7
change-id: 20240518-dt-bindings-ti-soc-mfd-ac211578d7a5

Best regards,
-- 
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH v2 1/5] dt-bindings: soc: ti: am62-system-controller: add AM62 syscon
  2024-06-26 11:23 [PATCH v2 0/5] ti: fix dtbs_check for some syscon bindings and DTS node Krzysztof Kozlowski
@ 2024-06-26 11:23 ` Krzysztof Kozlowski
  2024-06-26 11:23 ` [PATCH v2 2/5] dt-bindings: soc: ti: am645-system-controller: add AM654 syscon Krzysztof Kozlowski
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Krzysztof Kozlowski @ 2024-06-26 11:23 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Kishon Vijay Abraham I, Roger Quadros, Nishanth Menon,
	Vignesh Raghavendra, Tero Kristo
  Cc: devicetree, linux-kernel, linux-arm-kernel, Conor Dooley,
	Krzysztof Kozlowski

Add dedicated binding for AM62 and AM62A wakeup system controller
registers, already used in the DTS to properly describe their children.

Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 .../bindings/soc/ti/ti,am62-system-controller.yaml | 77 ++++++++++++++++++++++
 1 file changed, 77 insertions(+)

diff --git a/Documentation/devicetree/bindings/soc/ti/ti,am62-system-controller.yaml b/Documentation/devicetree/bindings/soc/ti/ti,am62-system-controller.yaml
new file mode 100644
index 000000000000..0cea0de5716a
--- /dev/null
+++ b/Documentation/devicetree/bindings/soc/ti/ti,am62-system-controller.yaml
@@ -0,0 +1,77 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/soc/ti/ti,am62-system-controller.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: TI AM62 System Controller Registers
+
+maintainers:
+  - Kishon Vijay Abraham I <kishon@kernel.org>
+  - Roger Quadros <rogerq@kernel.org>
+
+properties:
+  compatible:
+    items:
+      - enum:
+          - ti,am62-system-controller
+          - ti,am62a-system-controller
+      - const: syscon
+      - const: simple-mfd
+
+  reg:
+    maxItems: 1
+
+  "#address-cells":
+    const: 1
+
+  "#size-cells":
+    const: 1
+
+  ranges: true
+
+patternProperties:
+  "^chipid@[0-9a-f]+$":
+    type: object
+    $ref: /schemas/hwinfo/ti,k3-socinfo.yaml#
+
+  "^syscon@[0-9a-f]+$":
+    type: object
+    $ref: /schemas/mfd/syscon.yaml#
+    unevaluatedProperties: false
+    properties:
+      compatible:
+        items:
+          - const: ti,am62-usb-phy-ctrl
+          - const: syscon
+
+required:
+  - compatible
+  - reg
+  - "#address-cells"
+  - "#size-cells"
+  - ranges
+
+additionalProperties: false
+
+examples:
+  - |
+    syscon@43000000 {
+        compatible = "ti,am62-system-controller", "syscon", "simple-mfd";
+        reg = <0x43000000 0x20000>;
+        bootph-all;
+        #address-cells = <1>;
+        #size-cells = <1>;
+        ranges = <0x0 0x43000000 0x20000>;
+
+        chipid@14 {
+            compatible = "ti,am654-chipid";
+            reg = <0x14 0x4>;
+            bootph-all;
+        };
+
+        syscon@4008 {
+            compatible = "ti,am62-usb-phy-ctrl", "syscon";
+            reg = <0x4008 0x4>;
+        };
+    };

-- 
2.43.0


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH v2 2/5] dt-bindings: soc: ti: am645-system-controller: add AM654 syscon
  2024-06-26 11:23 [PATCH v2 0/5] ti: fix dtbs_check for some syscon bindings and DTS node Krzysztof Kozlowski
  2024-06-26 11:23 ` [PATCH v2 1/5] dt-bindings: soc: ti: am62-system-controller: add AM62 syscon Krzysztof Kozlowski
@ 2024-06-26 11:23 ` Krzysztof Kozlowski
  2024-06-26 11:23 ` [PATCH v2 3/5] arm64: dts: ti: k3-am62: add dedicated wakeup controller compatible Krzysztof Kozlowski
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Krzysztof Kozlowski @ 2024-06-26 11:23 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Kishon Vijay Abraham I, Roger Quadros, Nishanth Menon,
	Vignesh Raghavendra, Tero Kristo
  Cc: devicetree, linux-kernel, linux-arm-kernel, Conor Dooley,
	Krzysztof Kozlowski

Add dedicated binding for the AM654 MCU SCM system controller registers,
already used in the DTS to properly describe its children.

Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 .../soc/ti/ti,am654-system-controller.yaml         | 60 ++++++++++++++++++++++
 1 file changed, 60 insertions(+)

diff --git a/Documentation/devicetree/bindings/soc/ti/ti,am654-system-controller.yaml b/Documentation/devicetree/bindings/soc/ti/ti,am654-system-controller.yaml
new file mode 100644
index 000000000000..8965b6524f4d
--- /dev/null
+++ b/Documentation/devicetree/bindings/soc/ti/ti,am654-system-controller.yaml
@@ -0,0 +1,60 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/soc/ti/ti,am654-system-controller.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: TI AM654 System Controller Registers
+
+maintainers:
+  - Kishon Vijay Abraham I <kishon@kernel.org>
+  - Roger Quadros <rogerq@kernel.org>
+
+properties:
+  compatible:
+    items:
+      - enum:
+          - ti,am654-system-controller
+      - const: syscon
+      - const: simple-mfd
+
+  reg:
+    maxItems: 1
+
+  "#address-cells":
+    const: 1
+
+  "#size-cells":
+    const: 1
+
+  ranges: true
+
+patternProperties:
+  "^phy@[0-9a-f]+$":
+    type: object
+    $ref: /schemas/phy/ti,phy-gmii-sel.yaml#
+
+required:
+  - compatible
+  - reg
+  - "#address-cells"
+  - "#size-cells"
+  - ranges
+
+additionalProperties: false
+
+examples:
+  - |
+    syscon@40f00000 {
+        compatible = "ti,am654-system-controller", "syscon", "simple-mfd";
+        reg = <0x40f00000 0x20000>;
+        ranges = <0x0 0x40f00000 0x20000>;
+        #address-cells = <1>;
+        #size-cells = <1>;
+
+        phy@4040 {
+            compatible = "ti,am654-phy-gmii-sel";
+            reg = <0x4040 0x4>;
+            #phy-cells = <1>;
+        };
+    };

-- 
2.43.0


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH v2 3/5] arm64: dts: ti: k3-am62: add dedicated wakeup controller compatible
  2024-06-26 11:23 [PATCH v2 0/5] ti: fix dtbs_check for some syscon bindings and DTS node Krzysztof Kozlowski
  2024-06-26 11:23 ` [PATCH v2 1/5] dt-bindings: soc: ti: am62-system-controller: add AM62 syscon Krzysztof Kozlowski
  2024-06-26 11:23 ` [PATCH v2 2/5] dt-bindings: soc: ti: am645-system-controller: add AM654 syscon Krzysztof Kozlowski
@ 2024-06-26 11:23 ` Krzysztof Kozlowski
  2024-06-26 11:23 ` [PATCH v2 4/5] arm64: dts: ti: k3-am65-mcu: " Krzysztof Kozlowski
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Krzysztof Kozlowski @ 2024-06-26 11:23 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Kishon Vijay Abraham I, Roger Quadros, Nishanth Menon,
	Vignesh Raghavendra, Tero Kristo
  Cc: devicetree, linux-kernel, linux-arm-kernel, Krzysztof Kozlowski

Each syscon node must come with a dedicated/specific compatible, which
is also reported by dtbs_check:

  k3-am62-lp-sk.dtb: syscon@43000000: compatible: ['syscon', 'simple-mfd'] is too short

Add one for the TI K3 AM62 wakeup system controller.

Reviewed-by: Roger Quadros <rogerq@kernel.org>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 arch/arm64/boot/dts/ti/k3-am62-wakeup.dtsi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/ti/k3-am62-wakeup.dtsi b/arch/arm64/boot/dts/ti/k3-am62-wakeup.dtsi
index 66ddf2dc51af..3c1023108642 100644
--- a/arch/arm64/boot/dts/ti/k3-am62-wakeup.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am62-wakeup.dtsi
@@ -10,7 +10,7 @@
 &cbass_wakeup {
 	wkup_conf: syscon@43000000 {
 		bootph-all;
-		compatible = "syscon", "simple-mfd";
+		compatible = "ti,am62-system-controller", "syscon", "simple-mfd";
 		reg = <0x00 0x43000000 0x00 0x20000>;
 		#address-cells = <1>;
 		#size-cells = <1>;

-- 
2.43.0


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH v2 4/5] arm64: dts: ti: k3-am65-mcu: add dedicated wakeup controller compatible
  2024-06-26 11:23 [PATCH v2 0/5] ti: fix dtbs_check for some syscon bindings and DTS node Krzysztof Kozlowski
                   ` (2 preceding siblings ...)
  2024-06-26 11:23 ` [PATCH v2 3/5] arm64: dts: ti: k3-am62: add dedicated wakeup controller compatible Krzysztof Kozlowski
@ 2024-06-26 11:23 ` Krzysztof Kozlowski
  2024-06-26 11:23 ` [PATCH v2 5/5] arm64: dts: ti: k3-am62a: use a specific MCU " Krzysztof Kozlowski
  2024-06-30  6:59 ` [PATCH v2 0/5] ti: fix dtbs_check for some syscon bindings and DTS node Vignesh Raghavendra
  5 siblings, 0 replies; 7+ messages in thread
From: Krzysztof Kozlowski @ 2024-06-26 11:23 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Kishon Vijay Abraham I, Roger Quadros, Nishanth Menon,
	Vignesh Raghavendra, Tero Kristo
  Cc: devicetree, linux-kernel, linux-arm-kernel, Krzysztof Kozlowski

Each syscon node must come with a dedicated/specific compatible, which
is also reported by dtbs_check:

  k3-am654-base-board.dtb: scm-conf@40f00000: compatible: ['syscon', 'simple-mfd'] is too short

Add one for the TI K3 AM654 MCU wakeup system controller.

Reviewed-by: Roger Quadros <rogerq@kernel.org>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 arch/arm64/boot/dts/ti/k3-am65-mcu.dtsi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/ti/k3-am65-mcu.dtsi b/arch/arm64/boot/dts/ti/k3-am65-mcu.dtsi
index 8feab9317644..3a61ea728645 100644
--- a/arch/arm64/boot/dts/ti/k3-am65-mcu.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am65-mcu.dtsi
@@ -7,7 +7,7 @@
 
 &cbass_mcu {
 	mcu_conf: scm-conf@40f00000 {
-		compatible = "syscon", "simple-mfd";
+		compatible = "ti,am654-system-controller", "syscon", "simple-mfd";
 		reg = <0x0 0x40f00000 0x0 0x20000>;
 		#address-cells = <1>;
 		#size-cells = <1>;

-- 
2.43.0


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH v2 5/5] arm64: dts: ti: k3-am62a: use a specific MCU controller compatible
  2024-06-26 11:23 [PATCH v2 0/5] ti: fix dtbs_check for some syscon bindings and DTS node Krzysztof Kozlowski
                   ` (3 preceding siblings ...)
  2024-06-26 11:23 ` [PATCH v2 4/5] arm64: dts: ti: k3-am65-mcu: " Krzysztof Kozlowski
@ 2024-06-26 11:23 ` Krzysztof Kozlowski
  2024-06-30  6:59 ` [PATCH v2 0/5] ti: fix dtbs_check for some syscon bindings and DTS node Vignesh Raghavendra
  5 siblings, 0 replies; 7+ messages in thread
From: Krzysztof Kozlowski @ 2024-06-26 11:23 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Kishon Vijay Abraham I, Roger Quadros, Nishanth Menon,
	Vignesh Raghavendra, Tero Kristo
  Cc: devicetree, linux-kernel, linux-arm-kernel, Krzysztof Kozlowski

SoCs (and associated MCUs) should use dedicated compatibles for their
nodes, not re-use one coming from an another SoC.  Using an incorrect
compatible does not allow to properly match/validate children of the
MCU device and causes dtbs_check warnings:

  k3-am62a7-sk.dtb: syscon@43000000: 'syscon@4008', 'syscon@4018' do not match any of the regexes:
    '^chipid@[0-9a-f]+$', '^clock-controller@[0-9a-f]+$', '^mux-controller@[0-9a-f]+$', 'phy@[0-9a-f]+$', 'pinctrl-[0-9]+'

Reviewed-by: Roger Quadros <rogerq@kernel.org>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 arch/arm64/boot/dts/ti/k3-am62a-wakeup.dtsi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/ti/k3-am62a-wakeup.dtsi b/arch/arm64/boot/dts/ti/k3-am62a-wakeup.dtsi
index 98043e9aa316..d12c8c194a46 100644
--- a/arch/arm64/boot/dts/ti/k3-am62a-wakeup.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am62a-wakeup.dtsi
@@ -7,7 +7,7 @@
 
 &cbass_wakeup {
 	wkup_conf: syscon@43000000 {
-		compatible = "ti,j721e-system-controller", "syscon", "simple-mfd";
+		compatible = "ti,am62a-system-controller", "syscon", "simple-mfd";
 		reg = <0x00 0x43000000 0x00 0x20000>;
 		#address-cells = <1>;
 		#size-cells = <1>;

-- 
2.43.0


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH v2 0/5] ti: fix dtbs_check for some syscon bindings and DTS node
  2024-06-26 11:23 [PATCH v2 0/5] ti: fix dtbs_check for some syscon bindings and DTS node Krzysztof Kozlowski
                   ` (4 preceding siblings ...)
  2024-06-26 11:23 ` [PATCH v2 5/5] arm64: dts: ti: k3-am62a: use a specific MCU " Krzysztof Kozlowski
@ 2024-06-30  6:59 ` Vignesh Raghavendra
  5 siblings, 0 replies; 7+ messages in thread
From: Vignesh Raghavendra @ 2024-06-30  6:59 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Kishon Vijay Abraham I, Roger Quadros,
	Nishanth Menon, Tero Kristo, Andrew F. Davis, Bryan Brattlof
  Cc: devicetree, linux-kernel, linux-arm-kernel, Conor Dooley

+ Andrew and Bryan

Hi Krzysztof

On 26/06/24 16:53, Krzysztof Kozlowski wrote:
> Hi,
> 
> Changes in v2:
> - Add acks/tags
> - Correct Kishon Vijay Abraham email
> - Drop R/W from title of bindings
> - Link to v1: https://lore.kernel.org/r/20240518-dt-bindings-ti-soc-mfd-v1-0-b3952f104c9a@linaro.org
> 
> I am in the process of fixing syscon/simple-mfd bindings (to be posted
> separately) and found set of issues in TI looking independent of my
> series.  Please apply via TI SoC.
> 
> Best regards,
> Krzysztof
> 
> ---
> Krzysztof Kozlowski (5):
>       dt-bindings: soc: ti: am62-system-controller: add AM62 syscon
>       dt-bindings: soc: ti: am645-system-controller: add AM654 syscon
>       arm64: dts: ti: k3-am62: add dedicated wakeup controller compatible
>       arm64: dts: ti: k3-am65-mcu: add dedicated wakeup controller compatible
>       arm64: dts: ti: k3-am62a: use a specific MCU controller compatible


Thanks for the patches!

Andrew's patches [0] remove "syscon", "simple-mfd" from all the below
files except for k3-am62-wakeup.dtsi. But I think k3-am62-wakeup.dtsi
can be fixed up in the similar way and not really need a custom
system-controller binding. Last user is "ti-cpufreq" driver which is
being adapted over to use granular syscon nodes [1].

I believe add new compatible for system-controllers nodes is unneeded?

AM62 may need one more merge window to be resolved owing to dependencies
but I am queuing [0] to get rid of the warning for rest of the dts.

Bryan,

Could you repsin [1] with cleanups to am62-wakeup.dtsi as well?

[0] lore.kernel.org/r/20240628151518.40100-1-afd@ti.com
[1] lore.kernel.org/r/20240621-ti-opp-updates-v3-0-d857be6dac8b@ti.com


> 
>  .../bindings/soc/ti/ti,am62-system-controller.yaml | 77 ++++++++++++++++++++++
>  .../soc/ti/ti,am654-system-controller.yaml         | 60 +++++++++++++++++
>  arch/arm64/boot/dts/ti/k3-am62-wakeup.dtsi         |  2 +-
>  arch/arm64/boot/dts/ti/k3-am62a-wakeup.dtsi        |  2 +-
>  arch/arm64/boot/dts/ti/k3-am65-mcu.dtsi            |  2 +-
>  5 files changed, 140 insertions(+), 3 deletions(-)
> ---
> base-commit: e032bb82c315d2317a80506195d16ce4308d8cf7
> change-id: 20240518-dt-bindings-ti-soc-mfd-ac211578d7a5
> 
> Best regards,

-- 
Regards
Vignesh

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2024-06-30  7:00 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-06-26 11:23 [PATCH v2 0/5] ti: fix dtbs_check for some syscon bindings and DTS node Krzysztof Kozlowski
2024-06-26 11:23 ` [PATCH v2 1/5] dt-bindings: soc: ti: am62-system-controller: add AM62 syscon Krzysztof Kozlowski
2024-06-26 11:23 ` [PATCH v2 2/5] dt-bindings: soc: ti: am645-system-controller: add AM654 syscon Krzysztof Kozlowski
2024-06-26 11:23 ` [PATCH v2 3/5] arm64: dts: ti: k3-am62: add dedicated wakeup controller compatible Krzysztof Kozlowski
2024-06-26 11:23 ` [PATCH v2 4/5] arm64: dts: ti: k3-am65-mcu: " Krzysztof Kozlowski
2024-06-26 11:23 ` [PATCH v2 5/5] arm64: dts: ti: k3-am62a: use a specific MCU " Krzysztof Kozlowski
2024-06-30  6:59 ` [PATCH v2 0/5] ti: fix dtbs_check for some syscon bindings and DTS node Vignesh Raghavendra

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).