Message ID | 20221227122227.460921-1-william.qiu@starfivetech.com |
---|---|
Headers | show |
Series | StarFive's SDIO/eMMC driver support | expand |
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 >
On 2022/12/27 20:22, William Qiu wrote: > Hi, > > This patchset adds initial rudimentary support for the StarFive > designware mobile storage host controller driver. And this driver will > be used in StarFive's VisionFive 2 board. The main purpose of adding > this driver is to accommodate the ultra-high speed mode of eMMC. > > The last patch should be applied after the patchset [1]: > [1] https://lore.kernel.org/all/20221118011714.70877-1-hal.feng@starfivetech.com/ > > Changes since v1: > - Renamed the dt-binding 'starfive,jh7110-sdio.yaml' to 'starfive,jh7110-mmc.yaml'. > - Changed the type of 'starfive,syscon' and modify its description. > - Deleted unused head files like '#include <linux/gpio.h>'. > - Added comment for the 'rise_point' and 'fall_point'. > - Changed the API 'num_caps' to 'common_caps'. > - Changed the node name 'sys_syscon' to 'syscon'. > - Changed the node name 'sdio' to 'mmc'. > > The patch series is based on v6.1-rc5. > > William Qiu (3): > dt-bindings: mmc: Add bindings for StarFive > mmc: starfive: Add sdio/emmc driver support > riscv: dts: starfive: Add mmc node > > .../bindings/mmc/starfive,jh7110-mmc.yaml | 72 +++++++ > MAINTAINERS | 6 + > .../jh7110-starfive-visionfive-v2.dts | 25 +++ > arch/riscv/boot/dts/starfive/jh7110.dtsi | 38 ++++ > drivers/mmc/host/Kconfig | 10 + > drivers/mmc/host/Makefile | 1 + > drivers/mmc/host/dw_mmc-starfive.c | 185 ++++++++++++++++++ > 7 files changed, 337 insertions(+) > create mode 100644 Documentation/devicetree/bindings/mmc/starfive,jh7110-mmc.yaml > create mode 100644 drivers/mmc/host/dw_mmc-starfive.c > > -- > 2.34.1 > Hi Rob/Jaehoon, Could you please help to review and provide comments on this patch series? Thank you in advance. Best regards, William Qiu