Commit b6755423 authored by Rob Herring's avatar Rob Herring

dt-bindings: display: Use OF graph schema

Now that we have a graph schema, rework the display related schemas to use
it. Mostly this is adding a reference to graph.yaml and dropping duplicate
parts from schemas.

In panel-common.yaml, 'ports' is dropped. Any binding using 'ports'
should be one with more than 1 port node, and the binding must define
what each port is.

Note that ti,sn65dsi86.yaml, ti,tfp410,yaml and toshiba,tc358768.yaml will
need further updates to use video-interfaces.yaml once that lands.

Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Sam Ravnborg <sam@ravnborg.org>
Cc: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Cc: Maxime Ripard <mripard@kernel.org>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Thomas Zimmermann <tzimmermann@suse.de>
Signed-off-by: default avatarRob Herring <robh@kernel.org>
Reviewed-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20210104180724.2275098-1-robh@kernel.org
parent 453f617a
...@@ -84,36 +84,23 @@ properties: ...@@ -84,36 +84,23 @@ properties:
const: dma-mem const: dma-mem
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
description: |
A ports node with endpoint definitions as defined in
Documentation/devicetree/bindings/media/video-interfaces.txt.
properties: properties:
"#address-cells":
const: 1
"#size-cells":
const: 0
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description:
Input endpoints of the controller. Input endpoints of the controller.
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description:
Output endpoints of the controller. Output endpoints of the controller.
required: required:
- "#address-cells"
- "#size-cells"
- port@0 - port@0
- port@1 - port@1
additionalProperties: false
required: required:
- compatible - compatible
- reg - reg
......
...@@ -57,35 +57,22 @@ properties: ...@@ -57,35 +57,22 @@ properties:
maxItems: 1 maxItems: 1
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
description: |
A ports node with endpoint definitions as defined in
Documentation/devicetree/bindings/media/video-interfaces.txt.
properties: properties:
"#address-cells":
const: 1
"#size-cells":
const: 0
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description: |
Input endpoints of the controller. Input endpoints of the controller.
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description: |
Output endpoints of the controller. Output endpoints of the controller.
required: required:
- "#address-cells"
- "#size-cells"
- port@1 - port@1
additionalProperties: false
required: required:
- compatible - compatible
- reg - reg
......
...@@ -76,37 +76,24 @@ properties: ...@@ -76,37 +76,24 @@ properties:
- const: audio-tx - const: audio-tx
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
description: |
A ports node with endpoint definitions as defined in
Documentation/devicetree/bindings/media/video-interfaces.txt.
properties: properties:
"#address-cells":
const: 1
"#size-cells":
const: 0
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description: |
Input endpoints of the controller. Input endpoints of the controller.
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description: |
Output endpoints of the controller. Usually an HDMI Output endpoints of the controller. Usually an HDMI
connector. connector.
required: required:
- "#address-cells"
- "#size-cells"
- port@0 - port@0
- port@1 - port@1
additionalProperties: false
required: required:
- compatible - compatible
- reg - reg
......
...@@ -115,31 +115,24 @@ properties: ...@@ -115,31 +115,24 @@ properties:
- const: lvds - const: lvds
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
description: |
A ports node with endpoint definitions as defined in
Documentation/devicetree/bindings/media/video-interfaces.txt.
properties: properties:
"#address-cells":
const: 1
"#size-cells":
const: 0
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description: |
Input endpoints of the controller. Input endpoints of the controller.
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/$defs/port-base
unevaluatedProperties: false
description: | description: |
Output endpoints of the controller. Output endpoints of the controller.
patternProperties: patternProperties:
"^endpoint(@[0-9])$": "^endpoint(@[0-9])$":
type: object $ref: /schemas/graph.yaml#/$defs/endpoint-base
unevaluatedProperties: false
properties: properties:
allwinner,tcon-channel: allwinner,tcon-channel:
...@@ -156,16 +149,10 @@ properties: ...@@ -156,16 +149,10 @@ properties:
property is not present, the endpoint number will be property is not present, the endpoint number will be
used as the channel number. used as the channel number.
unevaluatedProperties: true
required: required:
- "#address-cells"
- "#size-cells"
- port@0 - port@0
- port@1 - port@1
additionalProperties: false
required: required:
- compatible - compatible
- reg - reg
......
...@@ -24,11 +24,9 @@ properties: ...@@ -24,11 +24,9 @@ properties:
maxItems: 1 maxItems: 1
port: port:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
A port node with endpoint definitions as defined in The first port should be the input endpoint, usually coming from the
Documentation/devicetree/bindings/media/video-interfaces.txt. The
first port should be the input endpoint, usually coming from the
associated TCON. associated TCON.
required: required:
......
...@@ -46,36 +46,23 @@ properties: ...@@ -46,36 +46,23 @@ properties:
maxItems: 1 maxItems: 1
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
description: |
A ports node with endpoint definitions as defined in
Documentation/devicetree/bindings/media/video-interfaces.txt.
properties: properties:
"#address-cells":
const: 1
"#size-cells":
const: 0
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description: |
Input endpoints of the controller. Input endpoints of the controller.
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description: |
Output endpoints of the controller. Output endpoints of the controller.
required: required:
- "#address-cells"
- "#size-cells"
- port@0 - port@0
- port@1 - port@1
additionalProperties: false
required: required:
- compatible - compatible
- reg - reg
......
...@@ -47,11 +47,9 @@ properties: ...@@ -47,11 +47,9 @@ properties:
const: dphy const: dphy
port: port:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
A port node with endpoint definitions as defined in The port should be the input endpoint, usually coming from the
Documentation/devicetree/bindings/media/video-interfaces.txt. That
port should be the input endpoint, usually coming from the
associated TCON. associated TCON.
required: required:
......
...@@ -43,35 +43,22 @@ properties: ...@@ -43,35 +43,22 @@ properties:
maxItems: 1 maxItems: 1
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
description: |
A ports node with endpoint definitions as defined in
Documentation/devicetree/bindings/media/video-interfaces.txt.
properties: properties:
"#address-cells":
const: 1
"#size-cells":
const: 0
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description: |
Input endpoints of the controller. Input endpoints of the controller.
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description: |
Output endpoints of the controller. Output endpoints of the controller.
required: required:
- "#address-cells"
- "#size-cells"
- port@1 - port@1
additionalProperties: false
required: required:
- compatible - compatible
- reg - reg
......
...@@ -93,38 +93,25 @@ properties: ...@@ -93,38 +93,25 @@ properties:
The VCC power supply of the controller The VCC power supply of the controller
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
description: |
A ports node with endpoint definitions as defined in
Documentation/devicetree/bindings/media/video-interfaces.txt.
properties: properties:
"#address-cells":
const: 1
"#size-cells":
const: 0
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description: |
Input endpoints of the controller. Usually the associated Input endpoints of the controller. Usually the associated
TCON. TCON.
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description: |
Output endpoints of the controller. Usually an HDMI Output endpoints of the controller. Usually an HDMI
connector. connector.
required: required:
- "#address-cells"
- "#size-cells"
- port@0 - port@0
- port@1 - port@1
additionalProperties: false
required: required:
- compatible - compatible
- reg - reg
......
...@@ -80,141 +80,45 @@ properties: ...@@ -80,141 +80,45 @@ properties:
maxItems: 1 maxItems: 1
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
description: |
A ports node with endpoint definitions as defined in
Documentation/devicetree/bindings/media/video-interfaces.txt.
All ports should have only one endpoint connected to
remote endpoint.
properties: properties:
"#address-cells":
const: 1
"#size-cells":
const: 0
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description: |
Input endpoint for Mixer 0 mux. Input endpoint for Mixer 0 mux.
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description: |
Output endpoint for Mixer 0 mux Output endpoint for Mixer 0 mux
properties:
"#address-cells":
const: 1
"#size-cells":
const: 0
reg: true
patternProperties:
"^endpoint@[0-9]$":
type: object
properties:
reg:
description: |
ID of the target TCON
required:
- reg
required:
- "#address-cells"
- "#size-cells"
additionalProperties: false
port@2: port@2:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description: |
Input endpoint for Mixer 1 mux. Input endpoint for Mixer 1 mux.
port@3: port@3:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description: |
Output endpoint for Mixer 1 mux Output endpoint for Mixer 1 mux
properties:
"#address-cells":
const: 1
"#size-cells":
const: 0
reg: true
patternProperties:
"^endpoint@[0-9]$":
type: object
properties:
reg:
description: |
ID of the target TCON
required:
- reg
required:
- "#address-cells"
- "#size-cells"
additionalProperties: false
port@4: port@4:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description: |
Input endpoint for HDMI mux. Input endpoint for HDMI mux.
properties:
"#address-cells":
const: 1
"#size-cells":
const: 0
reg: true
patternProperties:
"^endpoint@[0-9]$":
type: object
properties:
reg:
description: |
ID of the target TCON
required:
- reg
required:
- "#address-cells"
- "#size-cells"
additionalProperties: false
port@5: port@5:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description: |
Output endpoint for HDMI mux Output endpoint for HDMI mux
required: required:
- "#address-cells"
- "#size-cells"
- port@0 - port@0
- port@1 - port@1
- port@4 - port@4
- port@5 - port@5
additionalProperties: false
required: required:
- "#clock-cells" - "#clock-cells"
- compatible - compatible
......
...@@ -40,36 +40,23 @@ properties: ...@@ -40,36 +40,23 @@ properties:
maxItems: 1 maxItems: 1
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
description: |
A ports node with endpoint definitions as defined in
Documentation/devicetree/bindings/media/video-interfaces.txt.
properties: properties:
"#address-cells":
const: 1
"#size-cells":
const: 0
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description: |
Input endpoints of the controller. Input endpoints of the controller.
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description: |
Output endpoints of the controller. Output endpoints of the controller.
required: required:
- "#address-cells"
- "#size-cells"
- port@0 - port@0
- port@1 - port@1
additionalProperties: false
required: required:
- compatible - compatible
- reg - reg
......
...@@ -81,12 +81,12 @@ properties: ...@@ -81,12 +81,12 @@ properties:
description: phandle to an external 5V regulator to power the HDMI logic description: phandle to an external 5V regulator to power the HDMI logic
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
A port node pointing to the VENC Input port node. A port node pointing to the VENC Input port node.
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
A port node pointing to the TMDS Output port node. A port node pointing to the TMDS Output port node.
......
...@@ -83,12 +83,12 @@ properties: ...@@ -83,12 +83,12 @@ properties:
description: phandle to the associated power domain description: phandle to the associated power domain
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
A port node pointing to the CVBS VDAC port node. A port node pointing to the CVBS VDAC port node.
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
A port node pointing to the HDMI-TX port node. A port node pointing to the HDMI-TX port node.
......
...@@ -27,10 +27,9 @@ properties: ...@@ -27,10 +27,9 @@ properties:
- const: pixel - const: pixel
port: port:
type: object $ref: /schemas/graph.yaml#/properties/port
description: > description:
Port node with a single endpoint connecting to the panel, as Port node with a single endpoint connecting to the panel.
defined in Documentation/devicetree/bindings/media/video-interfaces.txt.
required: required:
- compatible - compatible
......
...@@ -35,16 +35,16 @@ properties: ...@@ -35,16 +35,16 @@ properties:
maxItems: 1 maxItems: 1
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
properties: properties:
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
Video port for MIPI DSI input. Video port for MIPI DSI input.
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
Video port for panel or connector. Video port for panel or connector.
......
...@@ -42,31 +42,18 @@ properties: ...@@ -42,31 +42,18 @@ properties:
description: Regulator for 1.0V digital core power. description: Regulator for 1.0V digital core power.
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
description:
A node containing input and output port nodes with endpoint
definitions as documented in
Documentation/devicetree/bindings/media/video-interfaces.txt
Documentation/devicetree/bindings/graph.txt
properties: properties:
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: Video port for HDMI input. description: Video port for HDMI input.
properties:
reg:
const: 0
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
Video port for SlimPort, DisplayPort, eDP or MyDP output. Video port for SlimPort, DisplayPort, eDP or MyDP output.
properties:
reg:
const: 1
required: required:
- port@0 - port@0
- port@1 - port@1
......
...@@ -32,31 +32,23 @@ properties: ...@@ -32,31 +32,23 @@ properties:
description: Regulator for 2.5V digital core power. description: Regulator for 2.5V digital core power.
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
properties: properties:
'#address-cells':
const: 1
'#size-cells':
const: 0
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description:
Video port for LVTTL input Video port for LVTTL input
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description:
Video port for eDP output (panel or connector). Video port for eDP output (panel or connector).
May be omitted if EDID works reliably. May be omitted if EDID works reliably.
required: required:
- port@0 - port@0
additionalProperties: false
required: required:
- compatible - compatible
- reg - reg
......
...@@ -57,47 +57,37 @@ properties: ...@@ -57,47 +57,37 @@ properties:
maxItems: 1 maxItems: 1
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
description:
Ports as described in Documentation/devicetree/bindings/graph.txt.
properties: properties:
'#address-cells':
const: 1
'#size-cells':
const: 0
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
First input port representing the DP bridge input. First input port representing the DP bridge input.
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
Second input port representing the DP bridge input. Second input port representing the DP bridge input.
port@2: port@2:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
Third input port representing the DP bridge input. Third input port representing the DP bridge input.
port@3: port@3:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
Fourth input port representing the DP bridge input. Fourth input port representing the DP bridge input.
port@4: port@4:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
Output port representing the DP bridge output. Output port representing the DP bridge output.
required: required:
- port@0 - port@0
- port@4 - port@4
- '#address-cells'
- '#size-cells'
allOf: allOf:
- if: - if:
......
...@@ -19,16 +19,16 @@ properties: ...@@ -19,16 +19,16 @@ properties:
description: I2C address of the device description: I2C address of the device
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
properties: properties:
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description: |
Video port for RGB input. Video port for RGB input.
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description: |
DVI port, should be connected to a node compatible with the DVI port, should be connected to a node compatible with the
dvi-connector binding. dvi-connector binding.
......
...@@ -35,29 +35,21 @@ properties: ...@@ -35,29 +35,21 @@ properties:
- const: clk_mipi_cfg - const: clk_mipi_cfg
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
properties: properties:
'#address-cells':
const: 1
'#size-cells':
const: 0
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: MIPI DSI input port. description: MIPI DSI input port.
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: DSI output port. description: DSI output port.
required: required:
- port@0 - port@0
- port@1 - port@1
additionalProperties: false
required: required:
- compatible - compatible
- reg - reg
......
...@@ -53,7 +53,7 @@ properties: ...@@ -53,7 +53,7 @@ properties:
description: extcon specifier for the Power Delivery description: extcon specifier for the Power Delivery
port: port:
type: object $ref: /schemas/graph.yaml#/properties/port
description: A port node pointing to DPI host port node description: A port node pointing to DPI host port node
required: required:
......
...@@ -38,82 +38,26 @@ properties: ...@@ -38,82 +38,26 @@ properties:
description: Regulator for 3.3V IO power. description: Regulator for 3.3V IO power.
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
properties: properties:
"#address-cells":
const: 1
"#size-cells":
const: 0
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description:
Primary MIPI port-1 for MIPI input Primary MIPI port-1 for MIPI input
properties:
reg:
const: 0
patternProperties:
"^endpoint(@[0-9])$":
type: object
additionalProperties: false
properties:
remote-endpoint:
$ref: /schemas/types.yaml#/definitions/phandle
required:
- reg
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description:
Additional MIPI port-2 for MIPI input, used in combination Additional MIPI port-2 for MIPI input, used in combination
with primary MIPI port-1 to drive higher resolution displays with primary MIPI port-1 to drive higher resolution displays
properties:
reg:
const: 1
patternProperties:
"^endpoint(@[0-9])$":
type: object
additionalProperties: false
properties:
remote-endpoint:
$ref: /schemas/types.yaml#/definitions/phandle
required:
- reg
port@2: port@2:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description:
HDMI port for HDMI output HDMI port for HDMI output
properties:
reg:
const: 2
patternProperties:
"^endpoint(@[0-9])$":
type: object
additionalProperties: false
properties:
remote-endpoint:
$ref: /schemas/types.yaml#/definitions/phandle
required:
- reg
required: required:
- "#address-cells"
- "#size-cells"
- port@0 - port@0
- port@2 - port@2
......
...@@ -45,25 +45,17 @@ properties: ...@@ -45,25 +45,17 @@ properties:
- thine,thc63lvdm83d # For the THC63LVDM83D LVDS serializer - thine,thc63lvdm83d # For the THC63LVDM83D LVDS serializer
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
description: |
This device has two video ports. Their connections are modeled using the
OF graph bindings specified in Documentation/devicetree/bindings/graph.txt
properties:
'#address-cells':
const: 1
'#size-cells':
const: 0
properties:
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description: |
For LVDS encoders, port 0 is the parallel input For LVDS encoders, port 0 is the parallel input
For LVDS decoders, port 0 is the LVDS input For LVDS decoders, port 0 is the LVDS input
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description: |
For LVDS encoders, port 1 is the LVDS output For LVDS encoders, port 1 is the LVDS output
For LVDS decoders, port 1 is the parallel output For LVDS decoders, port 1 is the parallel output
...@@ -72,8 +64,6 @@ properties: ...@@ -72,8 +64,6 @@ properties:
- port@0 - port@0
- port@1 - port@1
additionalProperties: false
powerdown-gpios: powerdown-gpios:
description: description:
The GPIO used to control the power down line of this device. The GPIO used to control the power down line of this device.
......
...@@ -84,40 +84,23 @@ properties: ...@@ -84,40 +84,23 @@ properties:
- const: pclk - const: pclk
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
description:
A node containing DSI input & output port nodes with endpoint
definitions as documented in
Documentation/devicetree/bindings/graph.txt.
properties: properties:
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/$defs/port-base
description: description:
Input port node to receive pixel data from the Input port node to receive pixel data from the
display controller. Exactly one endpoint must be display controller. Exactly one endpoint must be
specified. specified.
properties: properties:
'#address-cells':
const: 1
'#size-cells':
const: 0
endpoint@0: endpoint@0:
$ref: /schemas/graph.yaml#/properties/endpoint
description: sub-node describing the input from LCDIF description: sub-node describing the input from LCDIF
type: object
endpoint@1: endpoint@1:
$ref: /schemas/graph.yaml#/properties/endpoint
description: sub-node describing the input from DCSS description: sub-node describing the input from DCSS
type: object
reg:
const: 0
required:
- '#address-cells'
- '#size-cells'
- reg
oneOf: oneOf:
- required: - required:
...@@ -125,28 +108,18 @@ properties: ...@@ -125,28 +108,18 @@ properties:
- required: - required:
- endpoint@1 - endpoint@1
additionalProperties: false unevaluatedProperties: false
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
DSI output port node to the panel or the next bridge DSI output port node to the panel or the next bridge
in the chain in the chain
'#address-cells':
const: 1
'#size-cells':
const: 0
required: required:
- '#address-cells'
- '#size-cells'
- port@0 - port@0
- port@1 - port@1
additionalProperties: false
required: required:
- '#address-cells' - '#address-cells'
- '#size-cells' - '#size-cells'
......
...@@ -41,34 +41,22 @@ properties: ...@@ -41,34 +41,22 @@ properties:
description: Regulator for 3.3V digital core power. description: Regulator for 3.3V digital core power.
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
description:
A node containing DSI input & output port nodes with endpoint
definitions as documented in
Documentation/devicetree/bindings/media/video-interfaces.txt
Documentation/devicetree/bindings/graph.txt
properties:
'#address-cells':
const: 1
'#size-cells':
const: 0
properties:
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description:
Video port for DSI input Video port for DSI input
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description:
Video port for eDP output (panel or connector). Video port for eDP output (panel or connector).
required: required:
- port@0 - port@0
additionalProperties: false
required: required:
- compatible - compatible
- reg - reg
......
...@@ -49,33 +49,21 @@ properties: ...@@ -49,33 +49,21 @@ properties:
maxItems: 1 maxItems: 1
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
description: |
This device has two video ports. Their connections are modelled using the
OF graph bindings specified in Documentation/devicetree/bindings/graph.txt.
Each port shall have a single endpoint.
properties: properties:
'#address-cells':
const: 1
'#size-cells':
const: 0
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: Parallel RGB input port description: Parallel RGB input port
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: LVDS output port description: LVDS output port
required: required:
- port@0 - port@0
- port@1 - port@1
additionalProperties: false
power-domains: power-domains:
maxItems: 1 maxItems: 1
......
...@@ -30,31 +30,21 @@ properties: ...@@ -30,31 +30,21 @@ properties:
- ti,ths8135 - ti,ths8135
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
description: |
This device has two video ports. Their connections are modeled using the
OF graph bindings specified in Documentation/devicetree/bindings/graph.txt.
properties:
'#address-cells':
const: 1
'#size-cells':
const: 0
properties:
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: The bridge input description: The bridge input
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: The bridge output description: The bridge output
required: required:
- port@0 - port@0
- port@1 - port@1
additionalProperties: false
enable-gpios: enable-gpios:
maxItems: 1 maxItems: 1
description: GPIO controlling bridge enable description: GPIO controlling bridge enable
......
...@@ -47,14 +47,15 @@ properties: ...@@ -47,14 +47,15 @@ properties:
const: apb const: apb
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
properties: properties:
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: Input node to receive pixel data. description: Input node to receive pixel data.
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: DSI output node to panel. description: DSI output node to panel.
required: required:
......
...@@ -25,11 +25,8 @@ properties: ...@@ -25,11 +25,8 @@ properties:
const: thine,thc63lvd1024 const: thine,thc63lvd1024
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
description: | description: |
This device has four video ports. Their connections are modeled using the
OF graph bindings specified in Documentation/devicetree/bindings/graph.txt.
The device can operate in single or dual input and output modes. The device can operate in single or dual input and output modes.
When operating in single input mode, all pixels are received on port@0, When operating in single input mode, all pixels are received on port@0,
...@@ -43,34 +40,26 @@ properties: ...@@ -43,34 +40,26 @@ properties:
port@3 shall contain endpoints. port@3 shall contain endpoints.
properties: properties:
'#address-cells':
const: 1
'#size-cells':
const: 0
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: First LVDS input port description: First LVDS input port
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: Second LVDS input port description: Second LVDS input port
port@2: port@2:
type: object $ref: /schemas/graph.yaml#/properties/port
description: First digital CMOS/TTL parallel output description: First digital CMOS/TTL parallel output
port@3: port@3:
type: object $ref: /schemas/graph.yaml#/properties/port
description: Second digital CMOS/TTL parallel output description: Second digital CMOS/TTL parallel output
required: required:
- port@0 - port@0
- port@2 - port@2
additionalProperties: false
oe-gpios: oe-gpios:
maxItems: 1 maxItems: 1
description: Output enable GPIO signal, pin name "OE", active high. description: Output enable GPIO signal, pin name "OE", active high.
......
...@@ -71,54 +71,26 @@ properties: ...@@ -71,54 +71,26 @@ properties:
description: See ../../pwm/pwm.yaml for description of the cell formats. description: See ../../pwm/pwm.yaml for description of the cell formats.
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
additionalProperties: false
properties: properties:
"#address-cells":
const: 1
"#size-cells":
const: 0
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
additionalProperties: false
description: description:
Video port for MIPI DSI input Video port for MIPI DSI input
properties:
reg:
const: 0
endpoint:
type: object
additionalProperties: false
properties:
remote-endpoint: true
required:
- reg
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/$defs/port-base
additionalProperties: false unevaluatedProperties: false
description: description:
Video port for eDP output (panel or connector). Video port for eDP output (panel or connector).
properties: properties:
reg:
const: 1
endpoint: endpoint:
type: object $ref: /schemas/graph.yaml#/$defs/endpoint-base
additionalProperties: false unevaluatedProperties: false
properties: properties:
remote-endpoint: true
data-lanes: data-lanes:
oneOf: oneOf:
- minItems: 1 - minItems: 1
...@@ -171,12 +143,7 @@ properties: ...@@ -171,12 +143,7 @@ properties:
dependencies: dependencies:
lane-polarities: [data-lanes] lane-polarities: [data-lanes]
required:
- reg
required: required:
- "#address-cells"
- "#size-cells"
- port@0 - port@0
- port@1 - port@1
......
...@@ -31,23 +31,18 @@ properties: ...@@ -31,23 +31,18 @@ properties:
maximum: 7 maximum: 7
ports: ports:
description: $ref: /schemas/graph.yaml#/properties/ports
A node containing input and output port nodes with endpoint
definitions as documented in
Documentation/devicetree/bindings/media/video-interfaces.txt
type: object
properties: properties:
port@0: port@0:
$ref: /schemas/graph.yaml#/$defs/port-base
unevaluatedProperties: false
description: DPI input port. description: DPI input port.
type: object
properties: properties:
reg:
const: 0
endpoint: endpoint:
type: object $ref: /schemas/graph.yaml#/$defs/endpoint-base
unevaluatedProperties: false
properties: properties:
pclk-sample: pclk-sample:
...@@ -67,15 +62,8 @@ properties: ...@@ -67,15 +62,8 @@ properties:
default: 24 default: 24
port@1: port@1:
$ref: /schemas/graph.yaml#/properties/port
description: DVI output port. description: DVI output port.
type: object
properties:
reg:
const: 1
endpoint:
type: object
required: required:
- port@0 - port@0
......
...@@ -25,62 +25,20 @@ properties: ...@@ -25,62 +25,20 @@ properties:
description: Regulator for 1.2V internal core power. description: Regulator for 1.2V internal core power.
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
properties: properties:
"#address-cells":
const: 1
"#size-cells":
const: 0
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
additionalProperties: false description:
description: |
Video port for MIPI DSI input Video port for MIPI DSI input
properties:
reg:
const: 0
patternProperties:
endpoint:
type: object
additionalProperties: false
properties:
remote-endpoint: true
required:
- reg
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
additionalProperties: false description:
description: |
Video port for MIPI DPI output (panel or connector). Video port for MIPI DPI output (panel or connector).
properties:
reg:
const: 1
patternProperties:
endpoint:
type: object
additionalProperties: false
properties:
remote-endpoint: true
required:
- reg
required: required:
- "#address-cells"
- "#size-cells"
- port@0 - port@0
- port@1 - port@1
......
...@@ -42,65 +42,30 @@ properties: ...@@ -42,65 +42,30 @@ properties:
const: refclk const: refclk
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
properties: properties:
"#address-cells":
const: 1
"#size-cells":
const: 0
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/$defs/port-base
additionalProperties: false unevaluatedProperties: false
description: | description: |
Video port for RGB input Video port for RGB input
properties: properties:
reg:
const: 0
patternProperties:
endpoint: endpoint:
type: object $ref: /schemas/graph.yaml#/$defs/endpoint-base
additionalProperties: false unevaluatedProperties: false
properties: properties:
data-lines: data-lines:
enum: [ 16, 18, 24 ] enum: [ 16, 18, 24 ]
remote-endpoint: true
required:
- reg
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
additionalProperties: false
description: | description: |
Video port for DSI output (panel or connector). Video port for DSI output (panel or connector).
properties:
reg:
const: 1
patternProperties:
endpoint:
type: object
additionalProperties: false
properties:
remote-endpoint: true
required:
- reg
required: required:
- "#address-cells"
- "#size-cells"
- port@0 - port@0
- port@1 - port@1
...@@ -156,4 +121,3 @@ examples: ...@@ -156,4 +121,3 @@ examples:
}; };
}; };
}; };
...@@ -42,31 +42,22 @@ properties: ...@@ -42,31 +42,22 @@ properties:
description: Hardware reset, Low active description: Hardware reset, Low active
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
description:
A node containing input and output port nodes with endpoint definitions
as documented in
Documentation/devicetree/bindings/media/video-interfaces.txt
properties:
"#address-cells":
const: 1
"#size-cells":
const: 0
properties:
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description: |
DSI Input. The remote endpoint phandle should be a DSI Input. The remote endpoint phandle should be a
reference to a valid mipi_dsi_host device node. reference to a valid mipi_dsi_host device node.
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description: |
Video port for LVDS output (panel or connector). Video port for LVDS output (panel or connector).
port@2: port@2:
type: object $ref: /schemas/graph.yaml#/properties/port
description: | description: |
Video port for Dual link LVDS output (panel or connector). Video port for Dual link LVDS output (panel or connector).
......
...@@ -25,6 +25,7 @@ properties: ...@@ -25,6 +25,7 @@ properties:
$ref: /schemas/types.yaml#/definitions/uint32 $ref: /schemas/types.yaml#/definitions/uint32
port: port:
$ref: /schemas/graph.yaml#/properties/port
description: Connection to controller providing analog TV signals description: Connection to controller providing analog TV signals
required: required:
......
...@@ -36,6 +36,7 @@ properties: ...@@ -36,6 +36,7 @@ properties:
description: the connector has pins for DVI dual-link description: the connector has pins for DVI dual-link
port: port:
$ref: /schemas/graph.yaml#/properties/port
description: Connection to controller providing DVI signals description: Connection to controller providing DVI signals
required: required:
......
...@@ -37,6 +37,7 @@ properties: ...@@ -37,6 +37,7 @@ properties:
maxItems: 1 maxItems: 1
port: port:
$ref: /schemas/graph.yaml#/properties/port
description: Connection to controller providing HDMI signals description: Connection to controller providing HDMI signals
required: required:
......
...@@ -20,6 +20,7 @@ properties: ...@@ -20,6 +20,7 @@ properties:
$ref: /schemas/types.yaml#/definitions/phandle $ref: /schemas/types.yaml#/definitions/phandle
port: port:
$ref: /schemas/graph.yaml#/properties/port
description: Connection to controller providing VGA signals description: Connection to controller providing VGA signals
required: required:
......
...@@ -74,7 +74,7 @@ properties: ...@@ -74,7 +74,7 @@ properties:
- description: Must be 400 MHz - description: Must be 400 MHz
port: port:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
A port node pointing to the input port of a HDMI/DP or MIPI display bridge. A port node pointing to the input port of a HDMI/DP or MIPI display bridge.
......
...@@ -31,9 +31,8 @@ properties: ...@@ -31,9 +31,8 @@ properties:
clock-names: clock-names:
const: ipu const: ipu
patternProperties: port:
"^ports?$": $ref: /schemas/graph.yaml#/properties/port
description: OF graph bindings (specified in bindings/graph.txt).
required: required:
- compatible - compatible
......
...@@ -39,18 +39,18 @@ properties: ...@@ -39,18 +39,18 @@ properties:
minItems: 1 minItems: 1
port: port:
description: OF graph bindings (specified in bindings/graph.txt). $ref: /schemas/graph.yaml#/properties/port
ports: ports:
description: OF graph bindings (specified in bindings/graph.txt). $ref: /schemas/graph.yaml#/properties/ports
type: object
properties: properties:
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: DPI output, to interface with TFT panels. description: DPI output, to interface with TFT panels.
port@8: port@8:
type: object $ref: /schemas/graph.yaml#/properties/port
description: Link to the Image Processing Unit (IPU). description: Link to the Image Processing Unit (IPU).
(See ingenic,ipu.yaml). (See ingenic,ipu.yaml).
......
...@@ -36,7 +36,7 @@ properties: ...@@ -36,7 +36,7 @@ properties:
maxItems: 1 maxItems: 1
port: port:
type: object $ref: /schemas/graph.yaml#/properties/port
description: Display output node to DSI. description: Display output node to DSI.
required: required:
......
...@@ -37,34 +37,33 @@ properties: ...@@ -37,34 +37,33 @@ properties:
panel-timing: true panel-timing: true
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
properties: properties:
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/$defs/port-base
unevaluatedProperties: false
description: The sink for odd pixels. description: The sink for odd pixels.
properties: properties:
reg:
const: 0
dual-lvds-odd-pixels: true dual-lvds-odd-pixels: true
required: required:
- reg
- dual-lvds-odd-pixels - dual-lvds-odd-pixels
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/$defs/port-base
unevaluatedProperties: false
description: The sink for even pixels. description: The sink for even pixels.
properties: properties:
reg:
const: 1
dual-lvds-even-pixels: true dual-lvds-even-pixels: true
required: required:
- reg
- dual-lvds-even-pixels - dual-lvds-even-pixels
required:
- port@0
- port@1
additionalProperties: false additionalProperties: false
required: required:
......
...@@ -68,16 +68,7 @@ properties: ...@@ -68,16 +68,7 @@ properties:
# Connectivity # Connectivity
port: port:
type: object $ref: /schemas/graph.yaml#/properties/port
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: ddc-i2c-bus:
$ref: /schemas/types.yaml#/definitions/phandle $ref: /schemas/types.yaml#/definitions/phandle
......
...@@ -43,34 +43,24 @@ properties: ...@@ -43,34 +43,24 @@ properties:
This soc uses GRF regs to switch the HDMI TX input between vop0 and vop1. This soc uses GRF regs to switch the HDMI TX input between vop0 and vop1.
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
properties: properties:
"#address-cells":
const: 1
"#size-cells":
const: 0
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
Port node with two endpoints, numbered 0 and 1, Port node with two endpoints, numbered 0 and 1,
connected respectively to vop0 and vop1. connected respectively to vop0 and vop1.
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
Port node with one endpoint connected to a hdmi-connector node. Port node with one endpoint connected to a hdmi-connector node.
required: required:
- "#address-cells"
- "#size-cells"
- port@0 - port@0
- port@1 - port@1
additionalProperties: false
required: required:
- compatible - compatible
- reg - reg
......
...@@ -70,10 +70,7 @@ properties: ...@@ -70,10 +70,7 @@ properties:
- const: dclk - const: dclk
port: port:
type: object $ref: /schemas/graph.yaml#/properties/port
description:
A port node with endpoint definitions as defined in
Documentation/devicetree/bindings/media/video-interfaces.txt.
assigned-clocks: assigned-clocks:
maxItems: 2 maxItems: 2
......
...@@ -51,20 +51,16 @@ properties: ...@@ -51,20 +51,16 @@ properties:
Phandle of the regulator that provides the supply voltage. Phandle of the regulator that provides the supply voltage.
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
description:
A node containing DSI input & output port nodes with endpoint
definitions as documented in
Documentation/devicetree/bindings/media/video-interfaces.txt
Documentation/devicetree/bindings/graph.txt
properties: properties:
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
DSI input port node, connected to the ltdc rgb output port. DSI input port node, connected to the ltdc rgb output port.
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
DSI output port node, connected to a panel or a bridge input port" DSI output port node, connected to a panel or a bridge input port"
......
...@@ -35,15 +35,13 @@ properties: ...@@ -35,15 +35,13 @@ properties:
maxItems: 1 maxItems: 1
port: port:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description: |
"Video port for DPI RGB output. Video port for DPI RGB output.
ltdc has one video port with up to 2 endpoints: ltdc has one video port with up to 2 endpoints:
- for external dpi rgb panel or bridge, using gpios. - for external dpi rgb panel or bridge, using gpios.
- for internal dpi input of the MIPI DSI host controller. - for internal dpi input of the MIPI DSI host controller.
Note: These 2 endpoints cannot be activated simultaneously. Note: These 2 endpoints cannot be activated simultaneously.
Please refer to the bindings defined in
Documentation/devicetree/bindings/media/video-interfaces.txt."
required: required:
- compatible - compatible
......
...@@ -42,10 +42,9 @@ properties: ...@@ -42,10 +42,9 @@ properties:
description: a phandle to the analog voltage regulator description: a phandle to the analog voltage regulator
port: port:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
A DPI port node with endpoint definitions as defined in A DPI port node
Documentation/devicetree/bindings/media/video-interfaces.txt
"#address-cells": "#address-cells":
const: 1 const: 1
......
...@@ -74,30 +74,19 @@ properties: ...@@ -74,30 +74,19 @@ properties:
type: boolean type: boolean
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
description:
Ports as described in Documentation/devicetree/bindings/graph.txt
properties:
"#address-cells":
const: 1
"#size-cells":
const: 0
properties:
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
The DSS OLDI output port node form video port 1 The DSS OLDI output port node form video port 1
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
The DSS DPI output port node from video port 2 The DSS DPI output port node from video port 2
required:
- "#address-cells"
- "#size-cells"
ti,am65x-oldi-io-ctrl: ti,am65x-oldi-io-ctrl:
$ref: "/schemas/types.yaml#/definitions/phandle-array" $ref: "/schemas/types.yaml#/definitions/phandle-array"
maxItems: 1 maxItems: 1
......
...@@ -107,40 +107,29 @@ properties: ...@@ -107,40 +107,29 @@ properties:
type: boolean type: boolean
ports: ports:
type: object $ref: /schemas/graph.yaml#/properties/ports
description:
Ports as described in Documentation/devicetree/bindings/graph.txt
properties:
"#address-cells":
const: 1
"#size-cells":
const: 0
properties:
port@0: port@0:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
The output port node form video port 1 The output port node form video port 1
port@1: port@1:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
The output port node from video port 2 The output port node from video port 2
port@2: port@2:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
The output port node from video port 3 The output port node from video port 3
port@3: port@3:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
The output port node from video port 4 The output port node from video port 4
required:
- "#address-cells"
- "#size-cells"
max-memory-bandwidth: max-memory-bandwidth:
$ref: /schemas/types.yaml#/definitions/uint32 $ref: /schemas/types.yaml#/definitions/uint32
description: description:
......
...@@ -54,9 +54,8 @@ properties: ...@@ -54,9 +54,8 @@ properties:
description: phandle to the associated power domain description: phandle to the associated power domain
port: port:
type: object $ref: /schemas/graph.yaml#/properties/port
description: description:
Port as described in Documentation/devicetree/bindings/graph.txt.
The DSS DPI output port node The DSS DPI output port node
max-memory-bandwidth: max-memory-bandwidth:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment