devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 0/7] dt-bindings: mfd: syscon: Document more compatibles and require simpe-mfd description
@ 2024-06-27 10:32 Krzysztof Kozlowski
  2024-06-27 10:32 ` [PATCH v4 1/7] dt-bindings: mfd: syscon: Drop hwlocks Krzysztof Kozlowski
                   ` (7 more replies)
  0 siblings, 8 replies; 11+ messages in thread
From: Krzysztof Kozlowski @ 2024-06-27 10:32 UTC (permalink / raw)
  To: Orson Zhai, Baolin Wang, Chunyan Zhang, Jacky Huang,
	Shan-Chun Hung, Khuong Dinh, Lee Jones, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Chuanhua Lei, Rahul Tanwar,
	Lars Povlsen, Steen Hegelund, Daniel Machon, UNGLinuxDriver,
	Nishanth Menon, Matthias Brugger, AngeloGioacchino Del Regno
  Cc: Jiaxun Yang, devicetree, linux-kernel, linux-arm-kernel,
	linux-mediatek, Krzysztof Kozlowski, Conor Dooley, Rahul Tanwar,
	Amireddy Mallikarjuna reddy, Zhu, Yi Xin, Maxime Ripard

Hi,

Dependency
==========
Rebased on Lee's MFD tree, because dependency is there already:
https://lore.kernel.org/all/171828959006.2643902.8308227314531523435.b4-ty@kernel.org/

Merging
=======
Preferrably everything via MFD tree (file/context dependencies).

Changes in v4
=============
- Rebase - syscon.yaml got new compatible ti,am62-opp-efuse-table
- Link to v3: https://lore.kernel.org/r/20240626-dt-bindings-mfd-syscon-split-v3-0-3409903bb99b@linaro.org

Changes in v3
=============
- Add tags
- intel,lgm-syscon: change maintainers (email bounce)
- syscon/Split: drop unneeded |, use const instead of enum in select:
- Link to v2: https://lore.kernel.org/r/20240616-dt-bindings-mfd-syscon-split-v2-0-571b5850174a@linaro.org

Changes in v2
=============
- Add acks
- lgm-syscon: add ranges to binding and example
- syscon.yaml: add big select with all compatibles for older dtschema
- Link to v1: https://lore.kernel.org/r/20240519-dt-bindings-mfd-syscon-split-v1-0-aaf996e2313a@linaro.org

Description/problem
===================
Simple syscon nodes can be documented in common syscon.yaml, however
devices with simple-mfd compatible, thus some children, should have
their own schema listing these children.  Such listing makes the binding
specific, allows better validation (so the incorrect child would not
appear in the simple-mfd node) and actually enforces repeated rule for
simple-mfd devices:

  "simple-mfd" is only for simple devices, where the children do not
  depend on the parent.

Currently the syscon+simple-mfd binding is quite broad and allows
any child or property, thus above rule cannot be enforced.

Solution
========
1. Split the syscon.yaml binding into common syscon properties, used
   potentially by many bindings, and only simple syscon devices (NO
   simple-mfd!).
2. Move some known simple-mfd bindings from syscon.yaml to dedicated
   files.

This patchset might introduce new dtbs_check warnings for devices having
simple-mfd and being part of syscon.yaml previously. I fixed some of
them, but probably not all.

Best regards,
Krzysztof

To: Lee Jones <lee@kernel.org>
To: Rob Herring <robh@kernel.org>
To: Krzysztof Kozlowski <krzk+dt@kernel.org>
To: Conor Dooley <conor+dt@kernel.org>
To: Lars Povlsen <lars.povlsen@microchip.com>
To: Steen Hegelund <Steen.Hegelund@microchip.com>
To: Daniel Machon <daniel.machon@microchip.com>
To: UNGLinuxDriver@microchip.com
To: Nishanth Menon <nm@ti.com>
To: Matthias Brugger <matthias.bgg@gmail.com>
To: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Cc: devicetree@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-mediatek@lists.infradead.org

---
Krzysztof Kozlowski (7):
      dt-bindings: mfd: syscon: Drop hwlocks
      dt-bindings: soc: sprd: sc9863a-glbregs: Document SC9863A syscon
      dt-bindings: soc: intel: lgm-syscon: Move to dedicated schema
      dt-bindings: soc: microchip: sparx5-cpu-syscon: Move to dedicated schema
      dt-bindings: soc: ti: am654-serdes-ctrl: Move to dedicated schema
      dt-bindings: mfd: syscon: Split and enforce documenting MFD children
      dt-bindings: mfd: syscon: Add APM poweroff mailbox

 .../devicetree/bindings/mfd/syscon-common.yaml     |  71 +++++
 Documentation/devicetree/bindings/mfd/syscon.yaml  | 309 ++++++++++++---------
 .../bindings/soc/intel/intel,lgm-syscon.yaml       |  57 ++++
 .../soc/microchip/microchip,sparx5-cpu-syscon.yaml |  49 ++++
 .../bindings/soc/sprd/sprd,sc9863a-glbregs.yaml    |  55 ++++
 .../bindings/soc/ti/ti,am654-serdes-ctrl.yaml      |  42 +++
 6 files changed, 459 insertions(+), 124 deletions(-)
---
base-commit: c41503b65ef7b85189c39f6a6038feb7c93eac2f
change-id: 20240517-dt-bindings-mfd-syscon-split-37e23996523d

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


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

* [PATCH v4 1/7] dt-bindings: mfd: syscon: Drop hwlocks
  2024-06-27 10:32 [PATCH v4 0/7] dt-bindings: mfd: syscon: Document more compatibles and require simpe-mfd description Krzysztof Kozlowski
@ 2024-06-27 10:32 ` Krzysztof Kozlowski
  2024-06-27 10:39   ` AngeloGioacchino Del Regno
  2024-06-27 10:32 ` [PATCH v4 2/7] dt-bindings: soc: sprd: sc9863a-glbregs: Document SC9863A syscon Krzysztof Kozlowski
                   ` (6 subsequent siblings)
  7 siblings, 1 reply; 11+ messages in thread
From: Krzysztof Kozlowski @ 2024-06-27 10:32 UTC (permalink / raw)
  To: Orson Zhai, Baolin Wang, Chunyan Zhang, Jacky Huang,
	Shan-Chun Hung, Khuong Dinh, Lee Jones, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Chuanhua Lei, Rahul Tanwar,
	Lars Povlsen, Steen Hegelund, Daniel Machon, UNGLinuxDriver,
	Nishanth Menon, Matthias Brugger, AngeloGioacchino Del Regno
  Cc: Jiaxun Yang, devicetree, linux-kernel, linux-arm-kernel,
	linux-mediatek, Krzysztof Kozlowski

