14dbe55c9SKrishna Manikandan# SPDX-License-Identifier: GPL-2.0-only or BSD-2-Clause
24dbe55c9SKrishna Manikandan%YAML 1.2
34dbe55c9SKrishna Manikandan---
44dbe55c9SKrishna Manikandan$id: http://devicetree.org/schemas/display/msm/dsi-controller-main.yaml#
54dbe55c9SKrishna Manikandan$schema: http://devicetree.org/meta-schemas/core.yaml#
64dbe55c9SKrishna Manikandan
74dbe55c9SKrishna Manikandantitle: Qualcomm Display DSI controller
84dbe55c9SKrishna Manikandan
94dbe55c9SKrishna Manikandanmaintainers:
10cce65bb2SKrishna Manikandan  - Krishna Manikandan <quic_mkrishn@quicinc.com>
114dbe55c9SKrishna Manikandan
124dbe55c9SKrishna Manikandanproperties:
134dbe55c9SKrishna Manikandan  compatible:
140c0f65c6SBryan O'Donoghue    oneOf:
150c0f65c6SBryan O'Donoghue      - items:
160c0f65c6SBryan O'Donoghue          - enum:
170c0f65c6SBryan O'Donoghue              - qcom,apq8064-dsi-ctrl
180c0f65c6SBryan O'Donoghue              - qcom,msm8916-dsi-ctrl
190c0f65c6SBryan O'Donoghue              - qcom,msm8953-dsi-ctrl
200c0f65c6SBryan O'Donoghue              - qcom,msm8974-dsi-ctrl
210c0f65c6SBryan O'Donoghue              - qcom,msm8996-dsi-ctrl
220c0f65c6SBryan O'Donoghue              - qcom,msm8998-dsi-ctrl
230c0f65c6SBryan O'Donoghue              - qcom,qcm2290-dsi-ctrl
240c0f65c6SBryan O'Donoghue              - qcom,sc7180-dsi-ctrl
250c0f65c6SBryan O'Donoghue              - qcom,sc7280-dsi-ctrl
260c0f65c6SBryan O'Donoghue              - qcom,sdm660-dsi-ctrl
270c0f65c6SBryan O'Donoghue              - qcom,sdm845-dsi-ctrl
280c0f65c6SBryan O'Donoghue              - qcom,sm8150-dsi-ctrl
290c0f65c6SBryan O'Donoghue              - qcom,sm8250-dsi-ctrl
300c0f65c6SBryan O'Donoghue              - qcom,sm8350-dsi-ctrl
310c0f65c6SBryan O'Donoghue              - qcom,sm8450-dsi-ctrl
320c0f65c6SBryan O'Donoghue              - qcom,sm8550-dsi-ctrl
330c0f65c6SBryan O'Donoghue          - const: qcom,mdss-dsi-ctrl
340c0f65c6SBryan O'Donoghue      - items:
350c0f65c6SBryan O'Donoghue          - enum:
360c0f65c6SBryan O'Donoghue              - dsi-ctrl-6g-qcm2290
370c0f65c6SBryan O'Donoghue          - const: qcom,mdss-dsi-ctrl
380c0f65c6SBryan O'Donoghue        deprecated: true
394dbe55c9SKrishna Manikandan
404dbe55c9SKrishna Manikandan  reg:
414dbe55c9SKrishna Manikandan    maxItems: 1
424dbe55c9SKrishna Manikandan
434dbe55c9SKrishna Manikandan  reg-names:
444dbe55c9SKrishna Manikandan    const: dsi_ctrl
454dbe55c9SKrishna Manikandan
464dbe55c9SKrishna Manikandan  interrupts:
474dbe55c9SKrishna Manikandan    maxItems: 1
484dbe55c9SKrishna Manikandan
494dbe55c9SKrishna Manikandan  clocks:
50d10bdc6eSBryan O'Donoghue    description: |
51d10bdc6eSBryan O'Donoghue      Several clocks are used, depending on the variant. Typical ones are::
52d10bdc6eSBryan O'Donoghue       - bus:: Display AHB clock.
53d10bdc6eSBryan O'Donoghue       - byte:: Display byte clock.
54d10bdc6eSBryan O'Donoghue       - byte_intf:: Display byte interface clock.
55d10bdc6eSBryan O'Donoghue       - core:: Display core clock.
56d10bdc6eSBryan O'Donoghue       - core_mss:: Core MultiMedia SubSystem clock.
57d10bdc6eSBryan O'Donoghue       - iface:: Display AXI clock.
58d10bdc6eSBryan O'Donoghue       - mdp_core:: MDP Core clock.
59d10bdc6eSBryan O'Donoghue       - mnoc:: MNOC clock
60d10bdc6eSBryan O'Donoghue       - pixel:: Display pixel clock.
61d10bdc6eSBryan O'Donoghue    minItems: 3
62d10bdc6eSBryan O'Donoghue    maxItems: 9
634dbe55c9SKrishna Manikandan
644dbe55c9SKrishna Manikandan  clock-names:
65d10bdc6eSBryan O'Donoghue    minItems: 3
66d10bdc6eSBryan O'Donoghue    maxItems: 9
674dbe55c9SKrishna Manikandan
684dbe55c9SKrishna Manikandan  phys:
694dbe55c9SKrishna Manikandan    maxItems: 1
704dbe55c9SKrishna Manikandan
714dbe55c9SKrishna Manikandan  phy-names:
72c5415562SBryan O'Donoghue    deprecated: true
734dbe55c9SKrishna Manikandan    const: dsi
744dbe55c9SKrishna Manikandan
754dbe55c9SKrishna Manikandan  syscon-sfpb:
764dbe55c9SKrishna Manikandan    description: A phandle to mmss_sfpb syscon node (only for DSIv2).
774dbe55c9SKrishna Manikandan    $ref: "/schemas/types.yaml#/definitions/phandle"
784dbe55c9SKrishna Manikandan
794dbe55c9SKrishna Manikandan  qcom,dual-dsi-mode:
804dbe55c9SKrishna Manikandan    type: boolean
814dbe55c9SKrishna Manikandan    description: |
824dbe55c9SKrishna Manikandan      Indicates if the DSI controller is driving a panel which needs
834dbe55c9SKrishna Manikandan      2 DSI links.
844dbe55c9SKrishna Manikandan
85061a9aeaSDmitry Baryshkov  assigned-clocks:
86061a9aeaSDmitry Baryshkov    maxItems: 2
87061a9aeaSDmitry Baryshkov    description: |
88061a9aeaSDmitry Baryshkov      Parents of "byte" and "pixel" for the given platform.
89061a9aeaSDmitry Baryshkov
90061a9aeaSDmitry Baryshkov  assigned-clock-parents:
91061a9aeaSDmitry Baryshkov    maxItems: 2
92061a9aeaSDmitry Baryshkov    description: |
93061a9aeaSDmitry Baryshkov      The Byte clock and Pixel clock PLL outputs provided by a DSI PHY block.
94061a9aeaSDmitry Baryshkov
954dbe55c9SKrishna Manikandan  power-domains:
964dbe55c9SKrishna Manikandan    maxItems: 1
974dbe55c9SKrishna Manikandan
984dbe55c9SKrishna Manikandan  operating-points-v2: true
994dbe55c9SKrishna Manikandan
100bac4ccceSDmitry Baryshkov  opp-table:
101bac4ccceSDmitry Baryshkov    type: object
102bac4ccceSDmitry Baryshkov
1034dbe55c9SKrishna Manikandan  ports:
1044dbe55c9SKrishna Manikandan    $ref: "/schemas/graph.yaml#/properties/ports"
1054dbe55c9SKrishna Manikandan    description: |
1064dbe55c9SKrishna Manikandan      Contains DSI controller input and output ports as children, each
1074dbe55c9SKrishna Manikandan      containing one endpoint subnode.
1084dbe55c9SKrishna Manikandan
1094dbe55c9SKrishna Manikandan    properties:
1104dbe55c9SKrishna Manikandan      port@0:
111b4db237eSRob Herring        $ref: "/schemas/graph.yaml#/$defs/port-base"
112b4db237eSRob Herring        unevaluatedProperties: false
1134dbe55c9SKrishna Manikandan        description: |
1144dbe55c9SKrishna Manikandan          Input endpoints of the controller.
1154dbe55c9SKrishna Manikandan        properties:
1164dbe55c9SKrishna Manikandan          endpoint:
1174dbe55c9SKrishna Manikandan            $ref: /schemas/media/video-interfaces.yaml#
1184dbe55c9SKrishna Manikandan            unevaluatedProperties: false
1194dbe55c9SKrishna Manikandan            properties:
1204dbe55c9SKrishna Manikandan              data-lanes:
1214dbe55c9SKrishna Manikandan                maxItems: 4
1224dbe55c9SKrishna Manikandan                minItems: 4
1234dbe55c9SKrishna Manikandan                items:
1244dbe55c9SKrishna Manikandan                  enum: [ 0, 1, 2, 3 ]
1254dbe55c9SKrishna Manikandan
1264dbe55c9SKrishna Manikandan      port@1:
127b4db237eSRob Herring        $ref: "/schemas/graph.yaml#/$defs/port-base"
128b4db237eSRob Herring        unevaluatedProperties: false
1294dbe55c9SKrishna Manikandan        description: |
1304dbe55c9SKrishna Manikandan          Output endpoints of the controller.
1314dbe55c9SKrishna Manikandan        properties:
1324dbe55c9SKrishna Manikandan          endpoint:
1334dbe55c9SKrishna Manikandan            $ref: /schemas/media/video-interfaces.yaml#
1344dbe55c9SKrishna Manikandan            unevaluatedProperties: false
1354dbe55c9SKrishna Manikandan            properties:
1364dbe55c9SKrishna Manikandan              data-lanes:
1374dbe55c9SKrishna Manikandan                maxItems: 4
1384dbe55c9SKrishna Manikandan                minItems: 4
1394dbe55c9SKrishna Manikandan                items:
1404dbe55c9SKrishna Manikandan                  enum: [ 0, 1, 2, 3 ]
1414dbe55c9SKrishna Manikandan
1424dbe55c9SKrishna Manikandan    required:
1434dbe55c9SKrishna Manikandan      - port@0
1444dbe55c9SKrishna Manikandan      - port@1
1454dbe55c9SKrishna Manikandan
146adf6a3ebSBryan O'Donoghue  vdd-supply:
147adf6a3ebSBryan O'Donoghue    description:
148adf6a3ebSBryan O'Donoghue      VDD regulator
149adf6a3ebSBryan O'Donoghue
150adf6a3ebSBryan O'Donoghue  vddio-supply:
151adf6a3ebSBryan O'Donoghue    description:
152adf6a3ebSBryan O'Donoghue      VDD-IO regulator
153adf6a3ebSBryan O'Donoghue
154adf6a3ebSBryan O'Donoghue  vdda-supply:
155adf6a3ebSBryan O'Donoghue    description:
156adf6a3ebSBryan O'Donoghue      VDDA regulator
157adf6a3ebSBryan O'Donoghue
1584dbe55c9SKrishna Manikandanrequired:
1594dbe55c9SKrishna Manikandan  - compatible
1604dbe55c9SKrishna Manikandan  - reg
1614dbe55c9SKrishna Manikandan  - reg-names
1624dbe55c9SKrishna Manikandan  - interrupts
1634dbe55c9SKrishna Manikandan  - clocks
1644dbe55c9SKrishna Manikandan  - clock-names
1654dbe55c9SKrishna Manikandan  - phys
166061a9aeaSDmitry Baryshkov  - assigned-clocks
167061a9aeaSDmitry Baryshkov  - assigned-clock-parents
1684dbe55c9SKrishna Manikandan  - ports
1694dbe55c9SKrishna Manikandan
170d10bdc6eSBryan O'DonoghueallOf:
171d10bdc6eSBryan O'Donoghue  - $ref: ../dsi-controller.yaml#
172d10bdc6eSBryan O'Donoghue  - if:
173d10bdc6eSBryan O'Donoghue      properties:
174d10bdc6eSBryan O'Donoghue        compatible:
175d10bdc6eSBryan O'Donoghue          contains:
176d10bdc6eSBryan O'Donoghue            enum:
177d10bdc6eSBryan O'Donoghue              - qcom,apq8064-dsi-ctrl
178d10bdc6eSBryan O'Donoghue    then:
179d10bdc6eSBryan O'Donoghue      properties:
180d10bdc6eSBryan O'Donoghue        clocks:
181d10bdc6eSBryan O'Donoghue          maxItems: 7
182d10bdc6eSBryan O'Donoghue        clock-names:
183d10bdc6eSBryan O'Donoghue          items:
184d10bdc6eSBryan O'Donoghue            - const: iface
185d10bdc6eSBryan O'Donoghue            - const: bus
186d10bdc6eSBryan O'Donoghue            - const: core_mmss
187d10bdc6eSBryan O'Donoghue            - const: src
188d10bdc6eSBryan O'Donoghue            - const: byte
189d10bdc6eSBryan O'Donoghue            - const: pixel
190d10bdc6eSBryan O'Donoghue            - const: core
191d10bdc6eSBryan O'Donoghue
192d10bdc6eSBryan O'Donoghue  - if:
193d10bdc6eSBryan O'Donoghue      properties:
194d10bdc6eSBryan O'Donoghue        compatible:
195d10bdc6eSBryan O'Donoghue          contains:
196d10bdc6eSBryan O'Donoghue            enum:
197d10bdc6eSBryan O'Donoghue              - qcom,msm8916-dsi-ctrl
198d10bdc6eSBryan O'Donoghue    then:
199d10bdc6eSBryan O'Donoghue      properties:
200d10bdc6eSBryan O'Donoghue        clocks:
201d10bdc6eSBryan O'Donoghue          maxItems: 6
202d10bdc6eSBryan O'Donoghue        clock-names:
203d10bdc6eSBryan O'Donoghue          items:
204d10bdc6eSBryan O'Donoghue            - const: mdp_core
205d10bdc6eSBryan O'Donoghue            - const: iface
206d10bdc6eSBryan O'Donoghue            - const: bus
207d10bdc6eSBryan O'Donoghue            - const: byte
208d10bdc6eSBryan O'Donoghue            - const: pixel
209d10bdc6eSBryan O'Donoghue            - const: core
210d10bdc6eSBryan O'Donoghue
211d10bdc6eSBryan O'Donoghue  - if:
212d10bdc6eSBryan O'Donoghue      properties:
213d10bdc6eSBryan O'Donoghue        compatible:
214d10bdc6eSBryan O'Donoghue          contains:
215d10bdc6eSBryan O'Donoghue            enum:
216d10bdc6eSBryan O'Donoghue              - qcom,msm8953-dsi-ctrl
217d10bdc6eSBryan O'Donoghue    then:
218d10bdc6eSBryan O'Donoghue      properties:
219d10bdc6eSBryan O'Donoghue        clocks:
220d10bdc6eSBryan O'Donoghue          maxItems: 6
221d10bdc6eSBryan O'Donoghue        clock-names:
222d10bdc6eSBryan O'Donoghue          items:
223d10bdc6eSBryan O'Donoghue            - const: mdp_core
224d10bdc6eSBryan O'Donoghue            - const: iface
225d10bdc6eSBryan O'Donoghue            - const: bus
226d10bdc6eSBryan O'Donoghue            - const: byte
227d10bdc6eSBryan O'Donoghue            - const: pixel
228d10bdc6eSBryan O'Donoghue            - const: core
229d10bdc6eSBryan O'Donoghue
230d10bdc6eSBryan O'Donoghue  - if:
231d10bdc6eSBryan O'Donoghue      properties:
232d10bdc6eSBryan O'Donoghue        compatible:
233d10bdc6eSBryan O'Donoghue          contains:
234d10bdc6eSBryan O'Donoghue            enum:
235d10bdc6eSBryan O'Donoghue              - qcom,msm8974-dsi-ctrl
236d10bdc6eSBryan O'Donoghue    then:
237d10bdc6eSBryan O'Donoghue      properties:
238d10bdc6eSBryan O'Donoghue        clocks:
239d10bdc6eSBryan O'Donoghue          maxItems: 7
240d10bdc6eSBryan O'Donoghue        clock-names:
241d10bdc6eSBryan O'Donoghue          items:
242d10bdc6eSBryan O'Donoghue            - const: mdp_core
243d10bdc6eSBryan O'Donoghue            - const: iface
244d10bdc6eSBryan O'Donoghue            - const: bus
245d10bdc6eSBryan O'Donoghue            - const: byte
246d10bdc6eSBryan O'Donoghue            - const: pixel
247d10bdc6eSBryan O'Donoghue            - const: core
248d10bdc6eSBryan O'Donoghue            - const: core_mmss
249d10bdc6eSBryan O'Donoghue
250d10bdc6eSBryan O'Donoghue  - if:
251d10bdc6eSBryan O'Donoghue      properties:
252d10bdc6eSBryan O'Donoghue        compatible:
253d10bdc6eSBryan O'Donoghue          contains:
254d10bdc6eSBryan O'Donoghue            enum:
255d10bdc6eSBryan O'Donoghue              - qcom,msm8996-dsi-ctrl
256d10bdc6eSBryan O'Donoghue    then:
257d10bdc6eSBryan O'Donoghue      properties:
258d10bdc6eSBryan O'Donoghue        clocks:
259d10bdc6eSBryan O'Donoghue          maxItems: 7
260d10bdc6eSBryan O'Donoghue        clock-names:
261d10bdc6eSBryan O'Donoghue          items:
262d10bdc6eSBryan O'Donoghue            - const: mdp_core
263d10bdc6eSBryan O'Donoghue            - const: byte
264d10bdc6eSBryan O'Donoghue            - const: iface
265d10bdc6eSBryan O'Donoghue            - const: bus
266d10bdc6eSBryan O'Donoghue            - const: core_mmss
267d10bdc6eSBryan O'Donoghue            - const: pixel
268d10bdc6eSBryan O'Donoghue            - const: core
269d10bdc6eSBryan O'Donoghue
270d10bdc6eSBryan O'Donoghue  - if:
271d10bdc6eSBryan O'Donoghue      properties:
272d10bdc6eSBryan O'Donoghue        compatible:
273d10bdc6eSBryan O'Donoghue          contains:
274d10bdc6eSBryan O'Donoghue            enum:
275d10bdc6eSBryan O'Donoghue              - qcom,msm8998-dsi-ctrl
276d10bdc6eSBryan O'Donoghue    then:
277d10bdc6eSBryan O'Donoghue      properties:
278d10bdc6eSBryan O'Donoghue        clocks:
279d10bdc6eSBryan O'Donoghue          maxItems: 6
280d10bdc6eSBryan O'Donoghue        clock-names:
281d10bdc6eSBryan O'Donoghue          items:
282d10bdc6eSBryan O'Donoghue            - const: byte
283d10bdc6eSBryan O'Donoghue            - const: byte_intf
284d10bdc6eSBryan O'Donoghue            - const: pixel
285d10bdc6eSBryan O'Donoghue            - const: core
286d10bdc6eSBryan O'Donoghue            - const: iface
287d10bdc6eSBryan O'Donoghue            - const: bus
288d10bdc6eSBryan O'Donoghue
289d10bdc6eSBryan O'Donoghue  - if:
290d10bdc6eSBryan O'Donoghue      properties:
291d10bdc6eSBryan O'Donoghue        compatible:
292d10bdc6eSBryan O'Donoghue          contains:
293d10bdc6eSBryan O'Donoghue            enum:
294d10bdc6eSBryan O'Donoghue              - qcom,sc7180-dsi-ctrl
295d10bdc6eSBryan O'Donoghue              - qcom,sc7280-dsi-ctrl
296d10bdc6eSBryan O'Donoghue              - qcom,sm8150-dsi-ctrl
297d10bdc6eSBryan O'Donoghue              - qcom,sm8250-dsi-ctrl
298d10bdc6eSBryan O'Donoghue              - qcom,sm8350-dsi-ctrl
299d10bdc6eSBryan O'Donoghue              - qcom,sm8450-dsi-ctrl
300d10bdc6eSBryan O'Donoghue              - qcom,sm8550-dsi-ctrl
301d10bdc6eSBryan O'Donoghue    then:
302d10bdc6eSBryan O'Donoghue      properties:
303d10bdc6eSBryan O'Donoghue        clocks:
304d10bdc6eSBryan O'Donoghue          maxItems: 6
305d10bdc6eSBryan O'Donoghue        clock-names:
306d10bdc6eSBryan O'Donoghue          items:
307d10bdc6eSBryan O'Donoghue            - const: byte
308d10bdc6eSBryan O'Donoghue            - const: byte_intf
309d10bdc6eSBryan O'Donoghue            - const: pixel
310d10bdc6eSBryan O'Donoghue            - const: core
311d10bdc6eSBryan O'Donoghue            - const: iface
312d10bdc6eSBryan O'Donoghue            - const: bus
313d10bdc6eSBryan O'Donoghue
314d10bdc6eSBryan O'Donoghue  - if:
315d10bdc6eSBryan O'Donoghue      properties:
316d10bdc6eSBryan O'Donoghue        compatible:
317d10bdc6eSBryan O'Donoghue          contains:
318d10bdc6eSBryan O'Donoghue            enum:
319d10bdc6eSBryan O'Donoghue              - qcom,sdm660-dsi-ctrl
320d10bdc6eSBryan O'Donoghue    then:
321d10bdc6eSBryan O'Donoghue      properties:
322d10bdc6eSBryan O'Donoghue        clocks:
323d10bdc6eSBryan O'Donoghue          maxItems: 9
324d10bdc6eSBryan O'Donoghue        clock-names:
325d10bdc6eSBryan O'Donoghue          items:
326d10bdc6eSBryan O'Donoghue            - const: mdp_core
327d10bdc6eSBryan O'Donoghue            - const: byte
328d10bdc6eSBryan O'Donoghue            - const: byte_intf
329d10bdc6eSBryan O'Donoghue            - const: mnoc
330d10bdc6eSBryan O'Donoghue            - const: iface
331d10bdc6eSBryan O'Donoghue            - const: bus
332d10bdc6eSBryan O'Donoghue            - const: core_mmss
333d10bdc6eSBryan O'Donoghue            - const: pixel
334d10bdc6eSBryan O'Donoghue            - const: core
335d10bdc6eSBryan O'Donoghue
336d10bdc6eSBryan O'Donoghue  - if:
337d10bdc6eSBryan O'Donoghue      properties:
338d10bdc6eSBryan O'Donoghue        compatible:
339d10bdc6eSBryan O'Donoghue          contains:
340d10bdc6eSBryan O'Donoghue            enum:
341d10bdc6eSBryan O'Donoghue              - qcom,sdm845-dsi-ctrl
342d10bdc6eSBryan O'Donoghue    then:
343d10bdc6eSBryan O'Donoghue      properties:
344d10bdc6eSBryan O'Donoghue        clocks:
345d10bdc6eSBryan O'Donoghue          maxItems: 6
346d10bdc6eSBryan O'Donoghue        clock-names:
347d10bdc6eSBryan O'Donoghue          items:
348d10bdc6eSBryan O'Donoghue            - const: byte
349d10bdc6eSBryan O'Donoghue            - const: byte_intf
350d10bdc6eSBryan O'Donoghue            - const: pixel
351d10bdc6eSBryan O'Donoghue            - const: core
352d10bdc6eSBryan O'Donoghue            - const: iface
353d10bdc6eSBryan O'Donoghue            - const: bus
354d10bdc6eSBryan O'Donoghue
355*65e83594SDmitry BaryshkovunevaluatedProperties: false
3564dbe55c9SKrishna Manikandan
3574dbe55c9SKrishna Manikandanexamples:
3584dbe55c9SKrishna Manikandan  - |
3594dbe55c9SKrishna Manikandan     #include <dt-bindings/interrupt-controller/arm-gic.h>
3604dbe55c9SKrishna Manikandan     #include <dt-bindings/clock/qcom,dispcc-sdm845.h>
3614dbe55c9SKrishna Manikandan     #include <dt-bindings/clock/qcom,gcc-sdm845.h>
3624dbe55c9SKrishna Manikandan     #include <dt-bindings/power/qcom-rpmpd.h>
3634dbe55c9SKrishna Manikandan
3644dbe55c9SKrishna Manikandan     dsi@ae94000 {
3650c0f65c6SBryan O'Donoghue           compatible = "qcom,sc7180-dsi-ctrl", "qcom,mdss-dsi-ctrl";
3664dbe55c9SKrishna Manikandan           reg = <0x0ae94000 0x400>;
3674dbe55c9SKrishna Manikandan           reg-names = "dsi_ctrl";
3684dbe55c9SKrishna Manikandan
3694dbe55c9SKrishna Manikandan           #address-cells = <1>;
3704dbe55c9SKrishna Manikandan           #size-cells = <0>;
3714dbe55c9SKrishna Manikandan
3724dbe55c9SKrishna Manikandan           interrupt-parent = <&mdss>;
3734dbe55c9SKrishna Manikandan           interrupts = <4>;
3744dbe55c9SKrishna Manikandan
3754dbe55c9SKrishna Manikandan           clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK>,
3764dbe55c9SKrishna Manikandan                    <&dispcc DISP_CC_MDSS_BYTE0_INTF_CLK>,
3774dbe55c9SKrishna Manikandan                    <&dispcc DISP_CC_MDSS_PCLK0_CLK>,
3784dbe55c9SKrishna Manikandan                    <&dispcc DISP_CC_MDSS_ESC0_CLK>,
3794dbe55c9SKrishna Manikandan                    <&dispcc DISP_CC_MDSS_AHB_CLK>,
3804dbe55c9SKrishna Manikandan                    <&dispcc DISP_CC_MDSS_AXI_CLK>;
3814dbe55c9SKrishna Manikandan           clock-names = "byte",
3824dbe55c9SKrishna Manikandan                         "byte_intf",
3834dbe55c9SKrishna Manikandan                         "pixel",
3844dbe55c9SKrishna Manikandan                         "core",
3854dbe55c9SKrishna Manikandan                         "iface",
3864dbe55c9SKrishna Manikandan                         "bus";
3874dbe55c9SKrishna Manikandan
3884dbe55c9SKrishna Manikandan           phys = <&dsi0_phy>;
3894dbe55c9SKrishna Manikandan           phy-names = "dsi";
3904dbe55c9SKrishna Manikandan
391061a9aeaSDmitry Baryshkov           assigned-clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK_SRC>, <&dispcc DISP_CC_MDSS_PCLK0_CLK_SRC>;
392061a9aeaSDmitry Baryshkov           assigned-clock-parents = <&dsi_phy 0>, <&dsi_phy 1>;
393061a9aeaSDmitry Baryshkov
3944dbe55c9SKrishna Manikandan           power-domains = <&rpmhpd SC7180_CX>;
3954dbe55c9SKrishna Manikandan           operating-points-v2 = <&dsi_opp_table>;
3964dbe55c9SKrishna Manikandan
3974dbe55c9SKrishna Manikandan           ports {
3984dbe55c9SKrishna Manikandan                  #address-cells = <1>;
3994dbe55c9SKrishna Manikandan                  #size-cells = <0>;
4004dbe55c9SKrishna Manikandan
4014dbe55c9SKrishna Manikandan                  port@0 {
4024dbe55c9SKrishna Manikandan                          reg = <0>;
4034dbe55c9SKrishna Manikandan                          dsi0_in: endpoint {
4044dbe55c9SKrishna Manikandan                                   remote-endpoint = <&dpu_intf1_out>;
4054dbe55c9SKrishna Manikandan                          };
4064dbe55c9SKrishna Manikandan                  };
4074dbe55c9SKrishna Manikandan
4084dbe55c9SKrishna Manikandan                  port@1 {
4094dbe55c9SKrishna Manikandan                          reg = <1>;
4104dbe55c9SKrishna Manikandan                          dsi0_out: endpoint {
4114dbe55c9SKrishna Manikandan                                   remote-endpoint = <&sn65dsi86_in>;
4124dbe55c9SKrishna Manikandan                                   data-lanes = <0 1 2 3>;
4134dbe55c9SKrishna Manikandan                          };
4144dbe55c9SKrishna Manikandan                  };
4154dbe55c9SKrishna Manikandan           };
4164dbe55c9SKrishna Manikandan     };
4174dbe55c9SKrishna Manikandan...
418