diff mbox series

[RFC,3/3] binding: mmc: hi3798cv200-dw-mshc: convert to YAML and rename to histb-dw-mshc, add compatible of hi3798mv200

Message ID 20230415-mmc-hi3798mv200-v1-3-db5b91d939d4@outlook.com
State Superseded
Headers show
Series mmc: add support for the dw-mmc controller on Hi3798MV200 | expand

Commit Message

Yang Xiwen via B4 Relay April 15, 2023, 2:18 p.m. UTC
From: Yang Xiwen <forbidden405@outlook.com>

Hi3798MV200 has an extra clock, also document it here.

Signed-off-by: Yang Xiwen <forbidden405@outlook.com>
---
 .../bindings/mmc/hi3798cv200-dw-mshc.txt           | 40 ----------
 .../devicetree/bindings/mmc/histb-dw-mshc.yaml     | 90 ++++++++++++++++++++++
 2 files changed, 90 insertions(+), 40 deletions(-)

Comments

Krzysztof Kozlowski April 16, 2023, 7:26 a.m. UTC | #1
On 15/04/2023 16:18, Yang Xiwen via B4 Relay wrote:
> From: Yang Xiwen <forbidden405@outlook.com>
> 
> Hi3798MV200 has an extra clock, also document it here.

Use subject prefixes matching the subsystem (which you can get for
example with `git log --oneline -- DIRECTORY_OR_FILE` on the directory
your patch is touching).


Subject: it is way too long. It should be just conversion. Don't
introduce new compatibles.

> 
> Signed-off-by: Yang Xiwen <forbidden405@outlook.com>
> ---
>  .../bindings/mmc/hi3798cv200-dw-mshc.txt           | 40 ----------
>  .../devicetree/bindings/mmc/histb-dw-mshc.yaml     | 90 ++++++++++++++++++++++
>  2 files changed, 90 insertions(+), 40 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/mmc/hi3798cv200-dw-mshc.txt b/Documentation/devicetree/bindings/mmc/hi3798cv200-dw-mshc.txt
> deleted file mode 100644
> index a0693b7145f2a..0000000000000
> --- a/Documentation/devicetree/bindings/mmc/hi3798cv200-dw-mshc.txt
> +++ /dev/null
> @@ -1,40 +0,0 @@
> -* Hisilicon Hi3798CV200 specific extensions to the Synopsys Designware Mobile
> -  Storage Host Controller
> -
> -Read synopsys-dw-mshc.txt for more details
> -
> -The Synopsys designware mobile storage host controller is used to interface
> -a SoC with storage medium such as eMMC or SD/MMC cards. This file documents
> -differences between the core Synopsys dw mshc controller properties described
> -by synopsys-dw-mshc.txt and the properties used by the Hisilicon Hi3798CV200
> -specific extensions to the Synopsys Designware Mobile Storage Host Controller.
> -
> -Required Properties:
> -- compatible: Should contain "hisilicon,hi3798cv200-dw-mshc".
> -- clocks: A list of phandle + clock-specifier pairs for the clocks listed
> -  in clock-names.
> -- clock-names: Should contain the following:
> -	"ciu" - The ciu clock described in synopsys-dw-mshc.txt.
> -	"biu" - The biu clock described in synopsys-dw-mshc.txt.
> -	"ciu-sample" - Hi3798CV200 extended phase clock for ciu sampling.
> -	"ciu-drive"  - Hi3798CV200 extended phase clock for ciu driving.
> -
> -Example:
> -
> -	emmc: mmc@9830000 {
> -		compatible = "hisilicon,hi3798cv200-dw-mshc";
> -		reg = <0x9830000 0x10000>;
> -		interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
> -		clocks = <&crg HISTB_MMC_CIU_CLK>,
> -			 <&crg HISTB_MMC_BIU_CLK>,
> -			 <&crg HISTB_MMC_SAMPLE_CLK>,
> -			 <&crg HISTB_MMC_DRV_CLK>;
> -		clock-names = "ciu", "biu", "ciu-sample", "ciu-drive";
> -		fifo-depth = <256>;
> -		clock-frequency = <200000000>;
> -		cap-mmc-highspeed;
> -		mmc-ddr-1_8v;
> -		mmc-hs200-1_8v;
> -		non-removable;
> -		bus-width = <8>;
> -	};
> diff --git a/Documentation/devicetree/bindings/mmc/histb-dw-mshc.yaml b/Documentation/devicetree/bindings/mmc/histb-dw-mshc.yaml
> new file mode 100644
> index 0000000000000..05a435185e9da
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/mmc/histb-dw-mshc.yaml
> @@ -0,0 +1,90 @@
> +# SPDX-License-Identifier: GPL-2.0
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/mmc/histb-dw-mshc.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title:
> +  Hisilicon Hi3798CV200 specific extensions to the Synopsys Designware Mobile
> +  Storage Host Controller
> +
> +maintainers:
> +  - Yang Xiwen <forbidden405@outlook.com>
> +
> +description:
> +  The Synopsys designware mobile storage host controller is used to interface
> +  a SoC with storage medium such as eMMC or SD/MMC cards. This file documents
> +  differences between the core Synopsys dw mshc controller properties described
> +  by synopsys-dw-mshc.txt and the properties used by the Hisilicon Hi3798CV200
> +  specific extensions to the Synopsys Designware Mobile Storage Host Controller.