Apparently there is no in-tree DTS syscon node having hwlocks, so drop
the property to simplify the binding.

Acked-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 Documentation/devicetree/bindings/mfd/syscon.yaml | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/Documentation/devicetree/bindings/mfd/syscon.yaml b/Documentation/devicetree/bindings/mfd/syscon.yaml
index 993460c3cfe1..cc1e9fec5cc7 100644
--- a/Documentation/devicetree/bindings/mfd/syscon.yaml
+++ b/Documentation/devicetree/bindings/mfd/syscon.yaml
@@ -143,11 +143,6 @@ properties:
   resets:
     maxItems: 1
 
-  hwlocks:
-    maxItems: 1
-    description:
-      Reference to a phandle of a hardware spinlock provider node.
-
 required:
   - compatible
   - reg

-- 
2.43.0


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

* [PATCH v4 2/7] dt-bindings: soc: sprd: sc9863a-glbregs: Document SC9863A syscon
  2024-06-27 10:32 [PATCH v4 0/7] dt-bindings: mfd: syscon: Document more compatibles and require simpe-mfd description Krzysztof Kozlowski
  2024-06-27 10:32 ` [PATCH v4 1/7] dt-bindings: mfd: syscon: Drop hwlocks Krzysztof Kozlowski
@ 2024-06-27 10:32 ` Krzysztof Kozlowski
  2024-06-27 10:32 ` [PATCH v4 3/7] dt-bindings: soc: intel: lgm-syscon: Move to dedicated schema Krzysztof Kozlowski
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 11+ messages in thread
From: Krzysztof Kozlowski @ 2024-06-27 10:32 UTC (permalink / raw)
  To: Orson Zhai, Baolin Wang, Chunyan Zhang, Jacky Huang,
	Shan-Chun Hung, Khuong Dinh, Lee Jones, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Chuanhua Lei, Rahul Tanwar,
	Lars Povlsen, Steen Hegelund, Daniel Machon, UNGLinuxDriver,
	Nishanth Menon, Matthias Brugger, AngeloGioacchino Del Regno
  Cc: Jiaxun Yang, devicetree, linux-kernel, linux-arm-kernel,
	linux-mediatek, Krzysztof Kozlowski

Document sprd,sc9863a-glbregs compatible already used in DTS and other
bindings example.

Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Reviewed-by: Baolin Wang <baolin.wang@linux.alibaba.com>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 .../bindings/soc/sprd/sprd,sc9863a-glbregs.yaml    | 55 ++++++++++++++++++++++
 1 file changed, 55 insertions(+)

diff --git a/Documentation/devicetree/bindings/soc/sprd/sprd,sc9863a-glbregs.yaml b/Documentation/devicetree/bindings/soc/sprd/sprd,sc9863a-glbregs.yaml
new file mode 100644
index 000000000000..49add564e5e1
--- /dev/null
+++ b/Documentation/devicetree/bindings/soc/sprd/sprd,sc9863a-glbregs.yaml
@@ -0,0 +1,55 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/soc/sprd/sprd,sc9863a-glbregs.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: SC9863A Syscon
+
+maintainers:
+  - Orson Zhai <orsonzhai@gmail.com>
+  - Baolin Wang <baolin.wang7@gmail.com>
+  - Chunyan Zhang <zhang.lyra@gmail.com>
+
+properties:
+  compatible:
+    items:
+      - const: sprd,sc9863a-glbregs
+      - const: syscon
+      - const: simple-mfd
+
+  reg:
+    maxItems: 1
+
+  ranges: true
+
+  "#address-cells":
+    const: 1
+
+  "#size-cells":
+    const: 1
+
+patternProperties:
+  "@[0-9a-f]+$":
+    $ref: /schemas/clock/sprd,sc9863a-clk.yaml
+    description: Clock controllers
+
+additionalProperties: false
+
+examples:
+  - |
+    syscon@20e00000 {
+      compatible = "sprd,sc9863a-glbregs", "syscon", "simple-mfd";
+      reg = <0x20e00000 0x4000>;
+      ranges = <0 0x20e00000 0x4000>;
+      #address-cells = <1>;
+      #size-cells = <1>;
+
+      apahb_gate: apahb-gate@0 {
+        compatible = "sprd,sc9863a-apahb-gate";
+        reg = <0x0 0x1020>;
+        #clock-cells = <1>;
+      };
+    };
+
+...

-- 
2.43.0


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

* [PATCH v4 3/7] dt-bindings: soc: intel: lgm-syscon: Move to dedicated schema
  2024-06-27 10:32 [PATCH v4 0/7] dt-bindings: mfd: syscon: Document more compatibles and require simpe-mfd description Krzysztof Kozlowski
  2024-06-27 10:32 ` [PATCH v4 1/7] dt-bindings: mfd: syscon: Drop hwlocks Krzysztof Kozlowski
  2024-06-27 10:32 ` [PATCH v4 2/7] dt-bindings: soc: sprd: sc9863a-glbregs: Document SC9863A syscon Krzysztof Kozlowski
@ 2024-06-27 10:32 ` Krzysztof Kozlowski
  2024-06-27 10:32 ` [PATCH v4 4/7] dt-bindings: soc: microchip: sparx5-cpu-syscon: " Krzysztof Kozlowski
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 11+ messages in thread
From: Krzysztof Kozlowski @ 2024-06-27 10:32 UTC (permalink / raw)
  To: Orson Zhai, Baolin Wang, Chunyan Zhang, Jacky Huang,
	Shan-Chun Hung, Khuong Dinh, Lee Jones, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Chuanhua Lei, Rahul Tanwar,
	Lars Povlsen, Steen Hegelund, Daniel Machon, UNGLinuxDriver,
	Nishanth Menon, Matthias Brugger, AngeloGioacchino Del Regno
  Cc: Jiaxun Yang, devicetree, linux-kernel, linux-arm-kernel,
	linux-mediatek, Conor Dooley, Krzysztof Kozlowski, Rahul Tanwar,
	Amireddy Mallikarjuna reddy, Zhu, Yi Xin

intel,lgm-syscon is not a simple syscon device - it has children - thus
it should be fully documented in its own binding.

Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---

Context might depend on patch in Lee's MFD tree:
https://lore.kernel.org/all/171828959006.2643902.8308227314531523435.b4-ty@kernel.org/
and also further patches here depend on this one.

We need to cleanup intel's emails. Does this bounce?
Cc: Rahul Tanwar <rahul.tanwar@linux.intel.com>
Cc: Amireddy Mallikarjuna reddy <mallikarjunax.reddy@intel.com>
Cc: "Zhu, Yi Xin" <Yixin.zhu@intel.com>
---
 Documentation/devicetree/bindings/mfd/syscon.yaml  |  1 -
 .../bindings/soc/intel/intel,lgm-syscon.yaml       | 57 ++++++++++++++++++++++
 2 files changed, 57 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/mfd/syscon.yaml b/Documentation/devicetree/bindings/mfd/syscon.yaml
index cc1e9fec5cc7..0e19eb0772f1 100644
--- a/Documentation/devicetree/bindings/mfd/syscon.yaml
+++ b/Documentation/devicetree/bindings/mfd/syscon.yaml
@@ -77,7 +77,6 @@ properties:
               - hisilicon,pcie-sas-subctrl
               - hisilicon,peri-subctrl
               - hpe,gxp-sysreg
-              - intel,lgm-syscon
               - loongson,ls1b-syscon
               - loongson,ls1c-syscon
               - lsi,axxia-syscon
diff --git a/Documentation/devicetree/bindings/soc/intel/intel,lgm-syscon.yaml b/Documentation/devicetree/bindings/soc/intel/intel,lgm-syscon.yaml
new file mode 100644
index 000000000000..6951d55356d5
--- /dev/null
+++ b/Documentation/devicetree/bindings/soc/intel/intel,lgm-syscon.yaml
@@ -0,0 +1,57 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/soc/intel/intel,lgm-syscon.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Intel Lightning Mountain(LGM) Syscon
+
+maintainers:
+  - Chuanhua Lei <lchuanhua@maxlinear.com>
+  - Rahul Tanwar <rtanwar@maxlinear.com>
+
+properties:
+  compatible:
+    items:
+      - const: intel,lgm-syscon
+      - const: syscon
+
+  reg:
+    maxItems: 1
+
+  ranges: true
+
+  "#address-cells":
+    const: 1
+
+  "#size-cells":
+    const: 1
+
+patternProperties:
+  "^emmc-phy@[0-9a-f]+$":
+    $ref: /schemas/phy/intel,lgm-emmc-phy.yaml#
+
+required:
+  - compatible
+  - reg
+  - "#address-cells"
+  - "#size-cells"
+
+additionalProperties: false
+
+examples:
+  - |
+    chiptop@e0200000 {
+        compatible = "intel,lgm-syscon", "syscon";
+        reg = <0xe0200000 0x100>;
+        ranges = <0x0 0xe0200000 0x100>;
+        #address-cells = <1>;
+        #size-cells = <1>;
+
+        emmc-phy@a8 {
+            compatible = "intel,lgm-emmc-phy";
+            reg = <0x00a8 0x10>;
+            clocks = <&emmc>;
+            #phy-cells = <0>;
+        };
+    };

-- 
2.43.0


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

* [PATCH v4 4/7] dt-bindings: soc: microchip: sparx5-cpu-syscon: Move to dedicated schema
  2024-06-27 10:32 [PATCH v4 0/7] dt-bindings: mfd: syscon: Document more compatibles and require simpe-mfd description Krzysztof Kozlowski
                   ` (2 preceding siblings ...)
  2024-06-27 10:32 ` [PATCH v4 3/7] dt-bindings: soc: intel: lgm-syscon: Move to dedicated schema Krzysztof Kozlowski
@ 2024-06-27 10:32 ` Krzysztof Kozlowski
  2024-06-27 10:32 ` [PATCH v4 5/7] dt-bindings: soc: ti: am654-serdes-ctrl: " Krzysztof Kozlowski
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 11+ messages in thread
From: Krzysztof Kozlowski @ 2024-06-27 10:32 UTC (permalink / raw)
  To: Orson Zhai, Baolin Wang, Chunyan Zhang, Jacky Huang,
	Shan-Chun Hung, Khuong Dinh, Lee Jones, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Chuanhua Lei, Rahul Tanwar,
	Lars Povlsen, Steen Hegelund, Daniel Machon, UNGLinuxDriver,
	Nishanth Menon, Matthias Brugger, AngeloGioacchino Del Regno
  Cc: Jiaxun Yang, devicetree, linux-kernel, linux-arm-kernel,
	linux-mediatek, Krzysztof Kozlowski

microchip,sparx5-cpu-syscon is not a simple syscon device - it has
children and implements simple-mfd compatible - thus it should be fully
documented in its own binding.

Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---

Context might depend on patch in Lee's MFD tree:
https://lore.kernel.org/all/171828959006.2643902.8308227314531523435.b4-ty@kernel.org/
and also further patches here depend on this one.
---
 Documentation/devicetree/bindings/mfd/syscon.yaml  |  1 -
 .../soc/microchip/microchip,sparx5-cpu-syscon.yaml | 49 ++++++++++++++++++++++
 2 files changed, 49 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/mfd/syscon.yaml b/Documentation/devicetree/bindings/mfd/syscon.yaml
index 0e19eb0772f1..49bf85e8f220 100644
--- a/Documentation/devicetree/bindings/mfd/syscon.yaml
+++ b/Documentation/devicetree/bindings/mfd/syscon.yaml
@@ -95,7 +95,6 @@ properties:
               - microchip,lan966x-cpu-syscon
               - microchip,sam9x60-sfr
               - microchip,sama7g5-ddr3phy
-              - microchip,sparx5-cpu-syscon
               - mscc,ocelot-cpu-syscon
               - mstar,msc313-pmsleep
               - nuvoton,ma35d1-sys
diff --git a/Documentation/devicetree/bindings/soc/microchip/microchip,sparx5-cpu-syscon.yaml b/Documentation/devicetree/bindings/soc/microchip/microchip,sparx5-cpu-syscon.yaml
new file mode 100644
index 000000000000..1f0b542d2296
--- /dev/null
+++ b/Documentation/devicetree/bindings/soc/microchip/microchip,sparx5-cpu-syscon.yaml
@@ -0,0 +1,49 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/soc/microchip/microchip,sparx5-cpu-syscon.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Microchip Sparx5 CPU Syscon
+
+maintainers:
+  - Lars Povlsen <lars.povlsen@microchip.com>
+
+properties:
+  compatible:
+    items:
+      - const: microchip,sparx5-cpu-syscon
+      - const: syscon
+      - const: simple-mfd
+
+  reg:
+    maxItems: 1
+
+  mux-controller:
+    $ref: /schemas/mux/reg-mux.yaml#
+
+required:
+  - compatible
+  - reg
+  - mux-controller
+
+additionalProperties: false
+
+examples:
+  - |
+    soc {
+        #address-cells = <2>;
+        #size-cells = <1>;
+
+        syscon@600000000 {
+            compatible = "microchip,sparx5-cpu-syscon", "syscon",
+                         "simple-mfd";
+            reg = <0x6 0x00000000 0xd0>;
+
+            mux: mux-controller {
+                compatible = "mmio-mux";
+                #mux-control-cells = <1>;
+                mux-reg-masks = <0x88 0xf0>;
+            };
+        };
+    };

-- 
2.43.0


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

* [PATCH v4 5/7] dt-bindings: soc: ti: am654-serdes-ctrl: Move to dedicated schema
  2024-06-27 10:32 [PATCH v4 0/7] dt-bindings: mfd: syscon: Document more compatibles and require simpe-mfd description Krzysztof Kozlowski
                   ` (3 preceding siblings ...)
  2024-06-27 10:32 ` [PATCH v4 4/7] dt-bindings: soc: microchip: sparx5-cpu-syscon: " Krzysztof Kozlowski
@ 2024-06-27 10:32 ` Krzysztof Kozlowski
  2024-06-27 10:32 ` [PATCH v4 6/7] dt-bindings: mfd: syscon: Split and enforce documenting MFD children Krzysztof Kozlowski
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 11+ messages in thread
From: Krzysztof Kozlowski @ 2024-06-27 10:32 UTC (permalink / raw)
  To: Orson Zhai, Baolin Wang, Chunyan Zhang, Jacky Huang,
	Shan-Chun Hung, Khuong Dinh, Lee Jones, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Chuanhua Lei, Rahul Tanwar,
	Lars Povlsen, Steen Hegelund, Daniel Machon, UNGLinuxDriver,
	Nishanth Menon, Matthias Brugger, AngeloGioacchino Del Regno
  Cc: Jiaxun Yang, devicetree, linux-kernel, linux-arm-kernel,
	linux-mediatek, Krzysztof Kozlowski

ti,am654-serdes-ctrl is not a simple syscon device - it has children -
thus it should be fully documented in its own binding.

Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---

Context might depend on patch in Lee's MFD tree:
https://lore.kernel.org/all/171828959006.2643902.8308227314531523435.b4-ty@kernel.org/
and also further patches here depend on this one.
---
 Documentation/devicetree/bindings/mfd/syscon.yaml  |  1 -
 .../bindings/soc/ti/ti,am654-serdes-ctrl.yaml      | 42 ++++++++++++++++++++++
 2 files changed, 42 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/mfd/syscon.yaml b/Documentation/devicetree/bindings/mfd/syscon.yaml
index 49bf85e8f220..0f6fd1a41dd8 100644
--- a/Documentation/devicetree/bindings/mfd/syscon.yaml
+++ b/Documentation/devicetree/bindings/mfd/syscon.yaml
@@ -118,7 +118,6 @@ properties:
               - ti,am625-dss-oldi-io-ctrl
               - ti,am62p-cpsw-mac-efuse
               - ti,am654-dss-oldi-io-ctrl
-              - ti,am654-serdes-ctrl
               - ti,j784s4-pcie-ctrl
               - ti,keystone-pllctrl
 
diff --git a/Documentation/devicetree/bindings/soc/ti/ti,am654-serdes-ctrl.yaml b/Documentation/devicetree/bindings/soc/ti/ti,am654-serdes-ctrl.yaml
new file mode 100644
index 000000000000..a10a3b89ae05
--- /dev/null
+++ b/Documentation/devicetree/bindings/soc/ti/ti,am654-serdes-ctrl.yaml
@@ -0,0 +1,42 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/soc/ti/ti,am654-serdes-ctrl.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Texas Instruments AM654 Serdes Control Syscon
+
+maintainers:
+  - Nishanth Menon <nm@ti.com>
+
+properties:
+  compatible:
+    items:
+      - const: ti,am654-serdes-ctrl
+      - const: syscon
+
+  reg:
+    maxItems: 1
+
+  mux-controller:
+    $ref: /schemas/mux/reg-mux.yaml#
+
+required:
+  - compatible
+  - reg
+  - mux-controller
+
+additionalProperties: false
+
+examples:
+  - |
+    clock@4080 {
+        compatible = "ti,am654-serdes-ctrl", "syscon";
+        reg = <0x4080 0x4>;
+
+        mux-controller {
+            compatible = "mmio-mux";
+            #mux-control-cells = <1>;
+            mux-reg-masks = <0x0 0x3>; /* lane select */
+        };
+    };

-- 
2.43.0


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

* [PATCH v4 6/7] dt-bindings: mfd: syscon: Split and enforce documenting MFD children
  2024-06-27 10:32 [PATCH v4 0/7] dt-bindings: mfd: syscon: Document more compatibles and require simpe-mfd description Krzysztof Kozlowski
                   ` (4 preceding siblings ...)
  2024-06-27 10:32 ` [PATCH v4 5/7] dt-bindings: soc: ti: am654-serdes-ctrl: " Krzysztof Kozlowski
@ 2024-06-27 10:32 ` Krzysztof Kozlowski
  2024-06-27 10:39   ` AngeloGioacchino Del Regno
  2024-06-27 10:32 ` [PATCH v4 7/7] dt-bindings: mfd: syscon: Add APM poweroff mailbox Krzysztof Kozlowski
  2024-06-28 14:30 ` [PATCH v4 0/7] dt-bindings: mfd: syscon: Document more compatibles and require simpe-mfd description Lee Jones
  7 siblings, 1 reply; 11+ messages in thread
From: Krzysztof Kozlowski @ 2024-06-27 10:32 UTC (permalink / raw)
  To: Orson Zhai, Baolin Wang, Chunyan Zhang, Jacky Huang,
	Shan-Chun Hung, Khuong Dinh, Lee Jones, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Chuanhua Lei, Rahul Tanwar,
	Lars Povlsen, Steen Hegelund, Daniel Machon, UNGLinuxDriver,
	Nishanth Menon, Matthias Brugger, AngeloGioacchino Del Regno
  Cc: Jiaxun Yang, devicetree, linux-kernel, linux-arm-kernel,
	linux-mediatek, Conor Dooley, Krzysztof Kozlowski, Maxime Ripard

Simple syscon nodes can be documented in common syscon.yaml, however
devices with simple-mfd compatible, thus with some children, should have
their own schema listing these children.  Such listing makes the binding
specific, allows better validation (so the incorrect child would not
appear in the simple-mfd node) and actually enforces repeated rule for
simple-mfd devices:

  "simple-mfd" is only for simple devices, where the children do not
  depend on the parent.

Currently the syscon+simple-mfd binding is quite broad and allows
any child or property, thus above rule cannot be enforced.

Split the syscon.yaml binding into:
1. Common syscon properties, used potentially by many bindings.
2. Simple syscon devices (NO simple-mfd!).

Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---

Cc: Maxime Ripard <maxime@cerno.tech>

Depends on:
1. Patch in MFD: https://lore.kernel.org/all/171828959006.2643902.8308227314531523435.b4-ty@kernel.org/
2. Previous patches in the series.
---
 .../devicetree/bindings/mfd/syscon-common.yaml     |  71 +++++
 Documentation/devicetree/bindings/mfd/syscon.yaml  | 297 +++++++++++++--------
 2 files changed, 252 insertions(+), 116 deletions(-)

diff --git a/Documentation/devicetree/bindings/mfd/syscon-common.yaml b/Documentation/devicetree/bindings/mfd/syscon-common.yaml
new file mode 100644
index 000000000000..451cbad467a3
--- /dev/null
+++ b/Documentation/devicetree/bindings/mfd/syscon-common.yaml
@@ -0,0 +1,71 @@
+# SPDX-License-Identifier: GPL-2.0
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/mfd/syscon-common.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: System Controller Registers R/W Common Properties
+
+description:
+  System controller node represents a register region containing a set
+  of miscellaneous registers. The registers are not cohesive enough to
+  represent as any specific type of device. The typical use-case is
+  for some other node's driver, or platform-specific code, to acquire
+  a reference to the syscon node (e.g. by phandle, node path, or
+  search using a specific compatible value), interrogate the node (or
+  associated OS driver) to determine the location of the registers,
+  and access the registers directly.
+
+maintainers:
+  - Lee Jones <lee@kernel.org>
+
+select:
+  properties:
+    compatible:
+      contains:
+        const: syscon
+
+  required:
+    - compatible
+
+properties:
+  compatible:
+    contains:
+      const: syscon
+    minItems: 2
+    maxItems: 5  # Should be enough
+
+  reg:
+    maxItems: 1
+
+  reg-io-width:
+    description:
+      The size (in bytes) of the IO accesses that should be performed
+      on the device.
+    enum: [1, 2, 4, 8]
+
+required:
+  - compatible
+  - reg
+
+allOf:
+  - if:
+      properties:
+        compatible:
+          contains:
+            const: simple-mfd
+    then:
+      properties:
+        compatible:
+          minItems: 3
+          maxItems: 5
+
+additionalProperties: true
+
+examples:
+  - |
+    syscon: syscon@1c00000 {
+        compatible = "allwinner,sun8i-h3-system-controller", "syscon";
+        reg = <0x01c00000 0x1000>;
+    };
+...
diff --git a/Documentation/devicetree/bindings/mfd/syscon.yaml b/Documentation/devicetree/bindings/mfd/syscon.yaml
index 0f6fd1a41dd8..aa1c2608d326 100644
--- a/Documentation/devicetree/bindings/mfd/syscon.yaml
+++ b/Documentation/devicetree/bindings/mfd/syscon.yaml
@@ -4,7 +4,7 @@
 $id: http://devicetree.org/schemas/mfd/syscon.yaml#
 $schema: http://devicetree.org/meta-schemas/core.yaml#
 
-title: System Controller Registers R/W
+title: System Controller Devices
 
 description: |
   System controller node represents a register region containing a set
@@ -19,124 +19,198 @@ description: |
 maintainers:
   - Lee Jones <lee@kernel.org>
 
+# Need a select with all compatibles listed for compatibility with older
+# dtschema (<2024.02), so this will not be selected for other schemas having
+# syscon fallback.
 select:
   properties:
     compatible:
       contains:
         enum:
-          - syscon
-
+          - al,alpine-sysfabric-servic
+          - allwinner,sun8i-a83t-system-controller
+          - allwinner,sun8i-h3-system-controller
+          - allwinner,sun8i-v3s-system-controller
+          - allwinner,sun50i-a64-system-controller
+          - altr,l3regs
+          - altr,sdr-ctl
+          - amd,pensando-elba-syscon
+          - amlogic,meson-mx-assist
+          - amlogic,meson-mx-bootrom
+          - amlogic,meson8-analog-top
+          - amlogic,meson8b-analog-top
+          - amlogic,meson8-pmu
+          - amlogic,meson8b-pmu
+          - apm,xgene-csw
+          - apm,xgene-efuse
+          - apm,xgene-mcb
+          - apm,xgene-rb
+          - apm,xgene-scu
+          - atmel,sama5d2-sfrbu
+          - atmel,sama5d3-nfc-io
+          - atmel,sama5d3-sfrbu
+          - atmel,sama5d4-sfrbu
+          - axis,artpec6-syscon
+          - brcm,cru-clkset
+          - brcm,sr-cdru
+          - brcm,sr-mhb
+          - cirrus,ep7209-syscon1
+          - cirrus,ep7209-syscon2
+          - cirrus,ep7209-syscon3
+          - cnxt,cx92755-uc
+          - freecom,fsg-cs2-system-controller
+          - fsl,imx93-aonmix-ns-syscfg
+          - fsl,imx93-wakeupmix-syscfg
+          - fsl,ls1088a-reset
+          - fsl,vf610-anatop
+          - fsl,vf610-mscm-cpucfg
+          - hisilicon,dsa-subctrl
+          - hisilicon,hi6220-sramctrl
+          - hisilicon,hip04-ppe
+          - hisilicon,pcie-sas-subctrl
+          - hisilicon,peri-subctrl
+          - hpe,gxp-sysreg
+          - loongson,ls1b-syscon
+          - loongson,ls1c-syscon
+          - lsi,axxia-syscon
+          - marvell,armada-3700-cpu-misc
+          - marvell,armada-3700-nb-pm
+          - marvell,armada-3700-avs
+          - marvell,armada-3700-usb2-host-misc
+          - marvell,dove-global-config
+          - mediatek,mt2701-pctl-a-syscfg
+          - mediatek,mt2712-pctl-a-syscfg
+          - mediatek,mt6397-pctl-pmic-syscfg
+          - mediatek,mt8135-pctl-a-syscfg
+          - mediatek,mt8135-pctl-b-syscfg
+          - mediatek,mt8173-pctl-a-syscfg
+          - mediatek,mt8365-syscfg
+          - microchip,lan966x-cpu-syscon
+          - microchip,sam9x60-sfr
+          - microchip,sama7g5-ddr3phy
+          - mscc,ocelot-cpu-syscon
+          - mstar,msc313-pmsleep
+          - nuvoton,ma35d1-sys
+          - nuvoton,wpcm450-shm
+          - rockchip,px30-qos
+          - rockchip,rk3036-qos
+          - rockchip,rk3066-qos
+          - rockchip,rk3128-qos
+          - rockchip,rk3228-qos
+          - rockchip,rk3288-qos
+          - rockchip,rk3368-qos
+          - rockchip,rk3399-qos
+          - rockchip,rk3568-qos
+          - rockchip,rk3588-qos
+          - rockchip,rv1126-qos
+          - st,spear1340-misc
+          - stericsson,nomadik-pmu
+          - starfive,jh7100-sysmain
+          - ti,am62-opp-efuse-table
+          - ti,am62-usb-phy-ctrl
+          - ti,am625-dss-oldi-io-ctrl
+          - ti,am62p-cpsw-mac-efuse
+          - ti,am654-dss-oldi-io-ctrl
+          - ti,j784s4-pcie-ctrl
+          - ti,keystone-pllctrl
   required:
     - compatible
 
 properties:
   compatible:
-    anyOf:
-      - items:
-          - enum:
-              - al,alpine-sysfabric-service
-              - allwinner,sun8i-a83t-system-controller
-              - allwinner,sun8i-h3-system-controller
-              - allwinner,sun8i-v3s-system-controller
-              - allwinner,sun50i-a64-system-controller
-              - altr,l3regs
-              - altr,sdr-ctl
-              - amd,pensando-elba-syscon
-              - amlogic,meson-mx-assist
-              - amlogic,meson-mx-bootrom
-              - amlogic,meson8-analog-top
-              - amlogic,meson8b-analog-top
-              - amlogic,meson8-pmu
-              - amlogic,meson8b-pmu
-              - apm,xgene-csw
-              - apm,xgene-efuse
-              - apm,xgene-mcb
-              - apm,xgene-rb
-              - apm,xgene-scu
-              - atmel,sama5d2-sfrbu
-              - atmel,sama5d3-nfc-io
-              - atmel,sama5d3-sfrbu
-              - atmel,sama5d4-sfrbu
-              - axis,artpec6-syscon
-              - brcm,cru-clkset
-              - brcm,sr-cdru
-              - brcm,sr-mhb
-              - cirrus,ep7209-syscon1
-              - cirrus,ep7209-syscon2
-              - cirrus,ep7209-syscon3
-              - cnxt,cx92755-uc
-              - freecom,fsg-cs2-system-controller
-              - fsl,imx93-aonmix-ns-syscfg
-              - fsl,imx93-wakeupmix-syscfg
-              - fsl,ls1088a-reset
-              - fsl,vf610-anatop
-              - fsl,vf610-mscm-cpucfg
-              - hisilicon,dsa-subctrl
-              - hisilicon,hi6220-sramctrl
-              - hisilicon,hip04-ppe
-              - hisilicon,pcie-sas-subctrl
-              - hisilicon,peri-subctrl
-              - hpe,gxp-sysreg
-              - loongson,ls1b-syscon
-              - loongson,ls1c-syscon
-              - lsi,axxia-syscon
-              - marvell,armada-3700-cpu-misc
-              - marvell,armada-3700-nb-pm
-              - marvell,armada-3700-avs
-              - marvell,armada-3700-usb2-host-misc
-              - marvell,dove-global-config
-              - mediatek,mt2701-pctl-a-syscfg
-              - mediatek,mt2712-pctl-a-syscfg
-              - mediatek,mt6397-pctl-pmic-syscfg
-              - mediatek,mt8135-pctl-a-syscfg
-              - mediatek,mt8135-pctl-b-syscfg
-              - mediatek,mt8173-pctl-a-syscfg
-              - mediatek,mt8365-syscfg
-              - microchip,lan966x-cpu-syscon
-              - microchip,sam9x60-sfr
-              - microchip,sama7g5-ddr3phy
-              - mscc,ocelot-cpu-syscon
-              - mstar,msc313-pmsleep
-              - nuvoton,ma35d1-sys
-              - nuvoton,wpcm450-shm
-              - rockchip,px30-qos
-              - rockchip,rk3036-qos
-              - rockchip,rk3066-qos
-              - rockchip,rk3128-qos
-              - rockchip,rk3228-qos
-              - rockchip,rk3288-qos
-              - rockchip,rk3368-qos
-              - rockchip,rk3399-qos
-              - rockchip,rk3568-qos
-              - rockchip,rk3588-qos
-              - rockchip,rv1126-qos
-              - st,spear1340-misc
-              - stericsson,nomadik-pmu
-              - starfive,jh7100-sysmain
-              - ti,am62-opp-efuse-table
-              - ti,am62-usb-phy-ctrl
-              - ti,am625-dss-oldi-io-ctrl
-              - ti,am62p-cpsw-mac-efuse
-              - ti,am654-dss-oldi-io-ctrl
-              - ti,j784s4-pcie-ctrl
-              - ti,keystone-pllctrl
-
-          - const: syscon
-
-      - contains:
-          const: syscon
-        minItems: 2
-        maxItems: 5  # Should be enough
+    items:
+      - enum:
+          - al,alpine-sysfabric-service
+          - allwinner,sun8i-a83t-system-controller
+          - allwinner,sun8i-h3-system-controller
+          - allwinner,sun8i-v3s-system-controller
+          - allwinner,sun50i-a64-system-controller
+          - altr,l3regs
+          - altr,sdr-ctl
+          - amd,pensando-elba-syscon
+          - amlogic,meson-mx-assist
+          - amlogic,meson-mx-bootrom
+          - amlogic,meson8-analog-top
+          - amlogic,meson8b-analog-top
+          - amlogic,meson8-pmu
+          - amlogic,meson8b-pmu
+          - apm,xgene-csw
+          - apm,xgene-efuse
+          - apm,xgene-mcb
+          - apm,xgene-rb
+          - apm,xgene-scu
+          - atmel,sama5d2-sfrbu
+          - atmel,sama5d3-nfc-io
+          - atmel,sama5d3-sfrbu
+          - atmel,sama5d4-sfrbu
+          - axis,artpec6-syscon
+          - brcm,cru-clkset
+          - brcm,sr-cdru
+          - brcm,sr-mhb
+          - cirrus,ep7209-syscon1
+          - cirrus,ep7209-syscon2
+          - cirrus,ep7209-syscon3
+          - cnxt,cx92755-uc
+          - freecom,fsg-cs2-system-controller
+          - fsl,imx93-aonmix-ns-syscfg
+          - fsl,imx93-wakeupmix-syscfg
+          - fsl,ls1088a-reset
+          - fsl,vf610-anatop
+          - fsl,vf610-mscm-cpucfg
+          - hisilicon,dsa-subctrl
+          - hisilicon,hi6220-sramctrl
+          - hisilicon,hip04-ppe
+          - hisilicon,pcie-sas-subctrl
+          - hisilicon,peri-subctrl
+          - hpe,gxp-sysreg
+          - loongson,ls1b-syscon
+          - loongson,ls1c-syscon
+          - lsi,axxia-syscon
+          - marvell,armada-3700-cpu-misc
+          - marvell,armada-3700-nb-pm
+          - marvell,armada-3700-avs
+          - marvell,armada-3700-usb2-host-misc
+          - marvell,dove-global-config
+          - mediatek,mt2701-pctl-a-syscfg
+          - mediatek,mt2712-pctl-a-syscfg
+          - mediatek,mt6397-pctl-pmic-syscfg
+          - mediatek,mt8135-pctl-a-syscfg
+          - mediatek,mt8135-pctl-b-syscfg
+          - mediatek,mt8173-pctl-a-syscfg
+          - mediatek,mt8365-syscfg
+          - microchip,lan966x-cpu-syscon
+          - microchip,sam9x60-sfr
+          - microchip,sama7g5-ddr3phy
+          - mscc,ocelot-cpu-syscon
+          - mstar,msc313-pmsleep
+          - nuvoton,ma35d1-sys
+          - nuvoton,wpcm450-shm
+          - rockchip,px30-qos
+          - rockchip,rk3036-qos
+          - rockchip,rk3066-qos
+          - rockchip,rk3128-qos
+          - rockchip,rk3228-qos
+          - rockchip,rk3288-qos
+          - rockchip,rk3368-qos
+          - rockchip,rk3399-qos
+          - rockchip,rk3568-qos
+          - rockchip,rk3588-qos
+          - rockchip,rv1126-qos
+          - st,spear1340-misc
+          - stericsson,nomadik-pmu
+          - starfive,jh7100-sysmain
+          - ti,am62-opp-efuse-table
+          - ti,am62-usb-phy-ctrl
+          - ti,am625-dss-oldi-io-ctrl
+          - ti,am62p-cpsw-mac-efuse
+          - ti,am654-dss-oldi-io-ctrl
+          - ti,j784s4-pcie-ctrl
+          - ti,keystone-pllctrl
+      - const: syscon
 
   reg:
     maxItems: 1
 
-  reg-io-width:
-    description: |
-      The size (in bytes) of the IO accesses that should be performed
-      on the device.
-    enum: [1, 2, 4, 8]
-
   resets:
     maxItems: 1
 
@@ -145,18 +219,9 @@ required:
   - reg
 
 allOf:
-  - if:
-      properties:
-        compatible:
-          contains:
-            const: simple-mfd
-    then:
-      properties:
-        compatible:
-          minItems: 3
-          maxItems: 5
+  - $ref: syscon-common.yaml#
 
-additionalProperties: true
+unevaluatedProperties: false
 
 examples:
   - |

-- 
2.43.0


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

* [PATCH v4 7/7] dt-bindings: mfd: syscon: Add APM poweroff mailbox
  2024-06-27 10:32 [PATCH v4 0/7] dt-bindings: mfd: syscon: Document more compatibles and require simpe-mfd description Krzysztof Kozlowski
                   ` (5 preceding siblings ...)
  2024-06-27 10:32 ` [PATCH v4 6/7] dt-bindings: mfd: syscon: Split and enforce documenting MFD children Krzysztof Kozlowski
@ 2024-06-27 10:32 ` Krzysztof Kozlowski
  2024-06-28 14:30 ` [PATCH v4 0/7] dt-bindings: mfd: syscon: Document more compatibles and require simpe-mfd description Lee Jones
  7 siblings, 0 replies; 11+ messages in thread
From: Krzysztof Kozlowski @ 2024-06-27 10:32 UTC (permalink / raw)
  To: Orson Zhai, Baolin Wang, Chunyan Zhang, Jacky Huang,
	Shan-Chun Hung, Khuong Dinh, Lee Jones, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Chuanhua Lei, Rahul Tanwar,
	Lars Povlsen, Steen Hegelund, Daniel Machon, UNGLinuxDriver,
	Nishanth Menon, Matthias Brugger, AngeloGioacchino Del Regno
  Cc: Jiaxun Yang, devicetree, linux-kernel, linux-arm-kernel,
	linux-mediatek, Krzysztof Kozlowski

Add compatible for an already used syscon poweroff/mailbox block in APM.

Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 Documentation/devicetree/bindings/mfd/syscon.yaml | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/Documentation/devicetree/bindings/mfd/syscon.yaml b/Documentation/devicetree/bindings/mfd/syscon.yaml
index aa1c2608d326..9dc594ea3654 100644
--- a/Documentation/devicetree/bindings/mfd/syscon.yaml
+++ b/Documentation/devicetree/bindings/mfd/syscon.yaml
@@ -41,6 +41,8 @@ select:
           - amlogic,meson8b-analog-top
           - amlogic,meson8-pmu
           - amlogic,meson8b-pmu
+          - apm,merlin-poweroff-mailbox
+          - apm,mustang-poweroff-mailbox
           - apm,xgene-csw
           - apm,xgene-efuse
           - apm,xgene-mcb
@@ -134,6 +136,8 @@ properties:
           - amlogic,meson8b-analog-top
           - amlogic,meson8-pmu
           - amlogic,meson8b-pmu
+          - apm,merlin-poweroff-mailbox
+          - apm,mustang-poweroff-mailbox
           - apm,xgene-csw
           - apm,xgene-efuse
           - apm,xgene-mcb

-- 
2.43.0


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

* Re: [PATCH v4 6/7] dt-bindings: mfd: syscon: Split and enforce documenting MFD children
  2024-06-27 10:32 ` [PATCH v4 6/7] dt-bindings: mfd: syscon: Split and enforce documenting MFD children Krzysztof Kozlowski
