[v7,1/2] dt-bindings: soc: starfive: Add StarFive syscon doc

Message ID 20230406103308.1280860-2-william.qiu@starfivetech.com
State New
Headers
Series StarFive's SYSCON support |

Commit Message

William Qiu April 6, 2023, 10:33 a.m. UTC
  Add documentation to describe StarFive System Controller Registers.

Signed-off-by: William Qiu <william.qiu@starfivetech.com>
---
 .../soc/starfive/starfive,jh7110-syscon.yaml  | 56 +++++++++++++++++++
 MAINTAINERS                                   |  5 ++
 2 files changed, 61 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/soc/starfive/starfive,jh7110-syscon.yaml
  

Comments

Krzysztof Kozlowski April 6, 2023, 6:30 p.m. UTC | #1
On 06/04/2023 12:33, William Qiu wrote:
> Add documentation to describe StarFive System Controller Registers.

Subject: drop second/last, redundant "doc". The "dt-bindings" prefix is
already stating that these are documentation files.

> 
> Signed-off-by: William Qiu <william.qiu@starfivetech.com>
> ---
>  .../soc/starfive/starfive,jh7110-syscon.yaml  | 56 +++++++++++++++++++
>  MAINTAINERS                                   |  5 ++
>  2 files changed, 61 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/soc/starfive/starfive,jh7110-syscon.yaml
> 
> diff --git a/Documentation/devicetree/bindings/soc/starfive/starfive,jh7110-syscon.yaml b/Documentation/devicetree/bindings/soc/starfive/starfive,jh7110-syscon.yaml
> new file mode 100644
> index 000000000000..0d0319426b67
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/soc/starfive/starfive,jh7110-syscon.yaml
> @@ -0,0 +1,56 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/soc/starfive/starfive,jh7110-syscon.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: StarFive JH7110 SoC system controller
> +
> +maintainers:
> +  - William Qiu <william.qiu@starfivetech.com>
> +
> +description: |
> +  The StarFive JH7110 SoC system controller provides register information such
> +  as offset, mask and shift to configure related modules such as MMC and PCIe.
> +
> +properties:
> +  compatible:
> +    oneOf:
> +      - items:
> +          - enum:
> +              - starfive,jh7110-aon-syscon
> +              - starfive,jh7110-sys-syscon
> +          - const: syscon
> +          - const: simple-mfd
> +      - items:
> +          - const: starfive,jh7110-stg-syscon
> +          - const: syscon
> +
> +  reg:
> +    maxItems: 1
> +
> +  clock-controller:
> +    type: object

This should be rather specific schema, so $ref.

> +
> +  power-controller:
> +    type: object

Same problem.

> +
> +required:
> +  - compatible
> +  - reg
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    syscon@10240000 {
> +        compatible = "starfive,jh7110-stg-syscon", "syscon";
> +        reg = <0x10240000 0x1000>;
> +    };
> +
> +    syscon@13030000 {
> +        compatible = "starfive,jh7110-sys-syscon", "syscon", "simple-mfd";
> +        reg = <0x13030000 0x1000>;
> +    };
Best regards,
Krzysztof
  
