# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/display/dsi-controller.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: Common Properties for DSI Display Panels maintainers: - Linus Walleij <linus.walleij@linaro.org> description: | This document defines device tree properties common to DSI, Display Serial Interface controllers and attached panels. It doesn't constitute 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. Notice: this binding concerns DSI panels connected directly to a master without any intermediate port graph to the panel. Each DSI master can control one to four virtual channels to one panel. Each virtual channel should have a node "panel" for their virtual channel with their reg-property set to the virtual channel number, usually there is just one virtual channel, number 0. properties: $nodename: pattern: "^dsi(@.*)?$" clock-master: type: boolean description: Should be enabled if the host is being used in conjunction with another DSI host to drive the same peripheral. Hardware supporting such a configuration generally requires the data on both the busses to be driven by the same clock. Only the DSI host instance controlling this clock should contain this property. "#address-cells": const: 1 "#size-cells": const: 0 patternProperties: "^panel@[0-3]$": description: Panels connected to the DSI link type: object properties: reg: minimum: 0 maximum: 3 description: The virtual channel number of a DSI peripheral. Must be in the range from 0 to 3, as DSI uses a 2-bit addressing scheme. Some DSI peripherals respond to more than a single virtual channel. In that case the reg property can take multiple entries, one for each virtual channel that the peripheral responds to. enforce-video-mode: type: boolean description: The best option is usually to run a panel in command mode, as this gives better control over the panel hardware. However for different reasons like broken hardware, missing features or testing, it may be useful to be able to force a command mode-capable panel into video mode. required: - reg additionalProperties: true examples: - | #include <dt-bindings/gpio/gpio.h> dsi@a0351000 { reg = <0xa0351000 0x1000>; #address-cells = <1>; #size-cells = <0>; panel@0 { compatible = "sony,acx424akp"; reg = <0>; vddi-supply = <&ab8500_ldo_aux1_reg>; reset-gpios = <&gpio2 1 GPIO_ACTIVE_LOW>; }; }; ...