@ 2024-06-27 10:39   ` AngeloGioacchino Del Regno
  0 siblings, 0 replies; 11+ messages in thread
From: AngeloGioacchino Del Regno @ 2024-06-27 10:39 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Orson Zhai, Baolin Wang, Chunyan Zhang,
	Jacky Huang, Shan-Chun Hung, Khuong Dinh, Lee Jones, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Chuanhua Lei, Rahul Tanwar,
	Lars Povlsen, Steen Hegelund, Daniel Machon, UNGLinuxDriver,
	Nishanth Menon, Matthias Brugger
  Cc: Jiaxun Yang, devicetree, linux-kernel, linux-arm-kernel,
	linux-mediatek, Conor Dooley, Maxime Ripard

Il 27/06/24 12:32, Krzysztof Kozlowski ha scritto:
> Simple syscon nodes can be documented in common syscon.yaml, however
> devices with simple-mfd compatible, thus with some children, should have
> their own schema listing these children.  Such listing makes the binding
> specific, allows better validation (so the incorrect child would not
> appear in the simple-mfd node) and actually enforces repeated rule for
> simple-mfd devices:
> 
>    "simple-mfd" is only for simple devices, where the children do not
>    depend on the parent.
> 
> Currently the syscon+simple-mfd binding is quite broad and allows
> any child or property, thus above rule cannot be enforced.
> 
> Split the syscon.yaml binding into:
> 1. Common syscon properties, used potentially by many bindings.
> 2. Simple syscon devices (NO simple-mfd!).
> 
> Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
> Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>



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

* Re: [PATCH v4 1/7] dt-bindings: mfd: syscon: Drop hwlocks
  2024-06-27 10:32 ` [PATCH v4 1/7] dt-bindings: mfd: syscon: Drop hwlocks Krzysztof Kozlowski
