[PATCH] dt-bindings: pwm: imx: document i.MX compatibles

Krzysztof Kozlowski krzk at kernel.org
Sat Sep 26 09:41:57 EDT 2020


On Sat, Sep 26, 2020 at 03:22:17PM +0200, Uwe Kleine-König wrote:
> On Fri, Sep 25, 2020 at 11:26:09PM +0200, Krzysztof Kozlowski wrote:
> > Document all ARMv5, ARMv6 and ARMv7 i.MX compatibles to fix dtbs_check
> > warnings like:
> > 
> >   arch/arm/boot/dts/imx6dl-colibri-eval-v3.dt.yaml: pwm at 2080000: compatible:0:
> >     'fsl,imx6q-pwm' is not one of ['fsl,imx8mm-pwm', 'fsl,imx8mn-pwm', 'fsl,imx8mp-pwm', 'fsl,imx8mq-pwm']
> > 
> > Signed-off-by: Krzysztof Kozlowski <krzk at kernel.org>
> > ---
> >  Documentation/devicetree/bindings/pwm/imx-pwm.yaml | 11 +++++++++++
> >  1 file changed, 11 insertions(+)
> > 
> > diff --git a/Documentation/devicetree/bindings/pwm/imx-pwm.yaml b/Documentation/devicetree/bindings/pwm/imx-pwm.yaml
> > index 473863eb67e5..379d693889f6 100644
> > --- a/Documentation/devicetree/bindings/pwm/imx-pwm.yaml
> > +++ b/Documentation/devicetree/bindings/pwm/imx-pwm.yaml
> > @@ -25,6 +25,17 @@ properties:
> >            - fsl,imx27-pwm
> >        - items:
> >            - enum:
> > +              - fsl,imx25-pwm
> 
> The driver actually used fsl,imx27-pwm to bind ...

Yes, most of i.MX drivers use only few compatibles but DTSes and
bindings use multiple of them.  I was convinced during various talks
that the specific compatibles (so "fsl,imx6q-pwm, fsl,imx27-pwm") are
preferred than generic ones (so only "fsl,imx27-pwm"). NXP took it
to the another level creating compatibles for absolutely every flavor of
their CPU. And they mainlined it in DTSes...

The PWM is this crazy examples where, as you say, only two compatibles
are actually used for binding but DTSes uses more.

> 
> Also since v5.1-rc1~38^2~17 the driver is split into pwm-imx27 and
> pwm-imx1. So maybe this file should be renamed to fsl,imx27-pwm.yaml?
> (And we need a volunteer to write fsl,imx1-pwm.yaml.)

I think there is no need, because the binding describes the hardware and
could be supported by multiple drivers. I actually recently merged few
bindings (i.MX 8 clocks, NXP PCA953x/max GPIO expanders).

Best regards,
Krzysztof




More information about the linux-arm-kernel mailing list