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@foss.st.com> 11 - Yannick Fertre <yannick.fertre@foss.st.com> 12 13description: 14 The STMicroelectronics STM32 DSI controller uses the Synopsys DesignWare MIPI-DSI host controller. 15 16allOf: 17 - $ref: dsi-controller.yaml# 18 19properties: 20 compatible: 21 const: st,stm32-dsi 22 23 reg: 24 maxItems: 1 25 26 clocks: 27 items: 28 - description: Module Clock 29 - description: DSI bus clock 30 - description: Pixel clock 31 minItems: 2 32 33 clock-names: 34 items: 35 - const: pclk 36 - const: ref 37 - const: px_clk 38 minItems: 2 39 40 resets: 41 maxItems: 1 42 43 reset-names: 44 items: 45 - const: apb 46 47 phy-dsi-supply: 48 description: 49 Phandle of the regulator that provides the supply voltage. 50 51 ports: 52 $ref: /schemas/graph.yaml#/properties/ports 53 54 properties: 55 port@0: 56 $ref: /schemas/graph.yaml#/properties/port 57 description: 58 DSI input port node, connected to the ltdc rgb output port. 59 60 port@1: 61 $ref: /schemas/graph.yaml#/$defs/port-base 62 unevaluatedProperties: false 63 description: | 64 DSI output port node, connected to a panel or a bridge input port. 65 properties: 66 endpoint: 67 $ref: /schemas/media/video-interfaces.yaml# 68 unevaluatedProperties: false 69 properties: 70 data-lanes: 71 minItems: 1 72 items: 73 - const: 1 74 - const: 2 75 76required: 77 - "#address-cells" 78 - "#size-cells" 79 - compatible 80 - reg 81 - clocks 82 - clock-names 83 - ports 84 85unevaluatedProperties: false 86 87examples: 88 - | 89 #include <dt-bindings/interrupt-controller/arm-gic.h> 90 #include <dt-bindings/clock/stm32mp1-clks.h> 91 #include <dt-bindings/reset/stm32mp1-resets.h> 92 #include <dt-bindings/gpio/gpio.h> 93 dsi: dsi@5a000000 { 94 compatible = "st,stm32-dsi"; 95 reg = <0x5a000000 0x800>; 96 clocks = <&rcc DSI_K>, <&clk_hse>, <&rcc DSI_PX>; 97 clock-names = "pclk", "ref", "px_clk"; 98 resets = <&rcc DSI_R>; 99 reset-names = "apb"; 100 phy-dsi-supply = <®18>; 101 102 #address-cells = <1>; 103 #size-cells = <0>; 104 105 ports { 106 #address-cells = <1>; 107 #size-cells = <0>; 108 109 port@0 { 110 reg = <0>; 111 dsi_in: endpoint { 112 remote-endpoint = <<dc_ep1_out>; 113 }; 114 }; 115 116 port@1 { 117 reg = <1>; 118 dsi_out: endpoint { 119 remote-endpoint = <&panel_in>; 120 }; 121 }; 122 }; 123 124 panel@0 { 125 compatible = "orisetech,otm8009a"; 126 reg = <0>; 127 reset-gpios = <&gpioe 4 GPIO_ACTIVE_LOW>; 128 power-supply = <&v3v3>; 129 130 port { 131 panel_in: endpoint { 132 remote-endpoint = <&dsi_out>; 133 }; 134 }; 135 }; 136 }; 137 138... 139