Add documentation to describe StarFive
designware mobile storage host controller driver.
Signed-off-by: William Qiu <william.qiu@starfivetech.com>
---
.../bindings/mmc/starfive,jh7110-mmc.yaml | 72 +++++++++++++++++++
1 file changed, 72 insertions(+)
create mode 100644 Documentation/devicetree/bindings/mmc/starfive,jh7110-mmc.yaml
diff --git a/Documentation/devicetree/bindings/mmc/starfive,jh7110-mmc.yaml b/Documentation/devicetree/bindings/mmc/starfive,jh7110-mmc.yaml
new file mode 100644
index 000000000000..430dd5f24933
--- /dev/null
+++ b/Documentation/devicetree/bindings/mmc/starfive,jh7110-mmc.yaml
@@ -0,0 +1,72 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/mmc/starfive,jh7110-mmc.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: StarFive Designware Mobile Storage Host Controller
+
+description:
+ StarFive uses the Synopsys designware mobile storage host controller
+ to interface a SoC with storage medium such as eMMC or SD/MMC cards.
+
+allOf:
+ - $ref: synopsys-dw-mshc-common.yaml#
+
+maintainers:
+ - William Qiu <william.qiu@starfivetech.com>
+
+properties:
+ compatible:
+ const: starfive,jh7110-mmc
+
+ reg:
+ maxItems: 1
+
+ clocks:
+ items:
+ - description: biu clock
+ - description: ciu clock
+
+ clock-names:
+ items:
+ - const: biu
+ - const: ciu
+
+ interrupts:
+ maxItems: 1
+
+ starfive,syscon:
+ $ref: /schemas/types.yaml#/definitions/phandle-array
+ description:
+ arg0:arg0 is syscon.
+ arg1:arg1 is syscon register offset, used to enable MMC function.
+ arg2:arg2 is used to enable the register shift of the MMC function.
+ arg3:arg3 is used to enable the register mask of the MMC function.
+
+required:
+ - compatible
+ - reg
+ - clocks
+ - clock-names
+ - interrupts
+ - starfive,syscon
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ mmc@16010000 {
+ compatible = "starfive,jh7110-mmc";
+ reg = <0x16010000 0x10000>;
+ clocks = <&syscrg 91>,
+ <&syscrg 93>;
+ clock-names = "biu","ciu";
+ resets = <&syscrg 64>;
+ reset-names = "reset";
+ interrupts = <74>;
+ fifo-depth = <32>;
+ fifo-watermark-aligned;
+ data-addr = <0>;
+ starfive,syscon = <&syscon 0x14 0x1a 0x7c000000>;
+ };
--
2.34.1
On 27/12/2022 13:22, William Qiu wrote: > Add documentation to describe StarFive > designware mobile storage host controller driver. Please wrap commit message according to Linux coding style / submission process (neither too early nor over the limit): https://elixir.bootlin.com/linux/v5.18-rc4/source/Documentation/process/submitting-patches.rst#L586 The subject is a bit redundant and not precise. No need to mention "bindings" twice but "StarFive" is really too generic. Do you add now all possible devices from StarFive? I see only one. Rephrase (use git log to find examples). > > Signed-off-by: William Qiu <william.qiu@starfivetech.com> > --- > .../bindings/mmc/starfive,jh7110-mmc.yaml | 72 +++++++++++++++++++ > 1 file changed, 72 insertions(+) > create mode 100644 Documentation/devicetree/bindings/mmc/starfive,jh7110-mmc.yaml > > diff --git a/Documentation/devicetree/bindings/mmc/starfive,jh7110-mmc.yaml b/Documentation/devicetree/bindings/mmc/starfive,jh7110-mmc.yaml > new file mode 100644 > index 000000000000..430dd5f24933 > --- /dev/null > +++ b/Documentation/devicetree/bindings/mmc/starfive,jh7110-mmc.yaml > @@ -0,0 +1,72 @@ > +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/mmc/starfive,jh7110-mmc.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: StarFive Designware Mobile Storage Host Controller > + > +description: > + StarFive uses the Synopsys designware mobile storage host controller > + to interface a SoC with storage medium such as eMMC or SD/MMC cards. > + > +allOf: > + - $ref: synopsys-dw-mshc-common.yaml# > + > +maintainers: > + - William Qiu <william.qiu@starfivetech.com> > + > +properties: > + compatible: > + const: starfive,jh7110-mmc > + > + reg: > + maxItems: 1 > + > + clocks: > + items: > + - description: biu clock > + - description: ciu clock > + > + clock-names: > + items: > + - const: biu > + - const: ciu > + > + interrupts: > + maxItems: 1 > + > + starfive,syscon: Name is not specific enough. What is syscon? Any syscon? This needs to be specific. > + $ref: /schemas/types.yaml#/definitions/phandle-array > + description: > + arg0:arg0 is syscon. What is syscon? > + arg1:arg1 is syscon register offset, used to enable MMC function. Describe the argument, not what it is used for, e.g. "offset of XXX YYY ZZZ" > + arg2:arg2 is used to enable the register shift of the MMC function. > + arg3:arg3 is used to enable the register mask of the MMC function. That's not how the phandle array is described. Instead: https://elixir.bootlin.com/linux/v5.18-rc1/source/Documentation/devicetree/bindings/soc/samsung/exynos-usi.yaml#L42 Best regards, Krzysztof
On 2022/12/27 21:05, Krzysztof Kozlowski wrote: > On 27/12/2022 13:22, William Qiu wrote: >> Add documentation to describe StarFive >> designware mobile storage host controller driver. > > Please wrap commit message according to Linux coding style / submission > process (neither too early nor over the limit): > https://elixir.bootlin.com/linux/v5.18-rc4/source/Documentation/process/submitting-patches.rst#L586 > > The subject is a bit redundant and not precise. No need to mention > "bindings" twice but "StarFive" is really too generic. Do you add now > all possible devices from StarFive? I see only one. Rephrase (use git > log to find examples). > Will update >> >> Signed-off-by: William Qiu <william.qiu@starfivetech.com> >> --- >> .../bindings/mmc/starfive,jh7110-mmc.yaml | 72 +++++++++++++++++++ >> 1 file changed, 72 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/mmc/starfive,jh7110-mmc.yaml >> >> diff --git a/Documentation/devicetree/bindings/mmc/starfive,jh7110-mmc.yaml b/Documentation/devicetree/bindings/mmc/starfive,jh7110-mmc.yaml >> new file mode 100644 >> index 000000000000..430dd5f24933 >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/mmc/starfive,jh7110-mmc.yaml >> @@ -0,0 +1,72 @@ >> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause >> +%YAML 1.2 >> +--- >> +$id: http://devicetree.org/schemas/mmc/starfive,jh7110-mmc.yaml# >> +$schema: http://devicetree.org/meta-schemas/core.yaml# >> + >> +title: StarFive Designware Mobile Storage Host Controller >> + >> +description: >> + StarFive uses the Synopsys designware mobile storage host controller >> + to interface a SoC with storage medium such as eMMC or SD/MMC cards. >> + >> +allOf: >> + - $ref: synopsys-dw-mshc-common.yaml# >> + >> +maintainers: >> + - William Qiu <william.qiu@starfivetech.com> >> + >> +properties: >> + compatible: >> + const: starfive,jh7110-mmc >> + >> + reg: >> + maxItems: 1 >> + >> + clocks: >> + items: >> + - description: biu clock >> + - description: ciu clock >> + >> + clock-names: >> + items: >> + - const: biu >> + - const: ciu >> + >> + interrupts: >> + maxItems: 1 >> + >> + starfive,syscon: > > Name is not specific enough. What is syscon? Any syscon? This needs to > be specific. > Will update. >> + $ref: /schemas/types.yaml#/definitions/phandle-array >> + description: >> + arg0:arg0 is syscon. > > What is syscon? > Will update. >> + arg1:arg1 is syscon register offset, used to enable MMC function. > > Describe the argument, not what it is used for, e.g. "offset of XXX YYY ZZZ" > >> + arg2:arg2 is used to enable the register shift of the MMC function. >> + arg3:arg3 is used to enable the register mask of the MMC function. > > That's not how the phandle array is described. Instead: > > https://elixir.bootlin.com/linux/v5.18-rc1/source/Documentation/devicetree/bindings/soc/samsung/exynos-usi.yaml#L42 > Hi Krzysztof, Thank you for taking time to review and provide helpful comments for this patch. I will fix all the above issues in the next version. Best Regards, William Qiu > > > Best regards, > Krzysztof >
© 2016 - 2025 Red Hat, Inc.