William Qiu April 7, 2023, 9:30 a.m. UTC | #2
On 2023/4/7 2:30, Krzysztof Kozlowski wrote:
> On 06/04/2023 12:33, William Qiu wrote:
>> Add documentation to describe StarFive System Controller Registers.
> 
> Subject: drop second/last, redundant "doc". The "dt-bindings" prefix is
> already stating that these are documentation files.
> 
Will fix.
>> 
>> Signed-off-by: William Qiu <william.qiu@starfivetech.com>
>> ---
>>  .../soc/starfive/starfive,jh7110-syscon.yaml  | 56 +++++++++++++++++++
>>  MAINTAINERS                                   |  5 ++
>>  2 files changed, 61 insertions(+)
>>  create mode 100644 Documentation/devicetree/bindings/soc/starfive/starfive,jh7110-syscon.yaml
>> 
>> diff --git a/Documentation/devicetree/bindings/soc/starfive/starfive,jh7110-syscon.yaml b/Documentation/devicetree/bindings/soc/starfive/starfive,jh7110-syscon.yaml
>> new file mode 100644
>> index 000000000000..0d0319426b67
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/soc/starfive/starfive,jh7110-syscon.yaml
>> @@ -0,0 +1,56 @@
>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/soc/starfive/starfive,jh7110-syscon.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: StarFive JH7110 SoC system controller
>> +
>> +maintainers:
>> +  - William Qiu <william.qiu@starfivetech.com>
>> +
>> +description: |
>> +  The StarFive JH7110 SoC system controller provides register information such
>> +  as offset, mask and shift to configure related modules such as MMC and PCIe.
>> +
>> +properties:
>> +  compatible:
>> +    oneOf:
>> +      - items:
>> +          - enum:
>> +              - starfive,jh7110-aon-syscon
>> +              - starfive,jh7110-sys-syscon
>> +          - const: syscon
>> +          - const: simple-mfd
>> +      - items:
>> +          - const: starfive,jh7110-stg-syscon
>> +          - const: syscon
>> +
>> +  reg:
>> +    maxItems: 1
>> +
>> +  clock-controller:
>> +    type: object
> 
> This should be rather specific schema, so $ref.
> 

This would be $ref: /schemas/clock/starfive,jh7110-pll.yaml#, but this file is not
available at present,  so I would like to ask if I should submit the documents
instead of Xingyu


>> +
>> +  power-controller:
>> +    type: object
> 
Will fix, it would be $ref: /schemas/power/starfive,jh7110-pmu.yaml#.

Best regards,
William
> Same problem.
> 
>> +
>> +required:
>> +  - compatible
>> +  - reg
>> +
>> +additionalProperties: false
>> +
>> +examples:
>> +  - |
>> +    syscon@10240000 {
>> +        compatible = "starfive,jh7110-stg-syscon", "syscon";
>> +        reg = <0x10240000 0x1000>;
>> +    };
>> +
>> +    syscon@13030000 {
>> +        compatible = "starfive,jh7110-sys-syscon", "syscon", "simple-mfd";
>> +        reg = <0x13030000 0x1000>;
>> +    };
> Best regards,
> Krzysztof
>
  
Conor Dooley April 7, 2023, 10:11 a.m. UTC | #3
On Fri, Apr 07, 2023 at 05:30:31PM +0800, William Qiu wrote:
> 
> This would be $ref: /schemas/clock/starfive,jh7110-pll.yaml#, but this file is not
> available at present,  so I would like to ask if I should submit the documents
> instead of Xingyu

Or just send the whole lot as one series, and I'll ack the soc bits for
Stephen to take the whole lot via clk? I think Xingyu owes a respin
anyway cos of the changes to this binding file that Krzysztof requested
there.

Plus, the base clock support is now in clk-next, so their stuff is now
applicable to the clk tree.

> diff --git a/MAINTAINERS b/MAINTAINERS
> index 4c0b39c44957..0b2170e1e4ff 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -19911,6 +19911,11 @@ S:	Supported
>  F:	Documentation/devicetree/bindings/mmc/starfive*
>  F:	drivers/mmc/host/dw_mmc-starfive.c
>  
> +STARFIVE JH7110 SYSCON
> +M:	William Qiu <william.qiu@starfivetech.com>
> +S:	Supported
> +F:	Documentation/devicetree/bindings/soc/starfive/starfive,jh7110-syscon.yaml

Can you squash this in please (whitespace damaged):
diff --git a/MAINTAINERS b/MAINTAINERS
index 90abe83c02f3..6fbb486f59ab 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -19943,6 +19943,7 @@ STARFIVE SOC DRIVERS
 M:     Conor Dooley <conor@kernel.org>
 S:     Maintained
 T:     git https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux.git/
+F:     Documentation/devicetree/bindings/soc/starfive/
 F:     drivers/soc/starfive/

Cheers,
Conor.
  
