This series converts the common panel bindings to DT schema format. Besides the conversion of common panel properties, a few panel bindings are converted here as well. These are all the ones with references to panel-common.txt or panel-lvds.txt.
I'll apply the series to drm-misc. One patch from v2 already got applied without its dependency.
v3: - Consistently list all used properties and add 'additionalProperties: false'
Rob
Rob Herring (13): dt-bindings: display: Convert common panel bindings to DT schema dt-bindings: display: Convert ampire,am-480272h3tmqw-t01h panel to DT schema dt-bindings: display: Convert armadeus,st0700-adapt panel to DT schema dt-bindings: display: Convert bananapi,s070wv20-ct16 panel to DT schema dt-bindings: display: Convert dlc,dlc0700yzg-1 panel to DT schema dt-bindings: display: Convert pda,91-00156-a0 panel to DT schema dt-bindings: display: Convert raspberrypi,7inch-touchscreen panel to DT schema dt-bindings: display: Convert tfc,s9700rtwv43tr-01b panel to DT schema dt-bindings: display: Convert panel-lvds to DT schema dt-bindings: display: Convert innolux,ee101ia-01 panel to DT schema dt-bindings: display: Convert mitsubishi,aa104xd12 panel to DT schema dt-bindings: display: Convert mitsubishi,aa121td01 panel to DT schema dt-bindings: display: Convert sgd,gktw70sdae4se panel to DT schema
.../panel/ampire,am-480272h3tmqw-t01h.txt | 26 --- .../panel/ampire,am-480272h3tmqw-t01h.yaml | 42 +++++ .../display/panel/arm,versatile-tft-panel.txt | 2 +- .../display/panel/armadeus,st0700-adapt.txt | 9 -- .../display/panel/armadeus,st0700-adapt.yaml | 33 ++++ .../display/panel/bananapi,s070wv20-ct16.txt | 12 -- .../display/panel/bananapi,s070wv20-ct16.yaml | 31 ++++ .../display/panel/dlc,dlc0700yzg-1.txt | 13 -- .../display/panel/dlc,dlc0700yzg-1.yaml | 31 ++++ .../display/panel/innolux,ee101ia-01d.txt | 7 - .../display/panel/innolux,ee101ia-01d.yaml | 31 ++++ .../bindings/display/panel/lvds.yaml | 107 +++++++++++++ .../display/panel/mitsubishi,aa104xd12.txt | 47 ------ .../display/panel/mitsubishi,aa104xd12.yaml | 75 +++++++++ .../display/panel/mitsubishi,aa121td01.txt | 47 ------ .../display/panel/mitsubishi,aa121td01.yaml | 74 +++++++++ .../bindings/display/panel/panel-common.txt | 101 ------------ .../bindings/display/panel/panel-common.yaml | 149 ++++++++++++++++++ .../bindings/display/panel/panel-lvds.txt | 121 -------------- .../bindings/display/panel/panel.txt | 4 - .../display/panel/pda,91-00156-a0.txt | 14 -- .../display/panel/pda,91-00156-a0.yaml | 31 ++++ .../panel/raspberrypi,7inch-touchscreen.txt | 49 ------ .../panel/raspberrypi,7inch-touchscreen.yaml | 71 +++++++++ .../display/panel/sgd,gktw70sdae4se.txt | 41 ----- .../display/panel/sgd,gktw70sdae4se.yaml | 68 ++++++++ .../bindings/display/panel/simple-panel.txt | 29 +--- .../display/panel/tfc,s9700rtwv43tr-01b.txt | 15 -- .../display/panel/tfc,s9700rtwv43tr-01b.yaml | 33 ++++ 29 files changed, 778 insertions(+), 535 deletions(-) delete mode 100644 Documentation/devicetree/bindings/display/panel/ampire,am-480272h3tmqw-t01h.txt create mode 100644 Documentation/devicetree/bindings/display/panel/ampire,am-480272h3tmqw-t01h.yaml delete mode 100644 Documentation/devicetree/bindings/display/panel/armadeus,st0700-adapt.txt create mode 100644 Documentation/devicetree/bindings/display/panel/armadeus,st0700-adapt.yaml delete mode 100644 Documentation/devicetree/bindings/display/panel/bananapi,s070wv20-ct16.txt create mode 100644 Documentation/devicetree/bindings/display/panel/bananapi,s070wv20-ct16.yaml delete mode 100644 Documentation/devicetree/bindings/display/panel/dlc,dlc0700yzg-1.txt create mode 100644 Documentation/devicetree/bindings/display/panel/dlc,dlc0700yzg-1.yaml delete mode 100644 Documentation/devicetree/bindings/display/panel/innolux,ee101ia-01d.txt create mode 100644 Documentation/devicetree/bindings/display/panel/innolux,ee101ia-01d.yaml create mode 100644 Documentation/devicetree/bindings/display/panel/lvds.yaml delete mode 100644 Documentation/devicetree/bindings/display/panel/mitsubishi,aa104xd12.txt create mode 100644 Documentation/devicetree/bindings/display/panel/mitsubishi,aa104xd12.yaml delete mode 100644 Documentation/devicetree/bindings/display/panel/mitsubishi,aa121td01.txt create mode 100644 Documentation/devicetree/bindings/display/panel/mitsubishi,aa121td01.yaml delete mode 100644 Documentation/devicetree/bindings/display/panel/panel-common.txt create mode 100644 Documentation/devicetree/bindings/display/panel/panel-common.yaml delete mode 100644 Documentation/devicetree/bindings/display/panel/panel-lvds.txt delete mode 100644 Documentation/devicetree/bindings/display/panel/panel.txt delete mode 100644 Documentation/devicetree/bindings/display/panel/pda,91-00156-a0.txt create mode 100644 Documentation/devicetree/bindings/display/panel/pda,91-00156-a0.yaml delete mode 100644 Documentation/devicetree/bindings/display/panel/raspberrypi,7inch-touchscreen.txt create mode 100644 Documentation/devicetree/bindings/display/panel/raspberrypi,7inch-touchscreen.yaml delete mode 100644 Documentation/devicetree/bindings/display/panel/sgd,gktw70sdae4se.txt create mode 100644 Documentation/devicetree/bindings/display/panel/sgd,gktw70sdae4se.yaml delete mode 100644 Documentation/devicetree/bindings/display/panel/tfc,s9700rtwv43tr-01b.txt create mode 100644 Documentation/devicetree/bindings/display/panel/tfc,s9700rtwv43tr-01b.yaml
Convert the common panel bindings to DT schema consolidating scattered definitions to a single schema file.
The 'simple-panel' binding just a collection of properties and not a complete binding itself. All of the 'simple-panel' properties are covered by the panel-common.txt binding with the exception of the 'no-hpd' property, so add that to the schema.
As there are lots of references to simple-panel.txt, just keep the file with a reference to common.yaml for now until all the bindings are converted.
Cc: Thierry Reding thierry.reding@gmail.com Cc: Laurent Pinchart laurent.pinchart@ideasonboard.com Cc: dri-devel@lists.freedesktop.org Acked-by: Sam Ravnborg sam@ravnborg.org Reviewed-by: Maxime Ripard maxime.ripard@bootlin.com Reviewed-by: Thierry Reding treding@nvidia.com Signed-off-by: Rob Herring robh@kernel.org --- .../display/panel/arm,versatile-tft-panel.txt | 2 +- .../bindings/display/panel/panel-common.txt | 101 ------------ .../bindings/display/panel/panel-common.yaml | 149 ++++++++++++++++++ .../bindings/display/panel/panel.txt | 4 - .../bindings/display/panel/simple-panel.txt | 29 +--- 5 files changed, 151 insertions(+), 134 deletions(-) delete mode 100644 Documentation/devicetree/bindings/display/panel/panel-common.txt create mode 100644 Documentation/devicetree/bindings/display/panel/panel-common.yaml delete mode 100644 Documentation/devicetree/bindings/display/panel/panel.txt
diff --git a/Documentation/devicetree/bindings/display/panel/arm,versatile-tft-panel.txt b/Documentation/devicetree/bindings/display/panel/arm,versatile-tft-panel.txt index 248141c3c7e3..0601a9e34703 100644 --- a/Documentation/devicetree/bindings/display/panel/arm,versatile-tft-panel.txt +++ b/Documentation/devicetree/bindings/display/panel/arm,versatile-tft-panel.txt @@ -10,7 +10,7 @@ Required properties: - compatible: should be "arm,versatile-tft-panel"
Required subnodes: -- port: see display/panel/panel-common.txt, graph.txt +- port: see display/panel/panel-common.yaml, graph.txt
Example: diff --git a/Documentation/devicetree/bindings/display/panel/panel-common.txt b/Documentation/devicetree/bindings/display/panel/panel-common.txt deleted file mode 100644 index 5d2519af4bb5..000000000000 --- a/Documentation/devicetree/bindings/display/panel/panel-common.txt +++ /dev/null @@ -1,101 +0,0 @@ -Common Properties for Display Panel -=================================== - -This document defines device tree properties common to several classes of -display panels. It doesn't constitue a device tree binding specification by -itself but is meant to be referenced by device tree bindings. - -When referenced from panel device tree bindings the properties defined in this -document are defined as follows. The panel device tree bindings are -responsible for defining whether each property is required or optional. - - -Descriptive Properties ----------------------- - -- width-mm, -- height-mm: The width-mm and height-mm specify the width and height of the - physical area where images are displayed. These properties are expressed in - millimeters and rounded to the closest unit. - -- label: The label property specifies a symbolic name for the panel as a - string suitable for use by humans. It typically contains a name inscribed on - the system (e.g. as an affixed label) or specified in the system's - documentation (e.g. in the user's manual). - - If no such name exists, and unless the property is mandatory according to - device tree bindings, it shall rather be omitted than constructed of - non-descriptive information. For instance an LCD panel in a system that - contains a single panel shall not be labelled "LCD" if that name is not - inscribed on the system or used in a descriptive fashion in system - documentation. - - -Display Timings ---------------- - -- panel-timing: Most display panels are restricted to a single resolution and - require specific display timings. The panel-timing subnode expresses those - timings as specified in the timing subnode section of the display timing - bindings defined in - Documentation/devicetree/bindings/display/panel/display-timing.txt. - - -Connectivity ------------- - -- ports: Panels receive video data through one or multiple connections. While - the nature of those connections is specific to the panel type, the - connectivity is expressed in a standard fashion using ports as specified in - the device graph bindings defined in - Documentation/devicetree/bindings/graph.txt. - -- ddc-i2c-bus: Some panels expose EDID information through an I2C-compatible - bus such as DDC2 or E-DDC. For such panels the ddc-i2c-bus contains a - phandle to the system I2C controller connected to that bus. - - -Control I/Os ------------- - -Many display panels can be controlled through pins driven by GPIOs. The nature -and timing of those control signals are device-specific and left for panel -device tree bindings to specify. The following GPIO specifiers can however be -used for panels that implement compatible control signals. - -- enable-gpios: Specifier for a GPIO connected to the panel enable control - signal. The enable signal is active high and enables operation of the panel. - This property can also be used for panels implementing an active low power - down signal, which is a negated version of the enable signal. Active low - enable signals (or active high power down signals) can be supported by - inverting the GPIO specifier polarity flag. - - Note that the enable signal control panel operation only and must not be - confused with a backlight enable signal. - -- reset-gpios: Specifier for a GPIO coonnected to the panel reset control - signal. The reset signal is active low and resets the panel internal logic - while active. Active high reset signals can be supported by inverting the - GPIO specifier polarity flag. - -Power ------ - -- power-supply: display panels require power to be supplied. While several - panels need more than one power supply with panel-specific constraints - governing the order and timings of the power supplies, in many cases a single - power supply is sufficient, either because the panel has a single power rail, - or because all its power rails can be driven by the same supply. In that case - the power-supply property specifies the supply powering the panel as a phandle - to a regulator. - -Backlight ---------- - -Most display panels include a backlight. Some of them also include a backlight -controller exposed through a control bus such as I2C or DSI. Others expose -backlight control through GPIO, PWM or other signals connected to an external -backlight controller. - -- backlight: For panels whose backlight is controlled by an external backlight - controller, this property contains a phandle that references the controller. diff --git a/Documentation/devicetree/bindings/display/panel/panel-common.yaml b/Documentation/devicetree/bindings/display/panel/panel-common.yaml new file mode 100644 index 000000000000..ef8d8cdfcede --- /dev/null +++ b/Documentation/devicetree/bindings/display/panel/panel-common.yaml @@ -0,0 +1,149 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/display/panel/panel-common.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Common Properties for Display Panels + +maintainers: + - Thierry Reding thierry.reding@gmail.com + - Laurent Pinchart laurent.pinchart+renesas@ideasonboard.com + +description: | + This document defines device tree properties common to several classes of + display panels. It doesn't constitue a device tree binding specification by + itself but is meant to be referenced by device tree bindings. + + When referenced from panel device tree bindings the properties defined in this + document are defined as follows. The panel device tree bindings are + responsible for defining whether each property is required or optional. + +properties: + # Descriptive Properties + width-mm: + description: + Specifies the width of the physical area where images are displayed. This + property is expressed in millimeters and rounded to the closest unit. + + height-mm: + description: + Specifies the height of the physical area where images are displayed. This + property is expressed in millimeters and rounded to the closest unit. + + label: + description: | + The label property specifies a symbolic name for the panel as a + string suitable for use by humans. It typically contains a name inscribed + on the system (e.g. as an affixed label) or specified in the system's + documentation (e.g. in the user's manual). + + If no such name exists, and unless the property is mandatory according to + device tree bindings, it shall rather be omitted than constructed of + non-descriptive information. For instance an LCD panel in a system that + contains a single panel shall not be labelled "LCD" if that name is not + inscribed on the system or used in a descriptive fashion in system + documentation. + + rotation: + description: + Display rotation in degrees counter clockwise (0,90,180,270) + allOf: + - $ref: /schemas/types.yaml#/definitions/uint32 + - enum: [ 0, 90, 180, 270 ] + + # Display Timings + panel-timing: + type: object + description: + Most display panels are restricted to a single resolution and + require specific display timings. The panel-timing subnode expresses those + timings as specified in the timing subnode section of the display timing + bindings defined in + Documentation/devicetree/bindings/display/panel/display-timing.txt. + + # Connectivity + port: + type: object + + ports: + type: object + description: + Panels receive video data through one or multiple connections. While + the nature of those connections is specific to the panel type, the + connectivity is expressed in a standard fashion using ports as specified + in the device graph bindings defined in + Documentation/devicetree/bindings/graph.txt. + + ddc-i2c-bus: + $ref: /schemas/types.yaml#/definitions/phandle + description: + Some panels expose EDID information through an I2C-compatible + bus such as DDC2 or E-DDC. For such panels the ddc-i2c-bus contains a + phandle to the system I2C controller connected to that bus. + + no-hpd: + type: boolean + description: + This panel is supposed to communicate that it's ready via HPD + (hot plug detect) signal, but the signal isn't hooked up so we should + hardcode the max delay from the panel spec when powering up the panel. + + # Control I/Os + + # Many display panels can be controlled through pins driven by GPIOs. The nature + # and timing of those control signals are device-specific and left for panel + # device tree bindings to specify. The following GPIO specifiers can however be + # used for panels that implement compatible control signals. + + enable-gpios: + maxItems: 1 + description: | + Specifier for a GPIO connected to the panel enable control signal. The + enable signal is active high and enables operation of the panel. This + property can also be used for panels implementing an active low power down + signal, which is a negated version of the enable signal. Active low enable + signals (or active high power down signals) can be supported by inverting + the GPIO specifier polarity flag. + + Note that the enable signal control panel operation only and must not be + confused with a backlight enable signal. + + reset-gpios: + maxItems: 1 + description: + Specifier for a GPIO connected to the panel reset control signal. + The reset signal is active low and resets the panel internal logic + while active. Active high reset signals can be supported by inverting the + GPIO specifier polarity flag. + + # Power + power-supply: + description: + Display panels require power to be supplied. While several panels need + more than one power supply with panel-specific constraints governing the + order and timings of the power supplies, in many cases a single power + supply is sufficient, either because the panel has a single power rail, or + because all its power rails can be driven by the same supply. In that case + the power-supply property specifies the supply powering the panel as a + phandle to a regulator. + + # Backlight + + # Most display panels include a backlight. Some of them also include a backlight + # controller exposed through a control bus such as I2C or DSI. Others expose + # backlight control through GPIO, PWM or other signals connected to an external + # backlight controller. + + backlight: + $ref: /schemas/types.yaml#/definitions/phandle + description: + For panels whose backlight is controlled by an external backlight + controller, this property contains a phandle that references the + controller. + +dependencies: + width-mm: [ height-mm ] + height-mm: [ width-mm ] + +... diff --git a/Documentation/devicetree/bindings/display/panel/panel.txt b/Documentation/devicetree/bindings/display/panel/panel.txt deleted file mode 100644 index e2e6867852b8..000000000000 --- a/Documentation/devicetree/bindings/display/panel/panel.txt +++ /dev/null @@ -1,4 +0,0 @@ -Common display properties -------------------------- - -- rotation: Display rotation in degrees counter clockwise (0,90,180,270) diff --git a/Documentation/devicetree/bindings/display/panel/simple-panel.txt b/Documentation/devicetree/bindings/display/panel/simple-panel.txt index b2b872c710f2..e11208fb7da8 100644 --- a/Documentation/devicetree/bindings/display/panel/simple-panel.txt +++ b/Documentation/devicetree/bindings/display/panel/simple-panel.txt @@ -1,28 +1 @@ -Simple display panel -==================== - -panel node ----------- - -Required properties: -- power-supply: See panel-common.txt - -Optional properties: -- ddc-i2c-bus: phandle of an I2C controller used for DDC EDID probing -- enable-gpios: GPIO pin to enable or disable the panel -- backlight: phandle of the backlight device attached to the panel -- no-hpd: This panel is supposed to communicate that it's ready via HPD - (hot plug detect) signal, but the signal isn't hooked up so we should - hardcode the max delay from the panel spec when powering up the panel. - -Example: - - panel: panel { - compatible = "cptt,claa101wb01"; - ddc-i2c-bus = <&panelddc>; - - power-supply = <&vdd_pnl_reg>; - enable-gpios = <&gpio 90 0>; - - backlight = <&backlight>; - }; +See panel-common.yaml in this directory.
Hi Rob,
On Fri, Jul 5, 2019 at 6:46 PM Rob Herring robh@kernel.org wrote:
Convert the common panel bindings to DT schema consolidating scattered definitions to a single schema file.
The 'simple-panel' binding just a collection of properties and not a complete binding itself. All of the 'simple-panel' properties are covered by the panel-common.txt binding with the exception of the 'no-hpd' property, so add that to the schema.
As there are lots of references to simple-panel.txt, just keep the file with a reference to common.yaml for now until all the bindings are converted.
Cc: Thierry Reding thierry.reding@gmail.com Cc: Laurent Pinchart laurent.pinchart@ideasonboard.com Cc: dri-devel@lists.freedesktop.org Acked-by: Sam Ravnborg sam@ravnborg.org Reviewed-by: Maxime Ripard maxime.ripard@bootlin.com Reviewed-by: Thierry Reding treding@nvidia.com Signed-off-by: Rob Herring robh@kernel.org
This is now commit 821a1f7171aeea5e ("dt-bindings: display: Convert common panel bindings to DT schema").
--- /dev/null +++ b/Documentation/devicetree/bindings/display/panel/panel-common.yaml
- backlight:
- $ref: /schemas/types.yaml#/definitions/phandle
- description:
For panels whose backlight is controlled by an external backlight
controller, this property contains a phandle that references the
controller.
This paragraph seems to apply to all nodes named "backlight", causing e.g. (for ARCH=arm mach_shmobile_defconfig) "make dtbs_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/display/panel/panel-common.yaml" to start complaining:
arch/arm/boot/dts/r8a7740-armadillo800eva.dt.yaml: backlight: {'compatible': ['pwm-backlight'], 'pwms': [[40, 2, 33333, 1]], 'brightness-levels': [[0, 1, 2, 4, 8, 16, 32, 64, 128, 255]], 'default-brightness-level': [[9]], 'pinctrl-0': [[41]], 'pinctrl-names': ['default'], 'power-supply': [[42]], 'enable-gpios': [[15, 61, 0]]} is not of type 'array' arch/arm/boot/dts/r8a7740-armadillo800eva.dt.yaml: backlight: {'groups': ['tpu0_to2_1'], 'function': ['tpu0'], 'phandle': [[41]]} is not of type 'array'
Do you know what's wrong?
Thanks!
Gr{oetje,eeting}s,
Geert
On Fri, Oct 25, 2019 at 8:07 AM Geert Uytterhoeven geert@linux-m68k.org wrote:
Hi Rob,
On Fri, Jul 5, 2019 at 6:46 PM Rob Herring robh@kernel.org wrote:
Convert the common panel bindings to DT schema consolidating scattered definitions to a single schema file.
The 'simple-panel' binding just a collection of properties and not a complete binding itself. All of the 'simple-panel' properties are covered by the panel-common.txt binding with the exception of the 'no-hpd' property, so add that to the schema.
As there are lots of references to simple-panel.txt, just keep the file with a reference to common.yaml for now until all the bindings are converted.
Cc: Thierry Reding thierry.reding@gmail.com Cc: Laurent Pinchart laurent.pinchart@ideasonboard.com Cc: dri-devel@lists.freedesktop.org Acked-by: Sam Ravnborg sam@ravnborg.org Reviewed-by: Maxime Ripard maxime.ripard@bootlin.com Reviewed-by: Thierry Reding treding@nvidia.com Signed-off-by: Rob Herring robh@kernel.org
This is now commit 821a1f7171aeea5e ("dt-bindings: display: Convert common panel bindings to DT schema").
--- /dev/null +++ b/Documentation/devicetree/bindings/display/panel/panel-common.yaml
- backlight:
- $ref: /schemas/types.yaml#/definitions/phandle
- description:
For panels whose backlight is controlled by an external backlight
controller, this property contains a phandle that references the
controller.
This paragraph seems to apply to all nodes named "backlight", causing e.g. (for ARCH=arm mach_shmobile_defconfig) "make dtbs_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/display/panel/panel-common.yaml" to start complaining:
arch/arm/boot/dts/r8a7740-armadillo800eva.dt.yaml: backlight:
{'compatible': ['pwm-backlight'], 'pwms': [[40, 2, 33333, 1]], 'brightness-levels': [[0, 1, 2, 4, 8, 16, 32, 64, 128, 255]], 'default-brightness-level': [[9]], 'pinctrl-0': [[41]], 'pinctrl-names': ['default'], 'power-supply': [[42]], 'enable-gpios': [[15, 61, 0]]} is not of type 'array' arch/arm/boot/dts/r8a7740-armadillo800eva.dt.yaml: backlight: {'groups': ['tpu0_to2_1'], 'function': ['tpu0'], 'phandle': [[41]]} is not of type 'array'
Do you know what's wrong?
I'm not seeing that. What does .../bindings/processed-schema.yaml look like?
Rob
Hi Rob,
On Fri, Oct 25, 2019 at 4:25 PM Rob Herring robh@kernel.org wrote:
On Fri, Oct 25, 2019 at 8:07 AM Geert Uytterhoeven geert@linux-m68k.org wrote:
On Fri, Jul 5, 2019 at 6:46 PM Rob Herring robh@kernel.org wrote:
Convert the common panel bindings to DT schema consolidating scattered definitions to a single schema file.
The 'simple-panel' binding just a collection of properties and not a complete binding itself. All of the 'simple-panel' properties are covered by the panel-common.txt binding with the exception of the 'no-hpd' property, so add that to the schema.
As there are lots of references to simple-panel.txt, just keep the file with a reference to common.yaml for now until all the bindings are converted.
Cc: Thierry Reding thierry.reding@gmail.com Cc: Laurent Pinchart laurent.pinchart@ideasonboard.com Cc: dri-devel@lists.freedesktop.org Acked-by: Sam Ravnborg sam@ravnborg.org Reviewed-by: Maxime Ripard maxime.ripard@bootlin.com Reviewed-by: Thierry Reding treding@nvidia.com Signed-off-by: Rob Herring robh@kernel.org
This is now commit 821a1f7171aeea5e ("dt-bindings: display: Convert common panel bindings to DT schema").
--- /dev/null +++ b/Documentation/devicetree/bindings/display/panel/panel-common.yaml
- backlight:
- $ref: /schemas/types.yaml#/definitions/phandle
- description:
For panels whose backlight is controlled by an external backlight
controller, this property contains a phandle that references the
controller.
This paragraph seems to apply to all nodes named "backlight", causing e.g. (for ARCH=arm mach_shmobile_defconfig) "make dtbs_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/display/panel/panel-common.yaml" to start complaining:
arch/arm/boot/dts/r8a7740-armadillo800eva.dt.yaml: backlight:
{'compatible': ['pwm-backlight'], 'pwms': [[40, 2, 33333, 1]], 'brightness-levels': [[0, 1, 2, 4, 8, 16, 32, 64, 128, 255]], 'default-brightness-level': [[9]], 'pinctrl-0': [[41]], 'pinctrl-names': ['default'], 'power-supply': [[42]], 'enable-gpios': [[15, 61, 0]]} is not of type 'array' arch/arm/boot/dts/r8a7740-armadillo800eva.dt.yaml: backlight: {'groups': ['tpu0_to2_1'], 'function': ['tpu0'], 'phandle': [[41]]} is not of type 'array'
Do you know what's wrong?
I'm not seeing that. What does .../bindings/processed-schema.yaml look like?
I see it with both next-20191015 and v5.4-rc4.
- $filename: /scratch/geert/linux/linux-next/Documentation/devicetree/bindings/display/panel/panel-common.yaml $id: http://devicetree.org/schemas/display/panel/panel-common.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# dependencies: height-mm: [width-mm] width-mm: [height-mm] patternProperties: {'pinctrl-[0-9]+': true} properties: $nodename: true backlight: {$ref: /schemas/types.yaml#/definitions/phandle} ddc-i2c-bus: {$ref: /schemas/types.yaml#/definitions/phandle} enable-gpios: {maxItems: 1, minItems: 1} height-mm: {} label: {} no-hpd: {type: boolean} panel-timing: {type: object} phandle: true pinctrl-names: true port: {type: object} ports: {type: object} power-supply: {} reset-gpios: {maxItems: 1, minItems: 1} rotation: allOf: - {$ref: /schemas/types.yaml#/definitions/uint32} - additionalItems: false items: additionalItems: false items: enum: [0, 90, 180, 270] maxItems: 1 minItems: 1 type: array maxItems: 1 minItems: 1 type: array status: true width-mm: {} select: properties: {$nodename: true} required: [$nodename] title: Common Properties for Display Panels
Gr{oetje,eeting}s,
Geert
On Fri, Oct 25, 2019 at 9:39 AM Geert Uytterhoeven geert@linux-m68k.org wrote:
Hi Rob,
On Fri, Oct 25, 2019 at 4:25 PM Rob Herring robh@kernel.org wrote:
On Fri, Oct 25, 2019 at 8:07 AM Geert Uytterhoeven geert@linux-m68k.org wrote:
On Fri, Jul 5, 2019 at 6:46 PM Rob Herring robh@kernel.org wrote:
Convert the common panel bindings to DT schema consolidating scattered definitions to a single schema file.
The 'simple-panel' binding just a collection of properties and not a complete binding itself. All of the 'simple-panel' properties are covered by the panel-common.txt binding with the exception of the 'no-hpd' property, so add that to the schema.
As there are lots of references to simple-panel.txt, just keep the file with a reference to common.yaml for now until all the bindings are converted.
Cc: Thierry Reding thierry.reding@gmail.com Cc: Laurent Pinchart laurent.pinchart@ideasonboard.com Cc: dri-devel@lists.freedesktop.org Acked-by: Sam Ravnborg sam@ravnborg.org Reviewed-by: Maxime Ripard maxime.ripard@bootlin.com Reviewed-by: Thierry Reding treding@nvidia.com Signed-off-by: Rob Herring robh@kernel.org
This is now commit 821a1f7171aeea5e ("dt-bindings: display: Convert common panel bindings to DT schema").
--- /dev/null +++ b/Documentation/devicetree/bindings/display/panel/panel-common.yaml
- backlight:
- $ref: /schemas/types.yaml#/definitions/phandle
- description:
For panels whose backlight is controlled by an external backlight
controller, this property contains a phandle that references the
controller.
This paragraph seems to apply to all nodes named "backlight", causing e.g. (for ARCH=arm mach_shmobile_defconfig) "make dtbs_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/display/panel/panel-common.yaml" to start complaining:
arch/arm/boot/dts/r8a7740-armadillo800eva.dt.yaml: backlight:
{'compatible': ['pwm-backlight'], 'pwms': [[40, 2, 33333, 1]], 'brightness-levels': [[0, 1, 2, 4, 8, 16, 32, 64, 128, 255]], 'default-brightness-level': [[9]], 'pinctrl-0': [[41]], 'pinctrl-names': ['default'], 'power-supply': [[42]], 'enable-gpios': [[15, 61, 0]]} is not of type 'array' arch/arm/boot/dts/r8a7740-armadillo800eva.dt.yaml: backlight: {'groups': ['tpu0_to2_1'], 'function': ['tpu0'], 'phandle': [[41]]} is not of type 'array'
Do you know what's wrong?
I'm not seeing that. What does .../bindings/processed-schema.yaml look like?
I see it with both next-20191015 and v5.4-rc4.
- $filename: /scratch/geert/linux/linux-next/Documentation/devicetree/bindings/display/panel/panel-common.yaml $id: http://devicetree.org/schemas/display/panel/panel-common.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# dependencies: height-mm: [width-mm] width-mm: [height-mm] patternProperties: {'pinctrl-[0-9]+': true} properties: $nodename: true backlight: {$ref: /schemas/types.yaml#/definitions/phandle} ddc-i2c-bus: {$ref: /schemas/types.yaml#/definitions/phandle} enable-gpios: {maxItems: 1, minItems: 1} height-mm: {} label: {} no-hpd: {type: boolean} panel-timing: {type: object} phandle: true pinctrl-names: true port: {type: object} ports: {type: object} power-supply: {} reset-gpios: {maxItems: 1, minItems: 1} rotation: allOf: - {$ref: /schemas/types.yaml#/definitions/uint32} - additionalItems: false items: additionalItems: false items: enum: [0, 90, 180, 270] maxItems: 1 minItems: 1 type: array maxItems: 1 minItems: 1 type: array status: true width-mm: {} select: properties: {$nodename: true} required: [$nodename]
The problem is this causing the schema to be applied to every node. Update dtschema repo. This was fixed some time ago.
Rob
Convert the ampire,am-480272h3tmqw-t01h panel binding to DT schema.
Cc: Yannick Fertre yannick.fertre@st.com Cc: Thierry Reding thierry.reding@gmail.com Cc: Sam Ravnborg sam@ravnborg.org Cc: Laurent Pinchart laurent.pinchart@ideasonboard.com Cc: dri-devel@lists.freedesktop.org Reviewed-by: Maxime Ripard maxime.ripard@bootlin.com Acked-by: Thierry Reding treding@nvidia.com Signed-off-by: Rob Herring robh@kernel.org --- .../panel/ampire,am-480272h3tmqw-t01h.txt | 26 ------------ .../panel/ampire,am-480272h3tmqw-t01h.yaml | 42 +++++++++++++++++++ 2 files changed, 42 insertions(+), 26 deletions(-) delete mode 100644 Documentation/devicetree/bindings/display/panel/ampire,am-480272h3tmqw-t01h.txt create mode 100644 Documentation/devicetree/bindings/display/panel/ampire,am-480272h3tmqw-t01h.yaml
diff --git a/Documentation/devicetree/bindings/display/panel/ampire,am-480272h3tmqw-t01h.txt b/Documentation/devicetree/bindings/display/panel/ampire,am-480272h3tmqw-t01h.txt deleted file mode 100644 index 6812280cb109..000000000000 --- a/Documentation/devicetree/bindings/display/panel/ampire,am-480272h3tmqw-t01h.txt +++ /dev/null @@ -1,26 +0,0 @@ -Ampire AM-480272H3TMQW-T01H 4.3" WQVGA TFT LCD panel - -This binding is compatible with the simple-panel binding, which is specified -in simple-panel.txt in this directory. - -Required properties: -- compatible: should be "ampire,am-480272h3tmqw-t01h" - -Optional properties: -- power-supply: regulator to provide the supply voltage -- enable-gpios: GPIO pin to enable or disable the panel -- backlight: phandle of the backlight device attached to the panel - -Optional nodes: -- Video port for RGB input. - -Example: - panel_rgb: panel-rgb { - compatible = "ampire,am-480272h3tmqw-t01h"; - enable-gpios = <&gpioa 8 1>; - port { - panel_in_rgb: endpoint { - remote-endpoint = <&controller_out_rgb>; - }; - }; - }; diff --git a/Documentation/devicetree/bindings/display/panel/ampire,am-480272h3tmqw-t01h.yaml b/Documentation/devicetree/bindings/display/panel/ampire,am-480272h3tmqw-t01h.yaml new file mode 100644 index 000000000000..c6e33e7f36d0 --- /dev/null +++ b/Documentation/devicetree/bindings/display/panel/ampire,am-480272h3tmqw-t01h.yaml @@ -0,0 +1,42 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/display/panel/ampire,am-480272h3tmqw-t01h.yaml... +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Ampire AM-480272H3TMQW-T01H 4.3" WQVGA TFT LCD panel + +maintainers: + - Yannick Fertre yannick.fertre@st.com + - Thierry Reding treding@nvidia.com + +allOf: + - $ref: panel-common.yaml# + +properties: + compatible: + const: ampire,am-480272h3tmqw-t01h + + power-supply: true + enable-gpios: true + backlight: true + port: true + +required: + - compatible + +additionalProperties: false + +examples: + - | + panel_rgb: panel { + compatible = "ampire,am-480272h3tmqw-t01h"; + enable-gpios = <&gpioa 8 1>; + port { + panel_in_rgb: endpoint { + remote-endpoint = <&controller_out_rgb>; + }; + }; + }; + +...
Convert the armadeus,st0700-adapt panel binding to DT schema.
Cc: Thierry Reding thierry.reding@gmail.com Cc: Sam Ravnborg sam@ravnborg.org Cc: Laurent Pinchart laurent.pinchart@ideasonboard.com Cc: dri-devel@lists.freedesktop.org Reviewed-by: Maxime Ripard maxime.ripard@bootlin.com Signed-off-by: Rob Herring robh@kernel.org --- .../display/panel/armadeus,st0700-adapt.txt | 9 ----- .../display/panel/armadeus,st0700-adapt.yaml | 33 +++++++++++++++++++ 2 files changed, 33 insertions(+), 9 deletions(-) delete mode 100644 Documentation/devicetree/bindings/display/panel/armadeus,st0700-adapt.txt create mode 100644 Documentation/devicetree/bindings/display/panel/armadeus,st0700-adapt.yaml
diff --git a/Documentation/devicetree/bindings/display/panel/armadeus,st0700-adapt.txt b/Documentation/devicetree/bindings/display/panel/armadeus,st0700-adapt.txt deleted file mode 100644 index a30d63db3c8f..000000000000 --- a/Documentation/devicetree/bindings/display/panel/armadeus,st0700-adapt.txt +++ /dev/null @@ -1,9 +0,0 @@ -Armadeus ST0700 Adapt. A Santek ST0700I5Y-RBSLW 7.0" WVGA (800x480) TFT with -an adapter board. - -Required properties: -- compatible: "armadeus,st0700-adapt" -- power-supply: see panel-common.txt - -Optional properties: -- backlight: see panel-common.txt diff --git a/Documentation/devicetree/bindings/display/panel/armadeus,st0700-adapt.yaml b/Documentation/devicetree/bindings/display/panel/armadeus,st0700-adapt.yaml new file mode 100644 index 000000000000..a6ade47066b3 --- /dev/null +++ b/Documentation/devicetree/bindings/display/panel/armadeus,st0700-adapt.yaml @@ -0,0 +1,33 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/display/panel/armadeus,st0700-adapt.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Armadeus ST0700 Adapter + +description: + A Santek ST0700I5Y-RBSLW 7.0" WVGA (800x480) TFT with an adapter board. + +maintainers: + - '"Sébastien Szymanski" sebastien.szymanski@armadeus.com' + - Thierry Reding thierry.reding@gmail.com + +allOf: + - $ref: panel-common.yaml# + +properties: + compatible: + const: armadeus,st0700-adapt + + power-supply: true + backlight: true + port: true + +additionalProperties: false + +required: + - compatible + - power-supply + +...
Convert the bananapi,s070wv20-ct16 panel binding to DT schema.
Cc: Thierry Reding thierry.reding@gmail.com Cc: Sam Ravnborg sam@ravnborg.org Cc: Maxime Ripard maxime.ripard@bootlin.com Cc: Laurent Pinchart laurent.pinchart@ideasonboard.com Cc: dri-devel@lists.freedesktop.org Reviewed-by: Maxime Ripard maxime.ripard@bootlin.com Signed-off-by: Rob Herring robh@kernel.org --- .../display/panel/bananapi,s070wv20-ct16.txt | 12 ------- .../display/panel/bananapi,s070wv20-ct16.yaml | 31 +++++++++++++++++++ 2 files changed, 31 insertions(+), 12 deletions(-) delete mode 100644 Documentation/devicetree/bindings/display/panel/bananapi,s070wv20-ct16.txt create mode 100644 Documentation/devicetree/bindings/display/panel/bananapi,s070wv20-ct16.yaml
diff --git a/Documentation/devicetree/bindings/display/panel/bananapi,s070wv20-ct16.txt b/Documentation/devicetree/bindings/display/panel/bananapi,s070wv20-ct16.txt deleted file mode 100644 index 35bc0c839f49..000000000000 --- a/Documentation/devicetree/bindings/display/panel/bananapi,s070wv20-ct16.txt +++ /dev/null @@ -1,12 +0,0 @@ -Banana Pi 7" (S070WV20-CT16) TFT LCD Panel - -Required properties: -- compatible: should be "bananapi,s070wv20-ct16" -- power-supply: see ./panel-common.txt - -Optional properties: -- enable-gpios: see ./simple-panel.txt -- backlight: see ./simple-panel.txt - -This binding is compatible with the simple-panel binding, which is specified -in ./simple-panel.txt. diff --git a/Documentation/devicetree/bindings/display/panel/bananapi,s070wv20-ct16.yaml b/Documentation/devicetree/bindings/display/panel/bananapi,s070wv20-ct16.yaml new file mode 100644 index 000000000000..bbf127fb28f7 --- /dev/null +++ b/Documentation/devicetree/bindings/display/panel/bananapi,s070wv20-ct16.yaml @@ -0,0 +1,31 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/display/panel/bananapi,s070wv20-ct16.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Banana Pi 7" (S070WV20-CT16) TFT LCD Panel + +maintainers: + - Chen-Yu Tsai wens@csie.org + - Thierry Reding thierry.reding@gmail.com + +allOf: + - $ref: panel-common.yaml# + +properties: + compatible: + const: bananapi,s070wv20-ct16 + + power-supply: true + backlight: true + enable-gpios: true + port: true + +additionalProperties: false + +required: + - compatible + - power-supply + +...
Convert the dlc,dlc0700yzg-1 panel binding to DT schema.
Cc: Philipp Zabel p.zabel@pengutronix.de Cc: Thierry Reding thierry.reding@gmail.com Cc: Sam Ravnborg sam@ravnborg.org Cc: Laurent Pinchart laurent.pinchart@ideasonboard.com Cc: dri-devel@lists.freedesktop.org Reviewed-by: Maxime Ripard maxime.ripard@bootlin.com Signed-off-by: Rob Herring robh@kernel.org --- .../display/panel/dlc,dlc0700yzg-1.txt | 13 -------- .../display/panel/dlc,dlc0700yzg-1.yaml | 31 +++++++++++++++++++ 2 files changed, 31 insertions(+), 13 deletions(-) delete mode 100644 Documentation/devicetree/bindings/display/panel/dlc,dlc0700yzg-1.txt create mode 100644 Documentation/devicetree/bindings/display/panel/dlc,dlc0700yzg-1.yaml
diff --git a/Documentation/devicetree/bindings/display/panel/dlc,dlc0700yzg-1.txt b/Documentation/devicetree/bindings/display/panel/dlc,dlc0700yzg-1.txt deleted file mode 100644 index bf06bb025b08..000000000000 --- a/Documentation/devicetree/bindings/display/panel/dlc,dlc0700yzg-1.txt +++ /dev/null @@ -1,13 +0,0 @@ -DLC Display Co. DLC0700YZG-1 7.0" WSVGA TFT LCD panel - -Required properties: -- compatible: should be "dlc,dlc0700yzg-1" -- power-supply: See simple-panel.txt - -Optional properties: -- reset-gpios: See panel-common.txt -- enable-gpios: See simple-panel.txt -- backlight: See simple-panel.txt - -This binding is compatible with the simple-panel binding, which is specified -in simple-panel.txt in this directory. diff --git a/Documentation/devicetree/bindings/display/panel/dlc,dlc0700yzg-1.yaml b/Documentation/devicetree/bindings/display/panel/dlc,dlc0700yzg-1.yaml new file mode 100644 index 000000000000..287e2feb6533 --- /dev/null +++ b/Documentation/devicetree/bindings/display/panel/dlc,dlc0700yzg-1.yaml @@ -0,0 +1,31 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/display/panel/dlc,dlc0700yzg-1.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: DLC Display Co. DLC0700YZG-1 7.0" WSVGA TFT LCD panel + +maintainers: + - Philipp Zabel p.zabel@pengutronix.de + - Thierry Reding thierry.reding@gmail.com + +allOf: + - $ref: panel-common.yaml# + +properties: + compatible: + const: dlc,dlc0700yzg-1 + + reset-gpios: true + enable-gpios: true + backlight: true + port: true + +additionalProperties: false + +required: + - compatible + - power-supply + +...
Convert the pda,91-00156-a0 panel binding to DT schema.
Cc: Thierry Reding thierry.reding@gmail.com Cc: Sam Ravnborg sam@ravnborg.org Cc: Laurent Pinchart laurent.pinchart@ideasonboard.com Cc: dri-devel@lists.freedesktop.org Reviewed-by: Maxime Ripard maxime.ripard@bootlin.com Signed-off-by: Rob Herring robh@kernel.org --- .../display/panel/pda,91-00156-a0.txt | 14 --------- .../display/panel/pda,91-00156-a0.yaml | 31 +++++++++++++++++++ 2 files changed, 31 insertions(+), 14 deletions(-) delete mode 100644 Documentation/devicetree/bindings/display/panel/pda,91-00156-a0.txt create mode 100644 Documentation/devicetree/bindings/display/panel/pda,91-00156-a0.yaml
diff --git a/Documentation/devicetree/bindings/display/panel/pda,91-00156-a0.txt b/Documentation/devicetree/bindings/display/panel/pda,91-00156-a0.txt deleted file mode 100644 index 1639fb17a9f0..000000000000 --- a/Documentation/devicetree/bindings/display/panel/pda,91-00156-a0.txt +++ /dev/null @@ -1,14 +0,0 @@ -PDA 91-00156-A0 5.0" WVGA TFT LCD panel - -Required properties: -- compatible: should be "pda,91-00156-a0" -- power-supply: this panel requires a single power supply. A phandle to a -regulator needs to be specified here. Compatible with panel-common binding which -is specified in the panel-common.txt in this directory. -- backlight: this panel's backlight is controlled by an external backlight -controller. A phandle to this controller needs to be specified here. -Compatible with panel-common binding which is specified in the panel-common.txt -in this directory. - -This binding is compatible with the simple-panel binding, which is specified -in simple-panel.txt in this directory. diff --git a/Documentation/devicetree/bindings/display/panel/pda,91-00156-a0.yaml b/Documentation/devicetree/bindings/display/panel/pda,91-00156-a0.yaml new file mode 100644 index 000000000000..ccd3623b4955 --- /dev/null +++ b/Documentation/devicetree/bindings/display/panel/pda,91-00156-a0.yaml @@ -0,0 +1,31 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/display/panel/pda,91-00156-a0.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: PDA 91-00156-A0 5.0" WVGA TFT LCD panel + +maintainers: + - Cristian Birsan cristian.birsan@microchip.com + - Thierry Reding thierry.reding@gmail.com + +allOf: + - $ref: panel-common.yaml# + +properties: + compatible: + const: pda,91-00156-a0 + + power-supply: true + backlight: true + port: true + +additionalProperties: false + +required: + - compatible + - power-supply + - backlight + +...
Convert the raspberrypi,7inch-touchscreen panel binding to DT schema.
Cc: Eric Anholt eric@anholt.net Cc: Thierry Reding thierry.reding@gmail.com Cc: Sam Ravnborg sam@ravnborg.org Cc: Laurent Pinchart laurent.pinchart@ideasonboard.com Cc: dri-devel@lists.freedesktop.org Reviewed-by: Maxime Ripard maxime.ripard@bootlin.com Signed-off-by: Rob Herring robh@kernel.org --- .../panel/raspberrypi,7inch-touchscreen.txt | 49 ------------- .../panel/raspberrypi,7inch-touchscreen.yaml | 71 +++++++++++++++++++ 2 files changed, 71 insertions(+), 49 deletions(-) delete mode 100644 Documentation/devicetree/bindings/display/panel/raspberrypi,7inch-touchscreen.txt create mode 100644 Documentation/devicetree/bindings/display/panel/raspberrypi,7inch-touchscreen.yaml
diff --git a/Documentation/devicetree/bindings/display/panel/raspberrypi,7inch-touchscreen.txt b/Documentation/devicetree/bindings/display/panel/raspberrypi,7inch-touchscreen.txt deleted file mode 100644 index e9e19c059260..000000000000 --- a/Documentation/devicetree/bindings/display/panel/raspberrypi,7inch-touchscreen.txt +++ /dev/null @@ -1,49 +0,0 @@ -This binding covers the official 7" (800x480) Raspberry Pi touchscreen -panel. - -This DSI panel contains: - -- TC358762 DSI->DPI bridge -- Atmel microcontroller on I2C for power sequencing the DSI bridge and - controlling backlight -- Touchscreen controller on I2C for touch input - -and this binding covers the DSI display parts but not its touch input. - -Required properties: -- compatible: Must be "raspberrypi,7inch-touchscreen-panel" -- reg: Must be "45" -- port: See panel-common.txt - -Example: - -dsi1: dsi@7e700000 { - #address-cells = <1>; - #size-cells = <0>; - <...> - - port { - dsi_out_port: endpoint { - remote-endpoint = <&panel_dsi_port>; - }; - }; -}; - -i2c_dsi: i2c { - compatible = "i2c-gpio"; - #address-cells = <1>; - #size-cells = <0>; - gpios = <&gpio 28 0 - &gpio 29 0>; - - lcd@45 { - compatible = "raspberrypi,7inch-touchscreen-panel"; - reg = <0x45>; - - port { - panel_dsi_port: endpoint { - remote-endpoint = <&dsi_out_port>; - }; - }; - }; -}; diff --git a/Documentation/devicetree/bindings/display/panel/raspberrypi,7inch-touchscreen.yaml b/Documentation/devicetree/bindings/display/panel/raspberrypi,7inch-touchscreen.yaml new file mode 100644 index 000000000000..22a083f7bc8e --- /dev/null +++ b/Documentation/devicetree/bindings/display/panel/raspberrypi,7inch-touchscreen.yaml @@ -0,0 +1,71 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/display/panel/raspberrypi,7inch-touchscreen.ya... +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: The official 7" (800x480) Raspberry Pi touchscreen + +maintainers: + - Eric Anholt eric@anholt.net + - Thierry Reding thierry.reding@gmail.com + +description: |+ + This DSI panel contains: + + - TC358762 DSI->DPI bridge + - Atmel microcontroller on I2C for power sequencing the DSI bridge and + controlling backlight + - Touchscreen controller on I2C for touch input + + and this binding covers the DSI display parts but not its touch input. + +properties: + compatible: + const: raspberrypi,7inch-touchscreen-panel + + reg: + const: 0x45 + + port: true + +required: + - compatible + - reg + - port + +additionalProperties: false + +examples: + - |+ + dsi1: dsi { + #address-cells = <1>; + #size-cells = <0>; + + port { + dsi_out_port: endpoint { + remote-endpoint = <&panel_dsi_port>; + }; + }; + }; + + i2c_dsi: i2c { + compatible = "i2c-gpio"; + #address-cells = <1>; + #size-cells = <0>; + scl-gpios = <&gpio 28 0>; + sda-gpios = <&gpio 29 0>; + + lcd@45 { + compatible = "raspberrypi,7inch-touchscreen-panel"; + reg = <0x45>; + + port { + panel_dsi_port: endpoint { + remote-endpoint = <&dsi_out_port>; + }; + }; + }; + }; + +...
Convert the tfc,s9700rtwv43tr-01b panel binding to DT schema.
Cc: Heiko Stuebner heiko.stuebner@bq.com Cc: Thierry Reding thierry.reding@gmail.com Cc: Sam Ravnborg sam@ravnborg.org Cc: Laurent Pinchart laurent.pinchart@ideasonboard.com Cc: dri-devel@lists.freedesktop.org Reviewed-by: Maxime Ripard maxime.ripard@bootlin.com Signed-off-by: Rob Herring robh@kernel.org --- .../display/panel/tfc,s9700rtwv43tr-01b.txt | 15 --------- .../display/panel/tfc,s9700rtwv43tr-01b.yaml | 33 +++++++++++++++++++ 2 files changed, 33 insertions(+), 15 deletions(-) delete mode 100644 Documentation/devicetree/bindings/display/panel/tfc,s9700rtwv43tr-01b.txt create mode 100644 Documentation/devicetree/bindings/display/panel/tfc,s9700rtwv43tr-01b.yaml
diff --git a/Documentation/devicetree/bindings/display/panel/tfc,s9700rtwv43tr-01b.txt b/Documentation/devicetree/bindings/display/panel/tfc,s9700rtwv43tr-01b.txt deleted file mode 100644 index dfb572f085eb..000000000000 --- a/Documentation/devicetree/bindings/display/panel/tfc,s9700rtwv43tr-01b.txt +++ /dev/null @@ -1,15 +0,0 @@ -TFC S9700RTWV43TR-01B 7" Three Five Corp 800x480 LCD panel with -resistive touch - -The panel is found on TI AM335x-evm. - -Required properties: -- compatible: should be "tfc,s9700rtwv43tr-01b" -- power-supply: See panel-common.txt - -Optional properties: -- enable-gpios: GPIO pin to enable or disable the panel, if there is one -- backlight: phandle of the backlight device attached to the panel - -This binding is compatible with the simple-panel binding, which is specified -in simple-panel.txt in this directory. diff --git a/Documentation/devicetree/bindings/display/panel/tfc,s9700rtwv43tr-01b.yaml b/Documentation/devicetree/bindings/display/panel/tfc,s9700rtwv43tr-01b.yaml new file mode 100644 index 000000000000..9e5994417c12 --- /dev/null +++ b/Documentation/devicetree/bindings/display/panel/tfc,s9700rtwv43tr-01b.yaml @@ -0,0 +1,33 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/display/panel/tfc,s9700rtwv43tr-01b.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: TFC S9700RTWV43TR-01B 7" Three Five Corp 800x480 LCD panel with resistive touch + +maintainers: + - Jyri Sarha jsarha@ti.com + - Thierry Reding thierry.reding@gmail.com + +description: |+ + The panel is found on TI AM335x-evm. + +allOf: + - $ref: panel-common.yaml# + +properties: + compatible: + const: tfc,s9700rtwv43tr-01b + + enable-gpios: true + backlight: true + port: true + +additionalProperties: false + +required: + - compatible + - power-supply + +...
Convert the panel-lvds binding to use DT schema. The panel-lvds schema inherits from the panel-common.yaml schema and specific LVDS panel bindings should inherit from this schema.
Cc: Thierry Reding thierry.reding@gmail.com Cc: Sam Ravnborg sam@ravnborg.org Cc: Laurent Pinchart laurent.pinchart@ideasonboard.com Cc: dri-devel@lists.freedesktop.org Reviewed-by: Maxime Ripard maxime.ripard@bootlin.com Acked-by: Thierry Reding treding@nvidia.com Signed-off-by: Rob Herring robh@kernel.org --- .../bindings/display/panel/lvds.yaml | 107 ++++++++++++++++ .../bindings/display/panel/panel-lvds.txt | 121 ------------------ 2 files changed, 107 insertions(+), 121 deletions(-) create mode 100644 Documentation/devicetree/bindings/display/panel/lvds.yaml delete mode 100644 Documentation/devicetree/bindings/display/panel/panel-lvds.txt
diff --git a/Documentation/devicetree/bindings/display/panel/lvds.yaml b/Documentation/devicetree/bindings/display/panel/lvds.yaml new file mode 100644 index 000000000000..d0083301acbe --- /dev/null +++ b/Documentation/devicetree/bindings/display/panel/lvds.yaml @@ -0,0 +1,107 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/display/panel/lvds.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: LVDS Display Panel + +maintainers: + - Laurent Pinchart laurent.pinchart+renesas@ideasonboard.com + - Thierry Reding thierry.reding@gmail.com + +description: |+ + LVDS is a physical layer specification defined in ANSI/TIA/EIA-644-A. Multiple + incompatible data link layers have been used over time to transmit image data + to LVDS panels. This bindings supports display panels compatible with the + following specifications. + + [JEIDA] "Digital Interface Standards for Monitor", JEIDA-59-1999, February + 1999 (Version 1.0), Japan Electronic Industry Development Association (JEIDA) + [LDI] "Open LVDS Display Interface", May 1999 (Version 0.95), National + Semiconductor + [VESA] "VESA Notebook Panel Standard", October 2007 (Version 1.0), Video + Electronics Standards Association (VESA) + + Device compatible with those specifications have been marketed under the + FPD-Link and FlatLink brands. + +allOf: + - $ref: panel-common.yaml# + +properties: + compatible: + contains: + const: panel-lvds + description: + Shall contain "panel-lvds" in addition to a mandatory panel-specific + compatible string defined in individual panel bindings. The "panel-lvds" + value shall never be used on its own. + + data-mapping: + enum: + - jeida-18 + - jeida-24 + - vesa-24 + description: | + The color signals mapping order. + + LVDS data mappings are defined as follows. + + - "jeida-18" - 18-bit data mapping compatible with the [JEIDA], [LDI] and + [VESA] specifications. Data are transferred as follows on 3 LVDS lanes. + + Slot 0 1 2 3 4 5 6 + ________________ _________________ + Clock _______________________/ + ______ ______ ______ ______ ______ ______ ______ + DATA0 ><__G0__><__R5__><__R4__><__R3__><__R2__><__R1__><__R0__>< + DATA1 ><__B1__><__B0__><__G5__><__G4__><__G3__><__G2__><__G1__>< + DATA2 ><_CTL2_><_CTL1_><_CTL0_><__B5__><__B4__><__B3__><__B2__>< + + - "jeida-24" - 24-bit data mapping compatible with the [DSIM] and [LDI] + specifications. Data are transferred as follows on 4 LVDS lanes. + + Slot 0 1 2 3 4 5 6 + ________________ _________________ + Clock _______________________/ + ______ ______ ______ ______ ______ ______ ______ + DATA0 ><__G2__><__R7__><__R6__><__R5__><__R4__><__R3__><__R2__>< + DATA1 ><__B3__><__B2__><__G7__><__G6__><__G5__><__G4__><__G3__>< + DATA2 ><_CTL2_><_CTL1_><_CTL0_><__B7__><__B6__><__B5__><__B4__>< + DATA3 ><_CTL3_><__B1__><__B0__><__G1__><__G0__><__R1__><__R0__>< + + - "vesa-24" - 24-bit data mapping compatible with the [VESA] specification. + Data are transferred as follows on 4 LVDS lanes. + + Slot 0 1 2 3 4 5 6 + ________________ _________________ + Clock _______________________/ + ______ ______ ______ ______ ______ ______ ______ + DATA0 ><__G0__><__R5__><__R4__><__R3__><__R2__><__R1__><__R0__>< + DATA1 ><__B1__><__B0__><__G5__><__G4__><__G3__><__G2__><__G1__>< + DATA2 ><_CTL2_><_CTL1_><_CTL0_><__B5__><__B4__><__B3__><__B2__>< + DATA3 ><_CTL3_><__B7__><__B6__><__G7__><__G6__><__R7__><__R6__>< + + Control signals are mapped as follows. + + CTL0: HSync + CTL1: VSync + CTL2: Data Enable + CTL3: 0 + + data-mirror: + type: boolean + description: + If set, reverse the bit order described in the data mappings below on all + data lanes, transmitting bits for slots 6 to 0 instead of 0 to 6. + +required: + - compatible + - data-mapping + - width-mm + - height-mm + - panel-timing + - port + +... diff --git a/Documentation/devicetree/bindings/display/panel/panel-lvds.txt b/Documentation/devicetree/bindings/display/panel/panel-lvds.txt deleted file mode 100644 index 250850a2150b..000000000000 --- a/Documentation/devicetree/bindings/display/panel/panel-lvds.txt +++ /dev/null @@ -1,121 +0,0 @@ -LVDS Display Panel -================== - -LVDS is a physical layer specification defined in ANSI/TIA/EIA-644-A. Multiple -incompatible data link layers have been used over time to transmit image data -to LVDS panels. This bindings supports display panels compatible with the -following specifications. - -[JEIDA] "Digital Interface Standards for Monitor", JEIDA-59-1999, February -1999 (Version 1.0), Japan Electronic Industry Development Association (JEIDA) -[LDI] "Open LVDS Display Interface", May 1999 (Version 0.95), National -Semiconductor -[VESA] "VESA Notebook Panel Standard", October 2007 (Version 1.0), Video -Electronics Standards Association (VESA) - -Device compatible with those specifications have been marketed under the -FPD-Link and FlatLink brands. - - -Required properties: - -- compatible: Shall contain "panel-lvds" in addition to a mandatory - panel-specific compatible string defined in individual panel bindings. The - "panel-lvds" value shall never be used on its own. -- width-mm: See panel-common.txt. -- height-mm: See panel-common.txt. -- data-mapping: The color signals mapping order, "jeida-18", "jeida-24" - or "vesa-24". - -Optional properties: - -- label: See panel-common.txt. -- gpios: See panel-common.txt. -- backlight: See panel-common.txt. -- power-supply: See panel-common.txt. -- data-mirror: If set, reverse the bit order described in the data mappings - below on all data lanes, transmitting bits for slots 6 to 0 instead of - 0 to 6. - -Required nodes: - -- panel-timing: See panel-common.txt. -- ports: See panel-common.txt. These bindings require a single port subnode - corresponding to the panel LVDS input. - - -LVDS data mappings are defined as follows. - -- "jeida-18" - 18-bit data mapping compatible with the [JEIDA], [LDI] and - [VESA] specifications. Data are transferred as follows on 3 LVDS lanes. - -Slot 0 1 2 3 4 5 6 - ________________ _________________ -Clock _______________________/ - ______ ______ ______ ______ ______ ______ ______ -DATA0 ><__G0__><__R5__><__R4__><__R3__><__R2__><__R1__><__R0__>< -DATA1 ><__B1__><__B0__><__G5__><__G4__><__G3__><__G2__><__G1__>< -DATA2 ><_CTL2_><_CTL1_><_CTL0_><__B5__><__B4__><__B3__><__B2__>< - -- "jeida-24" - 24-bit data mapping compatible with the [DSIM] and [LDI] - specifications. Data are transferred as follows on 4 LVDS lanes. - -Slot 0 1 2 3 4 5 6 - ________________ _________________ -Clock _______________________/ - ______ ______ ______ ______ ______ ______ ______ -DATA0 ><__G2__><__R7__><__R6__><__R5__><__R4__><__R3__><__R2__>< -DATA1 ><__B3__><__B2__><__G7__><__G6__><__G5__><__G4__><__G3__>< -DATA2 ><_CTL2_><_CTL1_><_CTL0_><__B7__><__B6__><__B5__><__B4__>< -DATA3 ><_CTL3_><__B1__><__B0__><__G1__><__G0__><__R1__><__R0__>< - -- "vesa-24" - 24-bit data mapping compatible with the [VESA] specification. - Data are transferred as follows on 4 LVDS lanes. - -Slot 0 1 2 3 4 5 6 - ________________ _________________ -Clock _______________________/ - ______ ______ ______ ______ ______ ______ ______ -DATA0 ><__G0__><__R5__><__R4__><__R3__><__R2__><__R1__><__R0__>< -DATA1 ><__B1__><__B0__><__G5__><__G4__><__G3__><__G2__><__G1__>< -DATA2 ><_CTL2_><_CTL1_><_CTL0_><__B5__><__B4__><__B3__><__B2__>< -DATA3 ><_CTL3_><__B7__><__B6__><__G7__><__G6__><__R7__><__R6__>< - -Control signals are mapped as follows. - -CTL0: HSync -CTL1: VSync -CTL2: Data Enable -CTL3: 0 - - -Example -------- - -panel { - compatible = "mitsubishi,aa121td01", "panel-lvds"; - - width-mm = <261>; - height-mm = <163>; - - data-mapping = "jeida-24"; - - panel-timing { - /* 1280x800 @60Hz */ - clock-frequency = <71000000>; - hactive = <1280>; - vactive = <800>; - hsync-len = <70>; - hfront-porch = <20>; - hback-porch = <70>; - vsync-len = <5>; - vfront-porch = <3>; - vback-porch = <15>; - }; - - port { - panel_in: endpoint { - remote-endpoint = <&lvds_encoder>; - }; - }; -};
Convert the innolux,ee101ia-01 LVDS panel binding to DT schema.
Cc: Thierry Reding thierry.reding@gmail.com Cc: Sam Ravnborg sam@ravnborg.org Cc: Laurent Pinchart laurent.pinchart@ideasonboard.com Cc: dri-devel@lists.freedesktop.org Reviewed-by: Maxime Ripard maxime.ripard@bootlin.com Acked-by: Thierry Reding treding@nvidia.com Signed-off-by: Rob Herring robh@kernel.org --- .../display/panel/innolux,ee101ia-01d.txt | 7 ----- .../display/panel/innolux,ee101ia-01d.yaml | 31 +++++++++++++++++++ 2 files changed, 31 insertions(+), 7 deletions(-) delete mode 100644 Documentation/devicetree/bindings/display/panel/innolux,ee101ia-01d.txt create mode 100644 Documentation/devicetree/bindings/display/panel/innolux,ee101ia-01d.yaml
diff --git a/Documentation/devicetree/bindings/display/panel/innolux,ee101ia-01d.txt b/Documentation/devicetree/bindings/display/panel/innolux,ee101ia-01d.txt deleted file mode 100644 index e5ca4ccd55ed..000000000000 --- a/Documentation/devicetree/bindings/display/panel/innolux,ee101ia-01d.txt +++ /dev/null @@ -1,7 +0,0 @@ -Innolux Corporation 10.1" EE101IA-01D WXGA (1280x800) LVDS panel - -Required properties: -- compatible: should be "innolux,ee101ia-01d" - -This binding is compatible with the lvds-panel binding, which is specified -in panel-lvds.txt in this directory. diff --git a/Documentation/devicetree/bindings/display/panel/innolux,ee101ia-01d.yaml b/Documentation/devicetree/bindings/display/panel/innolux,ee101ia-01d.yaml new file mode 100644 index 000000000000..a69681e724cb --- /dev/null +++ b/Documentation/devicetree/bindings/display/panel/innolux,ee101ia-01d.yaml @@ -0,0 +1,31 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/display/panel/innolux,ee101ia-01d.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Innolux Corporation 10.1" EE101IA-01D WXGA (1280x800) LVDS panel + +maintainers: + - Heiko Stuebner heiko.stuebner@bq.com + - Thierry Reding thierry.reding@gmail.com + +allOf: + - $ref: lvds.yaml# + +properties: + compatible: + items: + - const: innolux,ee101ia-01d + - {} # panel-lvds, but not listed here to avoid false select + + backlight: true + enable-gpios: true + power-supply: true + width-mm: true + height-mm: true + panel-timing: true + port: true + +additionalProperties: false +...
Convert the mitsubishi,aa104xd12 LVDS panel binding to DT schema.
Cc: Thierry Reding thierry.reding@gmail.com Cc: Sam Ravnborg sam@ravnborg.org Cc: Laurent Pinchart laurent.pinchart@ideasonboard.com Reviewed-by: Maxime Ripard maxime.ripard@bootlin.com Signed-off-by: Rob Herring robh@kernel.org --- .../display/panel/mitsubishi,aa104xd12.txt | 47 ------------ .../display/panel/mitsubishi,aa104xd12.yaml | 75 +++++++++++++++++++ 2 files changed, 75 insertions(+), 47 deletions(-) delete mode 100644 Documentation/devicetree/bindings/display/panel/mitsubishi,aa104xd12.txt create mode 100644 Documentation/devicetree/bindings/display/panel/mitsubishi,aa104xd12.yaml
diff --git a/Documentation/devicetree/bindings/display/panel/mitsubishi,aa104xd12.txt b/Documentation/devicetree/bindings/display/panel/mitsubishi,aa104xd12.txt deleted file mode 100644 index ced0121aed7d..000000000000 --- a/Documentation/devicetree/bindings/display/panel/mitsubishi,aa104xd12.txt +++ /dev/null @@ -1,47 +0,0 @@ -Mitsubishi AA204XD12 LVDS Display Panel -======================================= - -The AA104XD12 is a 10.4" XGA TFT-LCD display panel. - -These DT bindings follow the LVDS panel bindings defined in panel-lvds.txt -with the following device-specific properties. - - -Required properties: - -- compatible: Shall contain "mitsubishi,aa121td01" and "panel-lvds", in that - order. -- vcc-supply: Reference to the regulator powering the panel VCC pins. - - -Example -------- - -panel { - compatible = "mitsubishi,aa104xd12", "panel-lvds"; - vcc-supply = <&vcc_3v3>; - - width-mm = <210>; - height-mm = <158>; - - data-mapping = "jeida-24"; - - panel-timing { - /* 1024x768 @65Hz */ - clock-frequency = <65000000>; - hactive = <1024>; - vactive = <768>; - hsync-len = <136>; - hfront-porch = <20>; - hback-porch = <160>; - vfront-porch = <3>; - vback-porch = <29>; - vsync-len = <6>; - }; - - port { - panel_in: endpoint { - remote-endpoint = <&lvds_encoder>; - }; - }; -}; diff --git a/Documentation/devicetree/bindings/display/panel/mitsubishi,aa104xd12.yaml b/Documentation/devicetree/bindings/display/panel/mitsubishi,aa104xd12.yaml new file mode 100644 index 000000000000..b5e7ee230fa6 --- /dev/null +++ b/Documentation/devicetree/bindings/display/panel/mitsubishi,aa104xd12.yaml @@ -0,0 +1,75 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/display/panel/mitsubishi,aa104xd12.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Mitsubishi AA104XD12 10.4" XGA LVDS Display Panel + +maintainers: + - Laurent Pinchart laurent.pinchart@ideasonboard.com + - Thierry Reding thierry.reding@gmail.com + +allOf: + - $ref: lvds.yaml# + +properties: + compatible: + items: + - const: mitsubishi,aa104xd12 + - {} # panel-lvds, but not listed here to avoid false select + + vcc-supply: + description: Reference to the regulator powering the panel VCC pins. + + data-mapping: + const: jeida-24 + + width-mm: + const: 210 + + height-mm: + const: 158 + + panel-timing: true + port: true + +additionalProperties: false + +required: + - compatible + - vcc-supply + +examples: + - |+ + + panel { + compatible = "mitsubishi,aa104xd12", "panel-lvds"; + vcc-supply = <&vcc_3v3>; + + width-mm = <210>; + height-mm = <158>; + + data-mapping = "jeida-24"; + + panel-timing { + /* 1024x768 @65Hz */ + clock-frequency = <65000000>; + hactive = <1024>; + vactive = <768>; + hsync-len = <136>; + hfront-porch = <20>; + hback-porch = <160>; + vfront-porch = <3>; + vback-porch = <29>; + vsync-len = <6>; + }; + + port { + panel_in: endpoint { + remote-endpoint = <&lvds_encoder>; + }; + }; + }; + +...
Convert the mitsubishi,aa121td01 LVDS panel binding to DT schema.
Cc: Thierry Reding thierry.reding@gmail.com Cc: Sam Ravnborg sam@ravnborg.org Cc: Laurent Pinchart laurent.pinchart@ideasonboard.com Reviewed-by: Maxime Ripard maxime.ripard@bootlin.com Signed-off-by: Rob Herring robh@kernel.org --- .../display/panel/mitsubishi,aa121td01.txt | 47 ------------ .../display/panel/mitsubishi,aa121td01.yaml | 74 +++++++++++++++++++ 2 files changed, 74 insertions(+), 47 deletions(-) delete mode 100644 Documentation/devicetree/bindings/display/panel/mitsubishi,aa121td01.txt create mode 100644 Documentation/devicetree/bindings/display/panel/mitsubishi,aa121td01.yaml
diff --git a/Documentation/devicetree/bindings/display/panel/mitsubishi,aa121td01.txt b/Documentation/devicetree/bindings/display/panel/mitsubishi,aa121td01.txt deleted file mode 100644 index d6e1097504fe..000000000000 --- a/Documentation/devicetree/bindings/display/panel/mitsubishi,aa121td01.txt +++ /dev/null @@ -1,47 +0,0 @@ -Mitsubishi AA121TD01 LVDS Display Panel -======================================= - -The AA121TD01 is a 12.1" WXGA TFT-LCD display panel. - -These DT bindings follow the LVDS panel bindings defined in panel-lvds.txt -with the following device-specific properties. - - -Required properties: - -- compatible: Shall contain "mitsubishi,aa121td01" and "panel-lvds", in that - order. -- vcc-supply: Reference to the regulator powering the panel VCC pins. - - -Example -------- - -panel { - compatible = "mitsubishi,aa121td01", "panel-lvds"; - vcc-supply = <&vcc_3v3>; - - width-mm = <261>; - height-mm = <163>; - - data-mapping = "jeida-24"; - - panel-timing { - /* 1280x800 @60Hz */ - clock-frequency = <71000000>; - hactive = <1280>; - vactive = <800>; - hsync-len = <70>; - hfront-porch = <20>; - hback-porch = <70>; - vsync-len = <5>; - vfront-porch = <3>; - vback-porch = <15>; - }; - - port { - panel_in: endpoint { - remote-endpoint = <&lvds_encoder>; - }; - }; -}; diff --git a/Documentation/devicetree/bindings/display/panel/mitsubishi,aa121td01.yaml b/Documentation/devicetree/bindings/display/panel/mitsubishi,aa121td01.yaml new file mode 100644 index 000000000000..977c50a85b67 --- /dev/null +++ b/Documentation/devicetree/bindings/display/panel/mitsubishi,aa121td01.yaml @@ -0,0 +1,74 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/display/panel/mitsubishi,aa121td01.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Mitsubishi AA121TD01 12.1" WXGA LVDS Display Panel + +maintainers: + - Laurent Pinchart laurent.pinchart@ideasonboard.com + - Thierry Reding thierry.reding@gmail.com + +allOf: + - $ref: lvds.yaml# + +properties: + compatible: + items: + - const: mitsubishi,aa121td01 + - {} # panel-lvds, but not listed here to avoid false select + + vcc-supply: + description: Reference to the regulator powering the panel VCC pins. + + data-mapping: + const: jeida-24 + + width-mm: + const: 261 + + height-mm: + const: 163 + + panel-timing: true + port: true + +additionalProperties: false + +required: + - compatible + - vcc-supply + +examples: + - |+ + panel { + compatible = "mitsubishi,aa121td01", "panel-lvds"; + vcc-supply = <&vcc_3v3>; + + width-mm = <261>; + height-mm = <163>; + + data-mapping = "jeida-24"; + + panel-timing { + /* 1280x800 @60Hz */ + clock-frequency = <71000000>; + hactive = <1280>; + vactive = <800>; + hsync-len = <70>; + hfront-porch = <20>; + hback-porch = <70>; + vsync-len = <5>; + vfront-porch = <3>; + vback-porch = <15>; + }; + + port { + panel_in: endpoint { + remote-endpoint = <&lvds_encoder>; + }; + }; + }; + +...
Convert the sgd,gktw70sdae4se LVDS panel binding to DT schema.
Cc: Neil Armstrong narmstrong@baylibre.com Cc: Thierry Reding thierry.reding@gmail.com Cc: Sam Ravnborg sam@ravnborg.org Cc: Laurent Pinchart laurent.pinchart@ideasonboard.com Reviewed-by: Maxime Ripard maxime.ripard@bootlin.com Signed-off-by: Rob Herring robh@kernel.org --- .../display/panel/sgd,gktw70sdae4se.txt | 41 ----------- .../display/panel/sgd,gktw70sdae4se.yaml | 68 +++++++++++++++++++ 2 files changed, 68 insertions(+), 41 deletions(-) delete mode 100644 Documentation/devicetree/bindings/display/panel/sgd,gktw70sdae4se.txt create mode 100644 Documentation/devicetree/bindings/display/panel/sgd,gktw70sdae4se.yaml
diff --git a/Documentation/devicetree/bindings/display/panel/sgd,gktw70sdae4se.txt b/Documentation/devicetree/bindings/display/panel/sgd,gktw70sdae4se.txt deleted file mode 100644 index d06644b555bd..000000000000 --- a/Documentation/devicetree/bindings/display/panel/sgd,gktw70sdae4se.txt +++ /dev/null @@ -1,41 +0,0 @@ -Solomon Goldentek Display GKTW70SDAE4SE LVDS Display Panel -========================================================== - -The GKTW70SDAE4SE is a 7" WVGA TFT-LCD display panel. - -These DT bindings follow the LVDS panel bindings defined in panel-lvds.txt -with the following device-specific properties. - -Required properties: - -- compatible: Shall contain "sgd,gktw70sdae4se" and "panel-lvds", in that order. - -Example -------- - -panel { - compatible = "sgd,gktw70sdae4se", "panel-lvds"; - - width-mm = <153>; - height-mm = <86>; - - data-mapping = "jeida-18"; - - panel-timing { - clock-frequency = <32000000>; - hactive = <800>; - vactive = <480>; - hback-porch = <39>; - hfront-porch = <39>; - vback-porch = <29>; - vfront-porch = <13>; - hsync-len = <47>; - vsync-len = <2>; - }; - - port { - panel_in: endpoint { - remote-endpoint = <&lvds_encoder>; - }; - }; -}; diff --git a/Documentation/devicetree/bindings/display/panel/sgd,gktw70sdae4se.yaml b/Documentation/devicetree/bindings/display/panel/sgd,gktw70sdae4se.yaml new file mode 100644 index 000000000000..e63a570ae59d --- /dev/null +++ b/Documentation/devicetree/bindings/display/panel/sgd,gktw70sdae4se.yaml @@ -0,0 +1,68 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/display/panel/sgd,gktw70sdae4se.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Solomon Goldentek Display GKTW70SDAE4SE 7" WVGA LVDS Display Panel + +maintainers: + - Neil Armstrong narmstrong@baylibre.com + - Thierry Reding thierry.reding@gmail.com + +allOf: + - $ref: lvds.yaml# + +properties: + compatible: + items: + - const: sgd,gktw70sdae4se + - {} # panel-lvds, but not listed here to avoid false select + + data-mapping: + const: jeida-18 + + width-mm: + const: 153 + + height-mm: + const: 86 + + panel-timing: true + port: true + +additionalProperties: false + +required: + - compatible + +examples: + - |+ + panel { + compatible = "sgd,gktw70sdae4se", "panel-lvds"; + + width-mm = <153>; + height-mm = <86>; + + data-mapping = "jeida-18"; + + panel-timing { + clock-frequency = <32000000>; + hactive = <800>; + vactive = <480>; + hback-porch = <39>; + hfront-porch = <39>; + vback-porch = <29>; + vfront-porch = <13>; + hsync-len = <47>; + vsync-len = <2>; + }; + + port { + panel_in: endpoint { + remote-endpoint = <&lvds_encoder>; + }; + }; + }; + +...
dri-devel@lists.freedesktop.org