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