Message ID | 20200426185856.38826-8-paul@crapouillou.net (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [1/8] dt-bindings: clock: Convert ingenic,cgu.txt to YAML | expand |
This one patch will need a V2, I messed up with the clocks. -Paul Le dim. 26 avril 2020 à 20:58, Paul Cercueil <paul@crapouillou.net> 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@crapouillou.net> > --- > .../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@crapouillou.net> > + > +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 >
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@crapouillou.net> 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@crapouillou.net> > > --- > > .../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@crapouillou.net> > > + > > +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 > > > >
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@crapouillou.net> + +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>; + }; + }; + };
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@crapouillou.net> --- .../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