Drop the last sentence.

> +
> +allOf:
> +  - $ref: "synopsys-dw-mshc-common.yaml#"

Drop quotes.

> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            const: hisilicon,hi3798mv200-dw-mshc
> +    then:
> +      properties:
> +        clocks:
> +          minItems: 5
> +
> +        clock-names:
> +          minItems: 5

Entire allOf goes after required:.

> +
> +properties:
> +  compatible:
> +    enum:
> +      - hisilicon,hi3798cv200-dw-mshc
> +      - hisilicon,hi3798mv200-dw-mshc

New compatibles are not related to conversion.

> +
> +  reg:
> +    maxItems: 1
> +
> +  interrupts:
> +    maxItems: 1
> +
> +  clocks:
> +    minItems: 4
> +    maxItems: 5
> +    description: A list of phandles for the clocks listed in clock-names

Drop description.

> +
> +  clock-names:
> +    minItems: 4
> +    items:
> +      - const: ciu
> +      - const: biu
> +      - const: ciu-sample
> +      - const: ciu-drive
> +      - const: sap-dll-mode

Only four clocks were in original document. Don't mix different changes
in one patch.

> +
> +unevaluatedProperties: false
> +
> +required:
> +  - compatible
> +  - reg
> +  - interrupts
> +  - clocks
> +  - clock-names
> +
> +examples:
> +  - |
> +    emmc: mmc@9830000 {
> +            compatible = "hisilicon,hi3798cv200-dw-mshc";
> +            reg = <0x9830000 0x10000>;

Wrong indentation. Use 4 spaces for example indentation.

> +            interrupts = <35>;
> +            clocks = <&crg 1>,

> +
> 

Best regards,
Krzysztof
Yang Xiwen April 16, 2023, 7:49 a.m. UTC | #2
On 4/16/2023 3:26 PM, Krzysztof Kozlowski wrote:
> On 15/04/2023 16:18, Yang Xiwen via B4 Relay wrote:
>> From: Yang Xiwen <forbidden405@outlook.com>
>>
>> Hi3798MV200 has an extra clock, also document it here.
> 
> Use subject prefixes matching the subsystem (which you can get for
> example with `git log --oneline -- DIRECTORY_OR_FILE` on the directory
> your patch is touching).
> 
> 
> Subject: it is way too long. It should be just conversion. Don't
> introduce new compatibles.
> 
>>
>> Signed-off-by: Yang Xiwen <forbidden405@outlook.com>
>> ---
>>  .../bindings/mmc/hi3798cv200-dw-mshc.txt           | 40 ----------
>>  .../devicetree/bindings/mmc/histb-dw-mshc.yaml     | 90 ++++++++++++++++++++++
>>  2 files changed, 90 insertions(+), 40 deletions(-)
>>
>> diff --git a/Documentation/devicetree/bindings/mmc/hi3798cv200-dw-mshc.txt b/Documentation/devicetree/bindings/mmc/hi3798cv200-dw-mshc.txt
>> deleted file mode 100644
>> index a0693b7145f2a..0000000000000
>> --- a/Documentation/devicetree/bindings/mmc/hi3798cv200-dw-mshc.txt
>> +++ /dev/null
>> @@ -1,40 +0,0 @@
>> -* Hisilicon Hi3798CV200 specific extensions to the Synopsys Designware Mobile
>> -  Storage Host Controller
>> -
>> -Read synopsys-dw-mshc.txt for more details
>> -
>> -The Synopsys designware mobile storage host controller is used to interface
>> -a SoC with storage medium such as eMMC or SD/MMC cards. This file documents
>> -differences between the core Synopsys dw mshc controller properties described
>> -by synopsys-dw-mshc.txt and the properties used by the Hisilicon Hi3798CV200
>> -specific extensions to the Synopsys Designware Mobile Storage Host Controller.
>> -
>> -Required Properties:
>> -- compatible: Should contain "hisilicon,hi3798cv200-dw-mshc".
>> -- clocks: A list of phandle + clock-specifier pairs for the clocks listed
>> -  in clock-names.
>> -- clock-names: Should contain the following:
>> -	"ciu" - The ciu clock described in synopsys-dw-mshc.txt.
>> -	"biu" - The biu clock described in synopsys-dw-mshc.txt.
>> -	"ciu-sample" - Hi3798CV200 extended phase clock for ciu sampling.
>> -	"ciu-drive"  - Hi3798CV200 extended phase clock for ciu driving.
>> -
>> -Example:
>> -
>> -	emmc: mmc@9830000 {
>> -		compatible = "hisilicon,hi3798cv200-dw-mshc";
>> -		reg = <0x9830000 0x10000>;
>> -		interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
>> -		clocks = <&crg HISTB_MMC_CIU_CLK>,
>> -			 <&crg HISTB_MMC_BIU_CLK>,
>> -			 <&crg HISTB_MMC_SAMPLE_CLK>,
>> -			 <&crg HISTB_MMC_DRV_CLK>;
>> -		clock-names = "ciu", "biu", "ciu-sample", "ciu-drive";
>> -		fifo-depth = <256>;
>> -		clock-frequency = <200000000>;
>> -		cap-mmc-highspeed;
>> -		mmc-ddr-1_8v;
>> -		mmc-hs200-1_8v;
>> -		non-removable;
>> -		bus-width = <8>;
>> -	};
>> diff --git a/Documentation/devicetree/bindings/mmc/histb-dw-mshc.yaml b/Documentation/devicetree/bindings/mmc/histb-dw-mshc.yaml
>> new file mode 100644
>> index 0000000000000..05a435185e9da
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/mmc/histb-dw-mshc.yaml
>> @@ -0,0 +1,90 @@
>> +# SPDX-License-Identifier: GPL-2.0
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/mmc/histb-dw-mshc.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title:
>> +  Hisilicon Hi3798CV200 specific extensions to the Synopsys Designware Mobile
>> +  Storage Host Controller
>> +
>> +maintainers:
>> +  - Yang Xiwen <forbidden405@outlook.com>
>> +
>> +description:
>> +  The Synopsys designware mobile storage host controller is used to interface
>> +  a SoC with storage medium such as eMMC or SD/MMC cards. This file documents
>> +  differences between the core Synopsys dw mshc controller properties described
>> +  by synopsys-dw-mshc.txt and the properties used by the Hisilicon Hi3798CV200
>> +  specific extensions to the Synopsys Designware Mobile Storage Host Controller.
> 
> Drop the last sentence.
> 
>> +
>> +allOf:
>> +  - $ref: "synopsys-dw-mshc-common.yaml#"
> 
> Drop quotes.
> 
>> +  - if:
>> +      properties:
>> +        compatible:
>> +          contains:
>> +            const: hisilicon,hi3798mv200-dw-mshc
>> +    then:
>> +      properties:
>> +        clocks:
>> +          minItems: 5
>> +
>> +        clock-names:
>> +          minItems: 5
> 
> Entire allOf goes after required:.
> 
>> +
>> +properties:
>> +  compatible:
>> +    enum:
>> +      - hisilicon,hi3798cv200-dw-mshc
>> +      - hisilicon,hi3798mv200-dw-mshc
> 
> New compatibles are not related to conversion.
> 
>> +
>> +  reg:
>> +    maxItems: 1
>> +
>> +  interrupts:
>> +    maxItems: 1
>> +
>> +  clocks:
>> +    minItems: 4
>> +    maxItems: 5
>> +    description: A list of phandles for the clocks listed in clock-names
> 
> Drop description.
> 
>> +
>> +  clock-names:
>> +    minItems: 4
>> +    items:
>> +      - const: ciu
>> +      - const: biu
>> +      - const: ciu-sample
>> +      - const: ciu-drive
>> +      - const: sap-dll-mode
> 
> Only four clocks were in original document. Don't mix different changes
> in one patch.
> 
>> +
>> +unevaluatedProperties: false
>> +
>> +required:
>> +  - compatible
>> +  - reg
>> +  - interrupts
>> +  - clocks
>> +  - clock-names
>> +
>> +examples:
>> +  - |
>> +    emmc: mmc@9830000 {
>> +            compatible = "hisilicon,hi3798cv200-dw-mshc";
>> +            reg = <0x9830000 0x10000>;
> 
> Wrong indentation. Use 4 spaces for example indentation.
> 
>> +            interrupts = <35>;
>> +            clocks = <&crg 1>,
> 
>> +
>>
> 
> Best regards,
> Krzysztof
> 
Thanks, will fix in v3.
By the way, this is v1, v2 fixed some mistakes and the changelog is in
the cover-letter.
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/mmc/hi3798cv200-dw-mshc.txt b/Documentation/devicetree/bindings/mmc/hi3798cv200-dw-mshc.txt
deleted file mode 100644
index a0693b7145f2a..0000000000000
--- a/Documentation/devicetree/bindings/mmc/hi3798cv200-dw-mshc.txt
+++ /dev/null
@@ -1,40 +0,0 @@ 
-* Hisilicon Hi3798CV200 specific extensions to the Synopsys Designware Mobile
-  Storage Host Controller
-
-Read synopsys-dw-mshc.txt for more details
-
-The Synopsys designware mobile storage host controller is used to interface
-a SoC with storage medium such as eMMC or SD/MMC cards. This file documents
-differences between the core Synopsys dw mshc controller properties described
-by synopsys-dw-mshc.txt and the properties used by the Hisilicon Hi3798CV200
-specific extensions to the Synopsys Designware Mobile Storage Host Controller.
-
-Required Properties:
-- compatible: Should contain "hisilicon,hi3798cv200-dw-mshc".
-- clocks: A list of phandle + clock-specifier pairs for the clocks listed
-  in clock-names.
-- clock-names: Should contain the following:
-	"ciu" - The ciu clock described in synopsys-dw-mshc.txt.
-	"biu" - The biu clock described in synopsys-dw-mshc.txt.
-	"ciu-sample" - Hi3798CV200 extended phase clock for ciu sampling.
-	"ciu-drive"  - Hi3798CV200 extended phase clock for ciu driving.
-
-Example:
-
-	emmc: mmc@9830000 {
-		compatible = "hisilicon,hi3798cv200-dw-mshc";
-		reg = <0x9830000 0x10000>;
-		interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
-		clocks = <&crg HISTB_MMC_CIU_CLK>,
-			 <&crg HISTB_MMC_BIU_CLK>,
-			 <&crg HISTB_MMC_SAMPLE_CLK>,
-			 <&crg HISTB_MMC_DRV_CLK>;
-		clock-names = "ciu", "biu", "ciu-sample", "ciu-drive";
-		fifo-depth = <256>;
-		clock-frequency = <200000000>;
-		cap-mmc-highspeed;
-		mmc-ddr-1_8v;
-		mmc-hs200-1_8v;
-		non-removable;
-		bus-width = <8>;
-	};
diff --git a/Documentation/devicetree/bindings/mmc/histb-dw-mshc.yaml b/Documentation/devicetree/bindings/mmc/histb-dw-mshc.yaml
new file mode 100644
index 0000000000000..05a435185e9da
--- /dev/null
+++ b/Documentation/devicetree/bindings/mmc/histb-dw-mshc.yaml
@@ -0,0 +1,90 @@ 
+# SPDX-License-Identifier: GPL-2.0
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/mmc/histb-dw-mshc.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title:
+  Hisilicon Hi3798CV200 specific extensions to the Synopsys Designware Mobile
+  Storage Host Controller
+
+maintainers:
+  - Yang Xiwen <forbidden405@outlook.com>
+
+description:
+  The Synopsys designware mobile storage host controller is used to interface
+  a SoC with storage medium such as eMMC or SD/MMC cards. This file documents
+  differences between the core Synopsys dw mshc controller properties described
+  by synopsys-dw-mshc.txt and the properties used by the Hisilicon Hi3798CV200
+  specific extensions to the Synopsys Designware Mobile Storage Host Controller.
+
+allOf:
+  - $ref: "synopsys-dw-mshc-common.yaml#"
+  - if:
+      properties:
+        compatible:
+          contains:
+            const: hisilicon,hi3798mv200-dw-mshc
+    then:
+      properties:
+        clocks:
+          minItems: 5
+
+        clock-names:
+          minItems: 5
+
+properties:
+  compatible:
+    enum:
+      - hisilicon,hi3798cv200-dw-mshc
+      - hisilicon,hi3798mv200-dw-mshc
+
+  reg:
+    maxItems: 1
+
+  interrupts:
+    maxItems: 1
+
+  clocks:
+    minItems: 4
+    maxItems: 5
+    description: A list of phandles for the clocks listed in clock-names
+
+  clock-names:
+    minItems: 4
+    items:
+      - const: ciu
+      - const: biu
+      - const: ciu-sample
+      - const: ciu-drive
+      - const: sap-dll-mode
+
+unevaluatedProperties: false
+
+required:
+  - compatible
+  - reg
+  - interrupts
+  - clocks
+  - clock-names
+
+examples:
+  - |
+    emmc: mmc@9830000 {
+            compatible = "hisilicon,hi3798cv200-dw-mshc";
+            reg = <0x9830000 0x10000>;
+            interrupts = <35>;
+            clocks = <&crg 1>,
+                     <&crg 2>,
+                     <&crg 3>,
+                     <&crg 4>;
+            clock-names = "ciu", "biu", "ciu-sample", "ciu-drive";
+            fifo-depth = <256>;
+            clock-frequency = <200000000>;
+            cap-mmc-highspeed;
+            mmc-ddr-1_8v;
+            mmc-hs200-1_8v;
+            non-removable;
+            bus-width = <8>;
+    };
+