mbox series

[v3,0/7] dt-bindings: mfd: syscon: Document more compatibles and require simpe-mfd description

Message ID 20240626-dt-bindings-mfd-syscon-split-v3-0-3409903bb99b@linaro.org (mailing list archive)
Headers show
Series dt-bindings: mfd: syscon: Document more compatibles and require simpe-mfd description | expand

Message

Krzysztof Kozlowski June 26, 2024, 10:09 a.m. UTC
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 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  | 306 ++++++++++++---------
 .../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, 457 insertions(+), 123 deletions(-)
---
base-commit: 8dc7c29f608649f3d9eca826e9d4fe4b8a32c472
change-id: 20240517-dt-bindings-mfd-syscon-split-37e23996523d

Best regards,

Comments

Lee Jones June 27, 2024, 8:18 a.m. UTC | #1
On Wed, 26 Jun 2024, Krzysztof Kozlowski wrote:

> 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 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  | 306 ++++++++++++---------
>  .../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, 457 insertions(+), 123 deletions(-)
> ---
> base-commit: 8dc7c29f608649f3d9eca826e9d4fe4b8a32c472
> change-id: 20240517-dt-bindings-mfd-syscon-split-37e23996523d

Okay, I tried to apply these whilst fixing up all the conflicts, but
lost the will to live.  Please rebase and [RESEND].
Krzysztof Kozlowski June 27, 2024, 10:24 a.m. UTC | #2
On 27/06/2024 10:18, Lee Jones wrote:
> On Wed, 26 Jun 2024, Krzysztof Kozlowski wrote:
> 
>> 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 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  | 306 ++++++++++++---------
>>  .../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, 457 insertions(+), 123 deletions(-)
>> ---
>> base-commit: 8dc7c29f608649f3d9eca826e9d4fe4b8a32c472
>> change-id: 20240517-dt-bindings-mfd-syscon-split-37e23996523d
> 
> Okay, I tried to apply these whilst fixing up all the conflicts, but
> lost the will to live.  Please rebase and [RESEND].

This was based on your for-next 8dc7c29f608649f3d9ec "mfd: lm3533: Move
to new GPIO descriptor-based APIs". I'll rebase.

> 

Best regards,
Krzysztof
Krzysztof Kozlowski June 27, 2024, 10:26 a.m. UTC | #3
On 27/06/2024 12:24, Krzysztof Kozlowski wrote:
>>>  .../devicetree/bindings/mfd/syscon-common.yaml     |  71 +++++
>>>  Documentation/devicetree/bindings/mfd/syscon.yaml  | 306 ++++++++++++---------
>>>  .../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, 457 insertions(+), 123 deletions(-)
>>> ---
>>> base-commit: 8dc7c29f608649f3d9eca826e9d4fe4b8a32c472
>>> change-id: 20240517-dt-bindings-mfd-syscon-split-37e23996523d
>>
>> Okay, I tried to apply these whilst fixing up all the conflicts, but
>> lost the will to live.  Please rebase and [RESEND].
> 
> This was based on your for-next 8dc7c29f608649f3d9ec "mfd: lm3533: Move
> to new GPIO descriptor-based APIs". I'll rebase.

Ah, I see now in your tree Bryan's "dt-bindings: mfd: syscon: Add TI's
opp table compatible" which will conflict in tricky way.

Best regards,
Krzysztof
Lee Jones June 28, 2024, 8:09 a.m. UTC | #4
On Thu, 27 Jun 2024, Krzysztof Kozlowski wrote:

> On 27/06/2024 12:24, Krzysztof Kozlowski wrote:
> >>>  .../devicetree/bindings/mfd/syscon-common.yaml     |  71 +++++
> >>>  Documentation/devicetree/bindings/mfd/syscon.yaml  | 306 ++++++++++++---------
> >>>  .../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, 457 insertions(+), 123 deletions(-)
> >>> ---
> >>> base-commit: 8dc7c29f608649f3d9eca826e9d4fe4b8a32c472
> >>> change-id: 20240517-dt-bindings-mfd-syscon-split-37e23996523d
> >>
> >> Okay, I tried to apply these whilst fixing up all the conflicts, but
> >> lost the will to live.  Please rebase and [RESEND].
> > 
> > This was based on your for-next 8dc7c29f608649f3d9ec "mfd: lm3533: Move
> > to new GPIO descriptor-based APIs". I'll rebase.
> 
> Ah, I see now in your tree Bryan's "dt-bindings: mfd: syscon: Add TI's
> opp table compatible" which will conflict in tricky way.

Thanks for rebasing, I'll get to it at some point today.
Lee Jones June 28, 2024, 2:30 p.m. UTC | #5
On Wed, 26 Jun 2024 12:09:09 +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 [李琼斯]