Re: [PATCH] dt-bindings: mmc: fsl-imx-esdhc: allow more compatible combinations

From: Krzysztof Kozlowski
Date: Fri Jan 06 2023 - 03:41:16 EST


On 05/01/2023 22:38, Andreas Kemnade wrote:
> Currently make dtbs_check shows lots of errors because imx*.dtsi does
> not use single compatibles but combinations of them.
> Allow all the combinations used there.
>
> Patches fixing the dtsi files according to binding documentation were
> submitted multiple times and are commonly rejected, so relax the rules.
> Example:
> https://lore.kernel.org/linux-devicetree/72e1194e10ccb4f87aed96265114f0963e805092.camel@xxxxxxxxxxxxxx/
>
> Reason: compatibility of new dtbs with old kernels or bootloaders.
>
> This will significantly reduce noise on make dtbs_check.
>
> Signed-off-by: Andreas Kemnade <andreas@xxxxxxxxxxxx>
> ---
> .../bindings/mmc/fsl-imx-esdhc.yaml | 24 +++++++++++++++++++
> 1 file changed, 24 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.yaml b/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.yaml
> index dc6256f04b42..118ebb75f136 100644
> --- a/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.yaml
> +++ b/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.yaml
> @@ -37,6 +37,30 @@ properties:
> - fsl,imx8mm-usdhc
> - fsl,imxrt1050-usdhc
> - nxp,s32g2-usdhc

You must drop the items from enum above. Binding saying:
compatible="A"
or:
compatible="A", "B"

is not correct. Either A is or is not compatible with B.

> + - items:
> + - const: fsl,imx50-esdhc
> + - const: fsl,imx53-esdhc
> + - items:
> + - const: fsl,imx6sl-usdhc
> + - const: fsl,imx6q-usdhc
> + - items:
> + - const: fsl,imx6sll-usdhc
> + - const: fsl,imx6sx-usdhc
> + - items:
> + - const: fsl,imx6sx-usdhc
> + - const: fsl,imx6sl-usdhc
> + - items:
> + - const: fsl,imx6ul-usdhc
> + - const: fsl,imx6sx-usdhc
> + - items:
> + - const: fsl,imx6ull-usdhc
> + - const: fsl,imx6sx-usdhc
> + - items:
> + - const: fsl,imx7d-usdhc
> + - const: fsl,imx6sl-usdhc
> + - items:
> + - const: fsl,imx7ulp-usdhc
> + - const: fsl,imx6sx-usdhc

Half of these should be enum (6ul, 7ulp etc) with fallback.

> - items:
> - enum:
> - fsl,imx8mq-usdhc

Best regards,
Krzysztof