[PATCH 2/8] dt-bindings: display: mxsfb: Add and fix compatible strings
Stefan Agner
stefan at agner.ch
Mon Aug 24 14:19:23 UTC 2020
On 2020-08-24 01:26, Laurent Pinchart wrote:
> Hi Stefan,
>
> On Fri, Aug 21, 2020 at 04:53:56PM +0200, Stefan Agner wrote:
>> On 2020-08-13 03:29, Laurent Pinchart wrote:
>> > Additional compatible strings have been added in DT source for the
>> > i.MX6SL, i.MX6SLL, i.MX6UL and i.MX7D without updating the bindings.
>> > Most of the upstream DT sources use the fsl,imx28-lcdif compatible
>> > string, which mostly predates the realization that the LCDIF in the
>> > i.MX6 and newer SoCs have extra features compared to the i.MX28.
>>
>> Agreed, we should add fsl,imx6sx-lcdif for those devices.
>>
>> But shouldn't we also keep fsl,imx28-lcdif? From what I can tell, the
>> devices can be driven by a driver only supporting fsl,imx28-lcdif
>> semantics, right?
>
> Isn't it kept by this patch ?
>
>> > Update the bindings to add the missing compatible strings, with the
>> > correct fallback values. This fails to validate some of the upstream DT
>> > sources. Instead of adding the incorrect compatible fallback to the
>> > binding, the sources should be updated separately.
>> >
>> > Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
>> > ---
>> > .../devicetree/bindings/display/mxsfb.yaml | 18 +++++++++++++-----
>> > 1 file changed, 13 insertions(+), 5 deletions(-)
>> >
>> > diff --git a/Documentation/devicetree/bindings/display/mxsfb.yaml
>> > b/Documentation/devicetree/bindings/display/mxsfb.yaml
>> > index 202381ec5bb7..ec6533b1d4a3 100644
>> > --- a/Documentation/devicetree/bindings/display/mxsfb.yaml
>> > +++ b/Documentation/devicetree/bindings/display/mxsfb.yaml
>> > @@ -15,11 +15,19 @@ description: |
>> >
>> > properties:
>> > compatible:
>> > - enum:
>> > - - fsl,imx23-lcdif
>> > - - fsl,imx28-lcdif
>> > - - fsl,imx6sx-lcdif
>> > - - fsl,imx8mq-lcdif
>> > + oneOf:
>> > + - enum:
>> > + - fsl,imx23-lcdif
>> > + - fsl,imx28-lcdif
>
> Here -----------------^
>
> The binding now support any of "fsl,imx23-lcdif", "fsl,imx28-lcdif" or
> "fsl,imx6sx-lcdif" alone, or "fsl,imx6sx-lcdif" with another
> device-specific compatible string. The driver supports the three base
> compatible strings, for V3, V4 and V6 of the IP core.
The binding yes, but I mean the device descriptions in the device tree.
Since the device can be driven by a older kernel which only knows about
the fsl,imx28-lcdif compatible string, we could keep that compatible.
>From what I can tell, we can add both safely, e.g.
compatible = "fsl,imx6sx-lcdif", "fsl,imx28-lcdif"
>From how I read the description this now replaces "fsl,imx28-lcdif" with
"fsl,imx6sx-lcdif" for the devices supporting the additional features,
e.g.:
--- a/arch/arm/boot/dts/imx6sl.dtsi
+++ b/arch/arm/boot/dts/imx6sl.dtsi
@@ -769,7 +769,7 @@ epdc: epdc at 20f4000 {
};
lcdif: lcdif at 20f8000 {
- compatible = "fsl,imx6sl-lcdif", "fsl,imx28-lcdif";
+ compatible = "fsl,imx6sl-lcdif", "fsl,imx6sx-lcdif";
reg = <0x020f8000 0x4000>;
interrupts = <0 39 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks IMX6SL_CLK_LCDIF_PIX>,
--
Stefan
>
>> > + - fsl,imx6sx-lcdif
>> > + - items:
>> > + - enum:
>> > + - fsl,imx6sl-lcdif
>> > + - fsl,imx6sll-lcdif
>> > + - fsl,imx6ul-lcdif
>> > + - fsl,imx7d-lcdif
>> > + - fsl,imx8mq-lcdif
>> > + - const: fsl,imx6sx-lcdif
>> >
>> > reg:
>> > maxItems: 1
More information about the dri-devel
mailing list