@ 2024-06-27 10:39   ` AngeloGioacchino Del Regno
  0 siblings, 0 replies; 11+ messages in thread
From: AngeloGioacchino Del Regno @ 2024-06-27 10:39 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Orson Zhai, Baolin Wang, Chunyan Zhang,
	Jacky Huang, Shan-Chun Hung, Khuong Dinh, Lee Jones, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Chuanhua Lei, Rahul Tanwar,
	Lars Povlsen, Steen Hegelund, Daniel Machon, UNGLinuxDriver,
	Nishanth Menon, Matthias Brugger
  Cc: Jiaxun Yang, devicetree, linux-kernel, linux-arm-kernel,
	linux-mediatek

Il 27/06/24 12:32, Krzysztof Kozlowski ha scritto:
> Apparently there is no in-tree DTS syscon node having hwlocks, so drop
> the property to simplify the binding.
> 
> Acked-by: Rob Herring (Arm) <robh@kernel.org>
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>

> ---
>   Documentation/devicetree/bindings/mfd/syscon.yaml | 5 -----
>   1 file changed, 5 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/mfd/syscon.yaml b/Documentation/devicetree/bindings/mfd/syscon.yaml
> index 993460c3cfe1..cc1e9fec5cc7 100644
> --- a/Documentation/devicetree/bindings/mfd/syscon.yaml
> +++ b/Documentation/devicetree/bindings/mfd/syscon.yaml
> @@ -143,11 +143,6 @@ properties:
>     resets:
>       maxItems: 1
>   
> -  hwlocks:
> -    maxItems: 1
> -    description:
> -      Reference to a phandle of a hardware spinlock provider node.
> -
>   required:
>     - compatible
>     - reg
> 



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

* Re: [PATCH v4 0/7] dt-bindings: mfd: syscon: Document more compatibles and require simpe-mfd description
  2024-06-27 10:32 [PATCH v4 0/7] dt-bindings: mfd: syscon: Document more compatibles and require simpe-mfd description Krzysztof Kozlowski
                   ` (6 preceding siblings ...)
  2024-06-27 10:32 ` [PATCH v4 7/7] dt-bindings: mfd: syscon: Add APM poweroff mailbox Krzysztof Kozlowski
@ 2024-06-28 14:30 ` Lee Jones
  7 siblings, 0 replies; 11+ messages in thread
