Re: [PATCH v3 1/2] dt-binding: mmc: Add mmc yaml file for Sunplus SP7021

From: Ulf Hansson
Date: Fri Feb 11 2022 - 07:53:36 EST


On Thu, 10 Feb 2022 at 09:56, Tony Huang 黃懷厚 <tony.huang@xxxxxxxxxxx> wrote:
>
> Dear Robh:
>
> > Subject: Re: [PATCH v3 1/2] dt-binding: mmc: Add mmc yaml file for Sunplus
> > SP7021
> >
> > On Wed, Feb 09, 2022 at 06:41:06PM +0800, Tony Huang wrote:
> > > Add mmc yaml file for Sunplus SP7021
> > >
> > > Signed-off-by: Tony Huang <tonyhuang.sunplus@xxxxxxxxx>
> > > ---
> > > Changes in v3:
> > > - combine sdcard and eMMC into one driver.
> > >
> > > .../devicetree/bindings/mmc/sunplus-mmc.yaml | 76
> > ++++++++++++++++++++++
> > > MAINTAINERS | 6 ++
> > > 2 files changed, 82 insertions(+)
> > > create mode 100644
> > > Documentation/devicetree/bindings/mmc/sunplus-mmc.yaml
> > >
> > > diff --git a/Documentation/devicetree/bindings/mmc/sunplus-mmc.yaml
> > > b/Documentation/devicetree/bindings/mmc/sunplus-mmc.yaml
> > > new file mode 100644
> > > index 0000000..8f44d13
> > > --- /dev/null
> > > +++ b/Documentation/devicetree/bindings/mmc/sunplus-mmc.yaml
> > > @@ -0,0 +1,76 @@
> > > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) # Copyright
> > > +(C) Sunplus Ltd. Co. 2021 %YAML 1.2
> > > +---
> > > +$id: http://devicetree.org/schemas/mmc/sunplus-mmc.yaml#
> > > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > > +
> > > +title: sunplus MMC controller
> > > +
> > > +allOf:
> > > + - $ref: "mmc-controller.yaml"
> > > +
> > > +maintainers:
> > > + - Tony Huang <tonyhuang.sunplus@xxxxxxxxx>
> > > + - Li-hao Kuo <lhjeff911@xxxxxxxxx>
> > > +
> > > +properties:
> > > + compatible:
> > > + enum:
> > > + - sunplus,sp7021-emmc
> > > + - sunplus,sp7021-sdhci
> >
> > Why are these still different? Looking at the driver, it seems the settings are
> > the same for both. And for clock speeds, we have properties to control them as
> > they can be board specific.
> >
>
> The register base address of emmc and sd card are different.
> eMMC and sdcard are individual hardware settings

When I looked at the previous version of the driver(s) that was
posted, I got the impression that you have some registers in the
controller that are specific for eMMC, SD or SDIO.

So, depending on how the controller is going to be used (for eMMC, SD
or SDIO) it's needs to be configured differently. Right?

If I got this right, I think you can instead use the existing common
DT properties, "no-sd", "no-sdio", "no-mmc" to explain how each
controller is configured.

Does this make sense to you?

Kind regards
Uffe