William Qiu April 7, 2023, 11:17 a.m. UTC | #4
On 2023/4/7 18:11, Conor Dooley wrote:
> On Fri, Apr 07, 2023 at 05:30:31PM +0800, William Qiu wrote:
>> 
>> This would be $ref: /schemas/clock/starfive,jh7110-pll.yaml#, but this file is not
>> available at present,  so I would like to ask if I should submit the documents
>> instead of Xingyu
> 
> Or just send the whole lot as one series, and I'll ack the soc bits for
> Stephen to take the whole lot via clk? I think Xingyu owes a respin
> anyway cos of the changes to this binding file that Krzysztof requested
> there.
> 
> Plus, the base clock support is now in clk-next, so their stuff is now
> applicable to the clk tree.
> 

So it is the best choice to give the whole series to Xingyu?

>> diff --git a/MAINTAINERS b/MAINTAINERS
>> index 4c0b39c44957..0b2170e1e4ff 100644
>> --- a/MAINTAINERS
>> +++ b/MAINTAINERS
>> @@ -19911,6 +19911,11 @@ S:	Supported
>>  F:	Documentation/devicetree/bindings/mmc/starfive*
>>  F:	drivers/mmc/host/dw_mmc-starfive.c
>>  
>> +STARFIVE JH7110 SYSCON
>> +M:	William Qiu <william.qiu@starfivetech.com>
>> +S:	Supported
>> +F:	Documentation/devicetree/bindings/soc/starfive/starfive,jh7110-syscon.yaml
> 
> Can you squash this in please (whitespace damaged):
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 90abe83c02f3..6fbb486f59ab 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -19943,6 +19943,7 @@ STARFIVE SOC DRIVERS
>  M:     Conor Dooley <conor@kernel.org>
>  S:     Maintained
>  T:     git https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux.git/
> +F:     Documentation/devicetree/bindings/soc/starfive/
>  F:     drivers/soc/starfive/
> 

I would tell Xingyu to do so.

Best regards,
William
> Cheers,
> Conor.
  

Patch

diff --git a/Documentation/devicetree/bindings/soc/starfive/starfive,jh7110-syscon.yaml b/Documentation/devicetree/bindings/soc/starfive/starfive,jh7110-syscon.yaml
new file mode 100644
index 000000000000..0d0319426b67
--- /dev/null
+++ b/Documentation/devicetree/bindings/soc/starfive/starfive,jh7110-syscon.yaml
@@ -0,0 +1,56 @@ 
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/soc/starfive/starfive,jh7110-syscon.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: StarFive JH7110 SoC system controller
+
+maintainers:
+  - William Qiu <william.qiu@starfivetech.com>
+
+description: |
+  The StarFive JH7110 SoC system controller provides register information such
+  as offset, mask and shift to configure related modules such as MMC and PCIe.
+
+properties:
+  compatible:
+    oneOf:
+      - items:
+          - enum:
+              - starfive,jh7110-aon-syscon
+              - starfive,jh7110-sys-syscon
+          - const: syscon
+          - const: simple-mfd
+      - items:
+          - const: starfive,jh7110-stg-syscon
+          - const: syscon
+
+  reg:
+    maxItems: 1
+
+  clock-controller:
+    type: object
+
+  power-controller:
+    type: object
+
+required:
+  - compatible
+  - reg
+
+additionalProperties: false
+
+examples:
+  - |
+    syscon@10240000 {
+        compatible = "starfive,jh7110-stg-syscon", "syscon";
+        reg = <0x10240000 0x1000>;
+    };
+
+    syscon@13030000 {
+        compatible = "starfive,jh7110-sys-syscon", "syscon", "simple-mfd";
+        reg = <0x13030000 0x1000>;
+    };
+
+...
diff --git a/MAINTAINERS b/MAINTAINERS
index 4c0b39c44957..0b2170e1e4ff 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -19911,6 +19911,11 @@  S:	Supported
 F:	Documentation/devicetree/bindings/mmc/starfive*
 F:	drivers/mmc/host/dw_mmc-starfive.c
 
+STARFIVE JH7110 SYSCON
+M:	William Qiu <william.qiu@starfivetech.com>
+S:	Supported
+F:	Documentation/devicetree/bindings/soc/starfive/starfive,jh7110-syscon.yaml
+
 STARFIVE JH71X0 CLOCK DRIVERS
 M:	Emil Renner Berthing <kernel@esmil.dk>
 M:	Hal Feng <hal.feng@starfivetech.com>