From: Lee Jones @ 2024-06-28 14:30 UTC (permalink / raw)
  To: Orson Zhai, Baolin Wang, Chunyan Zhang, Jacky Huang,
	Shan-Chun Hung, Khuong Dinh, Lee Jones, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Chuanhua Lei, Rahul Tanwar,
	Lars Povlsen, Steen Hegelund, Daniel Machon, UNGLinuxDriver,
	Nishanth Menon, Matthias Brugger, AngeloGioacchino Del Regno,
	Krzysztof Kozlowski
  Cc: Jiaxun Yang, devicetree, linux-kernel, linux-arm-kernel,
	linux-mediatek, Conor Dooley, Rahul Tanwar,
	Amireddy Mallikarjuna reddy, Zhu, Yi Xin, Maxime Ripard

On Thu, 27 Jun 2024 12:32:16 +0200, Krzysztof Kozlowski wrote:
> Dependency
> ==========
> Rebased on Lee's MFD tree, because dependency is there already:
> https://lore.kernel.org/all/171828959006.2643902.8308227314531523435.b4-ty@kernel.org/
> 
> Merging
> =======
> Preferrably everything via MFD tree (file/context dependencies).
> 
> [...]

Applied, thanks!

[1/7] dt-bindings: mfd: syscon: Drop hwlocks
      commit: 9e1d9c508ad657b8ca01d5faa5ad6412b5ed6848
