On Tue, Apr 28, 2020 at 04:12:21PM +0200, Paul Cercueil wrote: > This one patch will need a V2, I messed up with the clocks. Looks fine otherwise. > > -Paul > > > Le dim. 26 avril 2020 à 20:58, Paul Cercueil <paul@xxxxxxxxxxxxxxx> a écrit > : > > Convert the ingenic,lcd.txt to a new ingenic,lcd.yaml file. > > > > In the process, the new ingenic,jz4780-lcd compatible string has been > > added. > > > > Signed-off-by: Paul Cercueil <paul@xxxxxxxxxxxxxxx> > > --- > > .../bindings/display/ingenic,lcd.txt | 45 ------- > > .../bindings/display/ingenic,lcd.yaml | 113 ++++++++++++++++++ > > 2 files changed, 113 insertions(+), 45 deletions(-) > > delete mode 100644 > > Documentation/devicetree/bindings/display/ingenic,lcd.txt > > create mode 100644 > > Documentation/devicetree/bindings/display/ingenic,lcd.yaml > > > > diff --git a/Documentation/devicetree/bindings/display/ingenic,lcd.txt > > b/Documentation/devicetree/bindings/display/ingenic,lcd.txt > > deleted file mode 100644 > > index 01e3261defb6..000000000000 > > --- a/Documentation/devicetree/bindings/display/ingenic,lcd.txt > > +++ /dev/null > > @@ -1,45 +0,0 @@ > > -Ingenic JZ47xx LCD driver > > - > > -Required properties: > > -- compatible: one of: > > - * ingenic,jz4740-lcd > > - * ingenic,jz4725b-lcd > > - * ingenic,jz4770-lcd > > -- reg: LCD registers location and length > > -- clocks: LCD pixclock and device clock specifiers. > > - The device clock is only required on the JZ4740. > > -- clock-names: "lcd_pclk" and "lcd" > > -- interrupts: Specifies the interrupt line the LCD controller is > > connected to. > > - > > -Example: > > - > > -panel { > > - compatible = "sharp,ls020b1dd01d"; > > - > > - backlight = <&backlight>; > > - power-supply = <&vcc>; > > - > > - port { > > - panel_input: endpoint { > > - remote-endpoint = <&panel_output>; > > - }; > > - }; > > -}; > > - > > - > > -lcd: lcd-controller@13050000 { > > - compatible = "ingenic,jz4725b-lcd"; > > - reg = <0x13050000 0x1000>; > > - > > - interrupt-parent = <&intc>; > > - interrupts = <31>; > > - > > - clocks = <&cgu JZ4725B_CLK_LCD>; > > - clock-names = "lcd"; > > - > > - port { > > - panel_output: endpoint { > > - remote-endpoint = <&panel_input>; > > - }; > > - }; > > -}; > > diff --git a/Documentation/devicetree/bindings/display/ingenic,lcd.yaml > > b/Documentation/devicetree/bindings/display/ingenic,lcd.yaml > > new file mode 100644 > > index 000000000000..8e9c851dc7c5 > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/display/ingenic,lcd.yaml > > @@ -0,0 +1,113 @@ > > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/display/ingenic,lcd.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: Ingenic SoCs LCD controller devicetree bindings > > + > > +maintainers: > > + - Paul Cercueil <paul@xxxxxxxxxxxxxxx> > > + > > +properties: > > + $nodename: > > + pattern: "^lcd-controller@[0-9a-f]+$" > > + > > + compatible: > > + enum: > > + - ingenic,jz4740-lcd > > + - ingenic,jz4725b-lcd > > + - ingenic,jz4770-lcd > > + - ingenic,jz4780-lcd > > + > > + reg: > > + maxItems: 1 > > + > > + interrupts: > > + maxItems: 1 > > + > > + clocks: > > + items: > > + - description: Module clock > > + - description: Pixel clock > > + minItems: 1 > > + > > + clock-names: > > + items: > > + - const: lcd > > + - const: lcd_pclk > > + minItems: 1 > > + > > + port: > > + type: object > > + description: > > + A port node with endpoint definitions as defined in > > + Documentation/devicetree/bindings/media/video-interfaces.txt > > + > > +required: > > + - compatible > > + - reg > > + - interrupts > > + - clocks > > + - clock-names > > + > > +if: > > + properties: > > + compatible: > > + contains: > > + enum: > > + - ingenic,jz4740-lcd > > + - ingenic,jz4780-lcd > > +then: > > + properties: > > + clocks: > > + minItems: 2 > > + clock-names: > > + minItems: 2 > > +else: > > + properties: > > + clocks: > > + maxItems: 1 > > + clock-names: > > + maxItems: 1 > > + > > +additionalProperties: false > > + > > +examples: > > + - | > > + #include <dt-bindings/clock/jz4740-cgu.h> > > + lcd-controller@13050000 { > > + compatible = "ingenic,jz4740-lcd"; > > + reg = <0x13050000 0x1000>; > > + > > + interrupt-parent = <&intc>; > > + interrupts = <30>; > > + > > + clocks = <&cgu JZ4740_CLK_LCD>, <&cgu JZ4740_CLK_LCD_PCLK>; > > + clock-names = "lcd", "lcd_pclk"; > > + > > + port { > > + endpoint { > > + remote-endpoint = <&panel_input>; > > + }; > > + }; > > + }; > > + > > + - | > > + #include <dt-bindings/clock/jz4725b-cgu.h> > > + lcd-controller@13050000 { > > + compatible = "ingenic,jz4725b-lcd"; > > + reg = <0x13050000 0x1000>; > > + > > + interrupt-parent = <&intc>; > > + interrupts = <31>; > > + > > + clocks = <&cgu JZ4725B_CLK_LCD>; > > + clock-names = "lcd"; > > + > > + port { > > + endpoint { > > + remote-endpoint = <&panel_input>; > > + }; > > + }; > > + }; > > -- > > 2.26.2 > > > >