1fac71e4eSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0 2fac71e4eSEmmanuel Vadot%YAML 1.2 3fac71e4eSEmmanuel Vadot--- 4fac71e4eSEmmanuel Vadot$id: http://devicetree.org/schemas/display/rockchip/rockchip,dw-mipi-dsi.yaml# 5fac71e4eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6fac71e4eSEmmanuel Vadot 7fac71e4eSEmmanuel Vadottitle: Rockchip specific extensions to the Synopsys Designware MIPI DSI 8fac71e4eSEmmanuel Vadot 9fac71e4eSEmmanuel Vadotmaintainers: 10fac71e4eSEmmanuel Vadot - Sandy Huang <hjc@rock-chips.com> 11fac71e4eSEmmanuel Vadot - Heiko Stuebner <heiko@sntech.de> 12fac71e4eSEmmanuel Vadot 13fac71e4eSEmmanuel Vadotproperties: 14fac71e4eSEmmanuel Vadot compatible: 15fac71e4eSEmmanuel Vadot items: 16fac71e4eSEmmanuel Vadot - enum: 17fac71e4eSEmmanuel Vadot - rockchip,px30-mipi-dsi 18*0e8011faSEmmanuel Vadot - rockchip,rk3128-mipi-dsi 19fac71e4eSEmmanuel Vadot - rockchip,rk3288-mipi-dsi 20fac71e4eSEmmanuel Vadot - rockchip,rk3399-mipi-dsi 21fac71e4eSEmmanuel Vadot - rockchip,rk3568-mipi-dsi 2284943d6fSEmmanuel Vadot - rockchip,rv1126-mipi-dsi 23fac71e4eSEmmanuel Vadot - const: snps,dw-mipi-dsi 24fac71e4eSEmmanuel Vadot 25fac71e4eSEmmanuel Vadot interrupts: 26fac71e4eSEmmanuel Vadot maxItems: 1 27fac71e4eSEmmanuel Vadot 28fac71e4eSEmmanuel Vadot clocks: 29fac71e4eSEmmanuel Vadot minItems: 1 30fac71e4eSEmmanuel Vadot maxItems: 4 31fac71e4eSEmmanuel Vadot 32fac71e4eSEmmanuel Vadot clock-names: 33fac71e4eSEmmanuel Vadot oneOf: 34fac71e4eSEmmanuel Vadot - minItems: 2 35fac71e4eSEmmanuel Vadot items: 36fac71e4eSEmmanuel Vadot - const: ref 37fac71e4eSEmmanuel Vadot - const: pclk 38fac71e4eSEmmanuel Vadot - const: phy_cfg 39fac71e4eSEmmanuel Vadot - const: grf 40fac71e4eSEmmanuel Vadot - const: pclk 41fac71e4eSEmmanuel Vadot 42fac71e4eSEmmanuel Vadot rockchip,grf: 43fac71e4eSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle 44fac71e4eSEmmanuel Vadot description: 45fac71e4eSEmmanuel Vadot This SoC uses GRF regs to switch between vopl/vopb. 46fac71e4eSEmmanuel Vadot 47fac71e4eSEmmanuel Vadot phys: 48fac71e4eSEmmanuel Vadot maxItems: 1 49fac71e4eSEmmanuel Vadot 50fac71e4eSEmmanuel Vadot phy-names: 51fac71e4eSEmmanuel Vadot const: dphy 52fac71e4eSEmmanuel Vadot 53fac71e4eSEmmanuel Vadot "#phy-cells": 54fac71e4eSEmmanuel Vadot const: 0 55fac71e4eSEmmanuel Vadot description: 56fac71e4eSEmmanuel Vadot Defined when in use as ISP phy. 57fac71e4eSEmmanuel Vadot 58fac71e4eSEmmanuel Vadot power-domains: 59fac71e4eSEmmanuel Vadot maxItems: 1 60fac71e4eSEmmanuel Vadot 61fac71e4eSEmmanuel Vadot "#address-cells": 62fac71e4eSEmmanuel Vadot const: 1 63fac71e4eSEmmanuel Vadot 64fac71e4eSEmmanuel Vadot "#size-cells": 65fac71e4eSEmmanuel Vadot const: 0 66fac71e4eSEmmanuel Vadot 67fac71e4eSEmmanuel Vadotrequired: 68fac71e4eSEmmanuel Vadot - compatible 69fac71e4eSEmmanuel Vadot - clocks 70fac71e4eSEmmanuel Vadot - clock-names 71fac71e4eSEmmanuel Vadot - rockchip,grf 72fac71e4eSEmmanuel Vadot 73fac71e4eSEmmanuel VadotallOf: 74fac71e4eSEmmanuel Vadot - $ref: /schemas/display/bridge/snps,dw-mipi-dsi.yaml# 75fac71e4eSEmmanuel Vadot - if: 76fac71e4eSEmmanuel Vadot properties: 77fac71e4eSEmmanuel Vadot compatible: 78fac71e4eSEmmanuel Vadot contains: 79fac71e4eSEmmanuel Vadot enum: 80fac71e4eSEmmanuel Vadot - rockchip,px30-mipi-dsi 81*0e8011faSEmmanuel Vadot - rockchip,rk3128-mipi-dsi 82fac71e4eSEmmanuel Vadot - rockchip,rk3568-mipi-dsi 8384943d6fSEmmanuel Vadot - rockchip,rv1126-mipi-dsi 84fac71e4eSEmmanuel Vadot 85fac71e4eSEmmanuel Vadot then: 86fac71e4eSEmmanuel Vadot properties: 87fac71e4eSEmmanuel Vadot clocks: 88fac71e4eSEmmanuel Vadot maxItems: 1 89fac71e4eSEmmanuel Vadot 90fac71e4eSEmmanuel Vadot clock-names: 91fac71e4eSEmmanuel Vadot maxItems: 1 92fac71e4eSEmmanuel Vadot 93fac71e4eSEmmanuel Vadot required: 94fac71e4eSEmmanuel Vadot - phys 95fac71e4eSEmmanuel Vadot - phy-names 96fac71e4eSEmmanuel Vadot 97fac71e4eSEmmanuel Vadot - if: 98fac71e4eSEmmanuel Vadot properties: 99fac71e4eSEmmanuel Vadot compatible: 100fac71e4eSEmmanuel Vadot contains: 101fac71e4eSEmmanuel Vadot const: rockchip,rk3288-mipi-dsi 102fac71e4eSEmmanuel Vadot 103fac71e4eSEmmanuel Vadot then: 104fac71e4eSEmmanuel Vadot properties: 105fac71e4eSEmmanuel Vadot clocks: 106fac71e4eSEmmanuel Vadot maxItems: 2 107fac71e4eSEmmanuel Vadot 108fac71e4eSEmmanuel Vadot clock-names: 109fac71e4eSEmmanuel Vadot maxItems: 2 110fac71e4eSEmmanuel Vadot 111fac71e4eSEmmanuel Vadot - if: 112fac71e4eSEmmanuel Vadot properties: 113fac71e4eSEmmanuel Vadot compatible: 114fac71e4eSEmmanuel Vadot contains: 115fac71e4eSEmmanuel Vadot const: rockchip,rk3399-mipi-dsi 116fac71e4eSEmmanuel Vadot 117fac71e4eSEmmanuel Vadot then: 118fac71e4eSEmmanuel Vadot properties: 119fac71e4eSEmmanuel Vadot clocks: 120fac71e4eSEmmanuel Vadot minItems: 4 121fac71e4eSEmmanuel Vadot 122fac71e4eSEmmanuel Vadot clock-names: 123fac71e4eSEmmanuel Vadot minItems: 4 124fac71e4eSEmmanuel Vadot 125fac71e4eSEmmanuel VadotunevaluatedProperties: false 126fac71e4eSEmmanuel Vadot 127fac71e4eSEmmanuel Vadotexamples: 128fac71e4eSEmmanuel Vadot - | 129fac71e4eSEmmanuel Vadot #include <dt-bindings/clock/rk3288-cru.h> 130fac71e4eSEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 131fac71e4eSEmmanuel Vadot #include <dt-bindings/interrupt-controller/irq.h> 132fac71e4eSEmmanuel Vadot 133fac71e4eSEmmanuel Vadot mipi_dsi: dsi@ff960000 { 134fac71e4eSEmmanuel Vadot compatible = "rockchip,rk3288-mipi-dsi", "snps,dw-mipi-dsi"; 135fac71e4eSEmmanuel Vadot reg = <0xff960000 0x4000>; 136fac71e4eSEmmanuel Vadot interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>; 137fac71e4eSEmmanuel Vadot clocks = <&cru SCLK_MIPIDSI_24M>, <&cru PCLK_MIPI_DSI0>; 138fac71e4eSEmmanuel Vadot clock-names = "ref", "pclk"; 139fac71e4eSEmmanuel Vadot resets = <&cru SRST_MIPIDSI0>; 140fac71e4eSEmmanuel Vadot reset-names = "apb"; 141fac71e4eSEmmanuel Vadot rockchip,grf = <&grf>; 142fac71e4eSEmmanuel Vadot 143fac71e4eSEmmanuel Vadot ports { 144fac71e4eSEmmanuel Vadot #address-cells = <1>; 145fac71e4eSEmmanuel Vadot #size-cells = <0>; 146fac71e4eSEmmanuel Vadot 147fac71e4eSEmmanuel Vadot mipi_in: port@0 { 148fac71e4eSEmmanuel Vadot reg = <0>; 149fac71e4eSEmmanuel Vadot #address-cells = <1>; 150fac71e4eSEmmanuel Vadot #size-cells = <0>; 151fac71e4eSEmmanuel Vadot 152fac71e4eSEmmanuel Vadot mipi_in_vopb: endpoint@0 { 153fac71e4eSEmmanuel Vadot reg = <0>; 154fac71e4eSEmmanuel Vadot remote-endpoint = <&vopb_out_mipi>; 155fac71e4eSEmmanuel Vadot }; 156fac71e4eSEmmanuel Vadot mipi_in_vopl: endpoint@1 { 157fac71e4eSEmmanuel Vadot reg = <1>; 158fac71e4eSEmmanuel Vadot remote-endpoint = <&vopl_out_mipi>; 159fac71e4eSEmmanuel Vadot }; 160fac71e4eSEmmanuel Vadot }; 161fac71e4eSEmmanuel Vadot 162fac71e4eSEmmanuel Vadot mipi_out: port@1 { 163fac71e4eSEmmanuel Vadot reg = <1>; 164fac71e4eSEmmanuel Vadot 165fac71e4eSEmmanuel Vadot mipi_out_panel: endpoint { 166fac71e4eSEmmanuel Vadot remote-endpoint = <&panel_in_mipi>; 167fac71e4eSEmmanuel Vadot }; 168fac71e4eSEmmanuel Vadot }; 169fac71e4eSEmmanuel Vadot }; 170fac71e4eSEmmanuel Vadot }; 171