[2/7] dt-bindings: soc: sprd: sc9863a-glbregs: Document SC9863A syscon
      commit: 375f375ce42f8700ebafb2271a826deb37355b9d
[3/7] dt-bindings: soc: intel: lgm-syscon: Move to dedicated schema
      commit: 473c6ff312f9cc7d69791843de42f090e84e0555
[4/7] dt-bindings: soc: microchip: sparx5-cpu-syscon: Move to dedicated schema
      commit: 4a3b558d40d18dbad4c6a58093e80b137ffec5ed
[5/7] dt-bindings: soc: ti: am654-serdes-ctrl: Move to dedicated schema
      commit: 662ffb5b0edcbc902bb3185512aa972e6b9e905b
[6/7] dt-bindings: mfd: syscon: Split and enforce documenting MFD children
      commit: 91d5927467b5dc7b87c0283721b3e0e64ed84a77
[7/7] dt-bindings: mfd: syscon: Add APM poweroff mailbox
      commit: 33c0e553c8c3cee355ea7bcd358d653b0f022b2d

--
Lee Jones [李琼斯]


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

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

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-06-27 10:32 [PATCH v4 0/7] dt-bindings: mfd: syscon: Document more compatibles and require simpe-mfd description Krzysztof Kozlowski
2024-06-27 10:32 ` [PATCH v4 1/7] dt-bindings: mfd: syscon: Drop hwlocks Krzysztof Kozlowski
2024-06-27 10:39   ` AngeloGioacchino Del Regno
2024-06-27 10:32 ` [PATCH v4 2/7] dt-bindings: soc: sprd: sc9863a-glbregs: Document SC9863A syscon Krzysztof Kozlowski
2024-06-27 10:32 ` [PATCH v4 3/7] dt-bindings: soc: intel: lgm-syscon: Move to dedicated schema Krzysztof Kozlowski
2024-06-27 10:32 ` [PATCH v4 4/7] dt-bindings: soc: microchip: sparx5-cpu-syscon: " Krzysztof Kozlowski
2024-06-27 10:32 ` [PATCH v4 5/7] dt-bindings: soc: ti: am654-serdes-ctrl: " Krzysztof Kozlowski
2024-06-27 10:32 ` [PATCH v4 6/7] dt-bindings: mfd: syscon: Split and enforce documenting MFD children Krzysztof Kozlowski
2024-06-27 10:39   ` AngeloGioacchino Del Regno
2024-06-27 10:32 ` [PATCH v4 7/7] dt-bindings: mfd: syscon: Add APM poweroff mailbox Krzysztof Kozlowski
2024-06-28 14:30 ` [PATCH v4 0/7] dt-bindings: mfd: syscon: Document more compatibles and require simpe-mfd description Lee Jones

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).