Re: [PATCH 25/54] dt-bindings: mmc: Convert MMC Card binding to a schema

Ulf Hansson
2021-08-04T11:27:26Z

On Fri, 23 Jul 2021 at 23:57, Rob Herring <robh@kernel.org> wrote:
>
> On Wed, Jul 21, 2021 at 04:03:55PM +0200, Maxime Ripard wrote:
> > MMC Cards can have an optional Device Tree binding to add
> > non-discoverable properties.
> >
> > Now that we have the DT validation in place, let's convert the device
> > tree bindings for that driver over to a YAML schema.
> >
> > Some of these properties were already described in the MMC controller
> > binding, even though they are not generic and do not apply to any
> > device, so we took the occasion to fix this.
> >
> > Cc: linux-mmc@vger.kernel.org
> > Cc: Ulf Hansson <ulf.hansson@linaro.org>
> > Signed-off-by: Maxime Ripard <maxime@cerno.tech>
> > ---
> > .../devicetree/bindings/mmc/mmc-card.txt | 30 ------------
> > .../devicetree/bindings/mmc/mmc-card.yaml | 48 +++++++++++++++++++
> > .../bindings/mmc/mmc-controller.yaml | 6 ---
> > 3 files changed, 48 insertions(+), 36 deletions(-)
> > delete mode 100644 Documentation/devicetree/bindings/mmc/mmc-card.txt
> > create mode 100644 Documentation/devicetree/bindings/mmc/mmc-card.yaml
> >
> > diff --git a/Documentation/devicetree/bindings/mmc/mmc-card.txt b/Documentation/devicetree/bindings/mmc/mmc-card.txt
> > deleted file mode 100644
> > index 8d2d71758907..000000000000
> > --- a/Documentation/devicetree/bindings/mmc/mmc-card.txt
> > +++ /dev/null
> > @@ -1,30 +0,0 @@
> > -mmc-card / eMMC bindings
> > -------------------------
> > -
> > -This documents describes the devicetree bindings for a mmc-host controller
> > -child node describing a mmc-card / an eMMC, see "Use of Function subnodes"
> > -in mmc.txt
> > -
> > -Required properties:
> > --compatible : Must be "mmc-card"
> > --reg : Must be <0>
> > -
> > -Optional properties:
> > --broken-hpi : Use this to indicate that the mmc-card has a broken hpi
> > - implementation, and that hpi should not be used
> > -
> > -Example:
> > -
> > -&mmc2 {
> > - pinctrl-names = "default";
> > - pinctrl-0 = <&mmc2_pins_a>;
> > - vmmc-supply = <&reg_vcc3v3>;
> > - bus-width = <8>;
> > - non-removable;
> > -
> > - mmccard: mmccard@0 {
> > - reg = <0>;
> > - compatible = "mmc-card";
> > - broken-hpi;
> > - };
> > -};
> > diff --git a/Documentation/devicetree/bindings/mmc/mmc-card.yaml b/Documentation/devicetree/bindings/mmc/mmc-card.yaml
> > new file mode 100644
> > index 000000000000..aefdd8748b72
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/mmc/mmc-card.yaml
> > @@ -0,0 +1,48 @@
> > +# SPDX-License-Identifier: GPL-2.0
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/mmc/mmc-card.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: MMC Card / eMMC Generic Device Tree Bindings
> > +
> > +maintainers:
> > + - Ulf Hansson <ulf.hansson@linaro.org>
> > +
> > +description: |
> > + This documents describes the devicetree bindings for a mmc-host controller
> > + child node describing a mmc-card / an eMMC.
> > +
> > +properties:
> > + compatible:
> > + const: mmc-card
> > +
> > + reg:
> > + const: 0
> > +
> > + broken-hpi:
> > + $ref: /schemas/types.yaml#/definitions/flag
> > + description:
> > + Use this to indicate that the mmc-card has a broken hpi
> > + implementation, and that hpi should not be used.
> > +
> > +required:
> > + - compatible
> > + - reg
> > +
> > +additionalProperties: true
>
> Like what? If there's other properties, then there should really be a
> specific compatible.

I agree.

Maxime, thanks for working on this. I assume you will be sending a new
version that I can pick up?

[...]

Kind regards
Uffe