1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/display/st,stm32-dsi.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: STMicroelectronics STM32 DSI host controller 8 9maintainers: 10 - Philippe Cornu <philippe.cornu@st.com> 11 - Yannick Fertre <yannick.fertre@st.com> 12 13description: 14 The STMicroelectronics STM32 DSI controller uses the Synopsys DesignWare MIPI-DSI host controller. 15 16properties: 17 compatible: 18 const: st,stm32-dsi 19 20 reg: 21 maxItems: 1 22 23 clocks: 24 items: 25 - description: Module Clock 26 - description: DSI bus clock 27 - description: Pixel clock 28 minItems: 2 29 maxItems: 3 30 31 clock-names: 32 items: 33 - const: pclk 34 - const: ref 35 - const: px_clk 36 minItems: 2 37 maxItems: 3 38 39 resets: 40 maxItems: 1 41 42 reset-names: 43 items: 44 - const: apb 45 46 phy-dsi-supply: 47 description: 48 Phandle of the regulator that provides the supply voltage. 49 50 ports: 51 type: object 52 description: 53 A node containing DSI input & output port nodes with endpoint 54 definitions as documented in 55 Documentation/devicetree/bindings/media/video-interfaces.txt 56 Documentation/devicetree/bindings/graph.txt 57 properties: 58 port@0: 59 type: object 60 description: 61 DSI input port node, connected to the ltdc rgb output port. 62 63 port@1: 64 type: object 65 description: 66 DSI output port node, connected to a panel or a bridge input port" 67 68patternProperties: 69 "^(panel|panel-dsi)@[0-9]$": 70 type: object 71 description: 72 A node containing the panel or bridge description as documented in 73 Documentation/devicetree/bindings/display/mipi-dsi-bus.txt 74 properties: 75 port: 76 type: object 77 description: 78 Panel or bridge port node, connected to the DSI output port (port@1) 79 80 "#address-cells": 81 const: 1 82 83 "#size-cells": 84 const: 0 85 86required: 87 - "#address-cells" 88 - "#size-cells" 89 - compatible 90 - reg 91 - clocks 92 - clock-names 93 - ports 94 95additionalProperties: false 96 97examples: 98 - | 99 #include <dt-bindings/interrupt-controller/arm-gic.h> 100 #include <dt-bindings/clock/stm32mp1-clks.h> 101 #include <dt-bindings/reset/stm32mp1-resets.h> 102 #include <dt-bindings/gpio/gpio.h> 103 dsi: dsi@5a000000 { 104 compatible = "st,stm32-dsi"; 105 reg = <0x5a000000 0x800>; 106 clocks = <&rcc DSI_K>, <&clk_hse>, <&rcc DSI_PX>; 107 clock-names = "pclk", "ref", "px_clk"; 108 resets = <&rcc DSI_R>; 109 reset-names = "apb"; 110 phy-dsi-supply = <®18>; 111 112 #address-cells = <1>; 113 #size-cells = <0>; 114 115 ports { 116 #address-cells = <1>; 117 #size-cells = <0>; 118 119 port@0 { 120 reg = <0>; 121 dsi_in: endpoint { 122 remote-endpoint = <<dc_ep1_out>; 123 }; 124 }; 125 126 port@1 { 127 reg = <1>; 128 dsi_out: endpoint { 129 remote-endpoint = <&panel_in>; 130 }; 131 }; 132 }; 133 134 panel-dsi@0 { 135 compatible = "orisetech,otm8009a"; 136 reg = <0>; 137 reset-gpios = <&gpioe 4 GPIO_ACTIVE_LOW>; 138 power-supply = <&v3v3>; 139 140 port { 141 panel_in: endpoint { 142 remote-endpoint = <&dsi_out>; 143 }; 144 }; 145 }; 146 }; 147 148... 149 150