1b97ee269SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2b97ee269SEmmanuel Vadot%YAML 1.2 3b97ee269SEmmanuel Vadot--- 4b97ee269SEmmanuel Vadot$id: http://devicetree.org/schemas/display/mediatek/mediatek,dsi.yaml# 5b97ee269SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6b97ee269SEmmanuel Vadot 78bab661aSEmmanuel Vadottitle: MediaTek DSI Controller 8b97ee269SEmmanuel Vadot 9b97ee269SEmmanuel Vadotmaintainers: 10b97ee269SEmmanuel Vadot - Chun-Kuang Hu <chunkuang.hu@kernel.org> 11b97ee269SEmmanuel Vadot - Philipp Zabel <p.zabel@pengutronix.de> 12b97ee269SEmmanuel Vadot - Jitao Shi <jitao.shi@mediatek.com> 13b97ee269SEmmanuel Vadot 14b97ee269SEmmanuel Vadotdescription: | 15b97ee269SEmmanuel Vadot The MediaTek DSI function block is a sink of the display subsystem and can 16b97ee269SEmmanuel Vadot drive up to 4-lane MIPI DSI output. Two DSIs can be synchronized for dual- 17b97ee269SEmmanuel Vadot channel output. 18b97ee269SEmmanuel Vadot 19b97ee269SEmmanuel VadotallOf: 20b97ee269SEmmanuel Vadot - $ref: /schemas/display/dsi-controller.yaml# 21b97ee269SEmmanuel Vadot 22b97ee269SEmmanuel Vadotproperties: 23b97ee269SEmmanuel Vadot compatible: 24f126890aSEmmanuel Vadot oneOf: 25f126890aSEmmanuel Vadot - enum: 26b97ee269SEmmanuel Vadot - mediatek,mt2701-dsi 27b97ee269SEmmanuel Vadot - mediatek,mt7623-dsi 28b97ee269SEmmanuel Vadot - mediatek,mt8167-dsi 29b97ee269SEmmanuel Vadot - mediatek,mt8173-dsi 30b97ee269SEmmanuel Vadot - mediatek,mt8183-dsi 31b97ee269SEmmanuel Vadot - mediatek,mt8186-dsi 3284943d6fSEmmanuel Vadot - mediatek,mt8188-dsi 33f126890aSEmmanuel Vadot - items: 34f126890aSEmmanuel Vadot - enum: 35f126890aSEmmanuel Vadot - mediatek,mt6795-dsi 36f126890aSEmmanuel Vadot - const: mediatek,mt8173-dsi 37*8d13bc63SEmmanuel Vadot - items: 38*8d13bc63SEmmanuel Vadot - enum: 39*8d13bc63SEmmanuel Vadot - mediatek,mt8195-dsi 40*8d13bc63SEmmanuel Vadot - const: mediatek,mt8183-dsi 41b97ee269SEmmanuel Vadot 42b97ee269SEmmanuel Vadot reg: 43b97ee269SEmmanuel Vadot maxItems: 1 44b97ee269SEmmanuel Vadot 45b97ee269SEmmanuel Vadot interrupts: 46b97ee269SEmmanuel Vadot maxItems: 1 47b97ee269SEmmanuel Vadot 48b97ee269SEmmanuel Vadot power-domains: 49b97ee269SEmmanuel Vadot maxItems: 1 50b97ee269SEmmanuel Vadot 51b97ee269SEmmanuel Vadot clocks: 52b97ee269SEmmanuel Vadot items: 53b97ee269SEmmanuel Vadot - description: Engine Clock 54b97ee269SEmmanuel Vadot - description: Digital Clock 55b97ee269SEmmanuel Vadot - description: HS Clock 56b97ee269SEmmanuel Vadot 57b97ee269SEmmanuel Vadot clock-names: 58b97ee269SEmmanuel Vadot items: 59b97ee269SEmmanuel Vadot - const: engine 60b97ee269SEmmanuel Vadot - const: digital 61b97ee269SEmmanuel Vadot - const: hs 62b97ee269SEmmanuel Vadot 63b97ee269SEmmanuel Vadot resets: 64b97ee269SEmmanuel Vadot maxItems: 1 65b97ee269SEmmanuel Vadot 66b97ee269SEmmanuel Vadot phys: 67b97ee269SEmmanuel Vadot maxItems: 1 68b97ee269SEmmanuel Vadot 69b97ee269SEmmanuel Vadot phy-names: 70b97ee269SEmmanuel Vadot items: 71b97ee269SEmmanuel Vadot - const: dphy 72b97ee269SEmmanuel Vadot 73b97ee269SEmmanuel Vadot port: 74b97ee269SEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/port 75b97ee269SEmmanuel Vadot description: 76b97ee269SEmmanuel Vadot Output port node. This port should be connected to the input 77b97ee269SEmmanuel Vadot port of an attached DSI panel or DSI-to-eDP encoder chip. 78b97ee269SEmmanuel Vadot 79b97ee269SEmmanuel Vadotrequired: 80b97ee269SEmmanuel Vadot - compatible 81b97ee269SEmmanuel Vadot - reg 82b97ee269SEmmanuel Vadot - interrupts 83b97ee269SEmmanuel Vadot - power-domains 84b97ee269SEmmanuel Vadot - clocks 85b97ee269SEmmanuel Vadot - clock-names 86b97ee269SEmmanuel Vadot - phys 87b97ee269SEmmanuel Vadot - phy-names 88b97ee269SEmmanuel Vadot - port 89b97ee269SEmmanuel Vadot 90b97ee269SEmmanuel VadotunevaluatedProperties: false 91b97ee269SEmmanuel Vadot 92b97ee269SEmmanuel Vadotexamples: 93b97ee269SEmmanuel Vadot - | 94b97ee269SEmmanuel Vadot #include <dt-bindings/clock/mt8183-clk.h> 95b97ee269SEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 96b97ee269SEmmanuel Vadot #include <dt-bindings/interrupt-controller/irq.h> 97b97ee269SEmmanuel Vadot #include <dt-bindings/power/mt8183-power.h> 98b97ee269SEmmanuel Vadot #include <dt-bindings/phy/phy.h> 99b97ee269SEmmanuel Vadot #include <dt-bindings/reset/mt8183-resets.h> 100b97ee269SEmmanuel Vadot 101b97ee269SEmmanuel Vadot soc { 102b97ee269SEmmanuel Vadot #address-cells = <2>; 103b97ee269SEmmanuel Vadot #size-cells = <2>; 104b97ee269SEmmanuel Vadot 105b97ee269SEmmanuel Vadot dsi0: dsi@14014000 { 106b97ee269SEmmanuel Vadot compatible = "mediatek,mt8183-dsi"; 107b97ee269SEmmanuel Vadot reg = <0 0x14014000 0 0x1000>; 108b97ee269SEmmanuel Vadot interrupts = <GIC_SPI 236 IRQ_TYPE_LEVEL_LOW>; 109b97ee269SEmmanuel Vadot power-domains = <&spm MT8183_POWER_DOMAIN_DISP>; 110b97ee269SEmmanuel Vadot clocks = <&mmsys CLK_MM_DSI0_MM>, 111b97ee269SEmmanuel Vadot <&mmsys CLK_MM_DSI0_IF>, 112b97ee269SEmmanuel Vadot <&mipi_tx0>; 113b97ee269SEmmanuel Vadot clock-names = "engine", "digital", "hs"; 114b97ee269SEmmanuel Vadot resets = <&mmsys MT8183_MMSYS_SW0_RST_B_DISP_DSI0>; 115b97ee269SEmmanuel Vadot phys = <&mipi_tx0>; 116b97ee269SEmmanuel Vadot phy-names = "dphy"; 117b97ee269SEmmanuel Vadot port { 118b97ee269SEmmanuel Vadot dsi0_out: endpoint { 119b97ee269SEmmanuel Vadot remote-endpoint = <&panel_in>; 120b97ee269SEmmanuel Vadot }; 121b97ee269SEmmanuel Vadot }; 122b97ee269SEmmanuel Vadot }; 123b97ee269SEmmanuel Vadot }; 124b97ee269SEmmanuel Vadot 125b97ee269SEmmanuel Vadot... 126