xref: /freebsd/sys/contrib/device-tree/Bindings/phy/mixel,mipi-dsi-phy.yaml (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
1*d5b0e70fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*d5b0e70fSEmmanuel Vadot%YAML 1.2
3*d5b0e70fSEmmanuel Vadot---
4*d5b0e70fSEmmanuel Vadot$id: http://devicetree.org/schemas/phy/mixel,mipi-dsi-phy.yaml#
5*d5b0e70fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*d5b0e70fSEmmanuel Vadot
7*d5b0e70fSEmmanuel Vadottitle: Mixel DSI PHY for i.MX8
8*d5b0e70fSEmmanuel Vadot
9*d5b0e70fSEmmanuel Vadotmaintainers:
10*d5b0e70fSEmmanuel Vadot  - Guido Günther <agx@sigxcpu.org>
11*d5b0e70fSEmmanuel Vadot
12*d5b0e70fSEmmanuel Vadotdescription: |
13*d5b0e70fSEmmanuel Vadot  The Mixel MIPI-DSI PHY IP block is e.g. found on i.MX8 platforms (along the
14*d5b0e70fSEmmanuel Vadot  MIPI-DSI IP from Northwest Logic). It represents the physical layer for the
15*d5b0e70fSEmmanuel Vadot  electrical signals for DSI.
16*d5b0e70fSEmmanuel Vadot
17*d5b0e70fSEmmanuel Vadot  The Mixel PHY IP block found on i.MX8qxp is a combo PHY that can work
18*d5b0e70fSEmmanuel Vadot  in either MIPI-DSI PHY mode or LVDS PHY mode.
19*d5b0e70fSEmmanuel Vadot
20*d5b0e70fSEmmanuel Vadotproperties:
21*d5b0e70fSEmmanuel Vadot  compatible:
22*d5b0e70fSEmmanuel Vadot    enum:
23*d5b0e70fSEmmanuel Vadot      - fsl,imx8mq-mipi-dphy
24*d5b0e70fSEmmanuel Vadot      - fsl,imx8qxp-mipi-dphy
25*d5b0e70fSEmmanuel Vadot
26*d5b0e70fSEmmanuel Vadot  reg:
27*d5b0e70fSEmmanuel Vadot    maxItems: 1
28*d5b0e70fSEmmanuel Vadot
29*d5b0e70fSEmmanuel Vadot  clocks:
30*d5b0e70fSEmmanuel Vadot    maxItems: 1
31*d5b0e70fSEmmanuel Vadot
32*d5b0e70fSEmmanuel Vadot  clock-names:
33*d5b0e70fSEmmanuel Vadot    const: phy_ref
34*d5b0e70fSEmmanuel Vadot
35*d5b0e70fSEmmanuel Vadot  "#phy-cells":
36*d5b0e70fSEmmanuel Vadot    const: 0
37*d5b0e70fSEmmanuel Vadot
38*d5b0e70fSEmmanuel Vadot  fsl,syscon:
39*d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/phandle
40*d5b0e70fSEmmanuel Vadot    description: |
41*d5b0e70fSEmmanuel Vadot      A phandle which points to Control and Status Registers(CSR) module.
42*d5b0e70fSEmmanuel Vadot
43*d5b0e70fSEmmanuel Vadot  power-domains:
44*d5b0e70fSEmmanuel Vadot    maxItems: 1
45*d5b0e70fSEmmanuel Vadot
46*d5b0e70fSEmmanuel Vadotrequired:
47*d5b0e70fSEmmanuel Vadot  - compatible
48*d5b0e70fSEmmanuel Vadot  - reg
49*d5b0e70fSEmmanuel Vadot  - clocks
50*d5b0e70fSEmmanuel Vadot  - clock-names
51*d5b0e70fSEmmanuel Vadot  - "#phy-cells"
52*d5b0e70fSEmmanuel Vadot  - power-domains
53*d5b0e70fSEmmanuel Vadot
54*d5b0e70fSEmmanuel VadotallOf:
55*d5b0e70fSEmmanuel Vadot  - if:
56*d5b0e70fSEmmanuel Vadot      properties:
57*d5b0e70fSEmmanuel Vadot        compatible:
58*d5b0e70fSEmmanuel Vadot          contains:
59*d5b0e70fSEmmanuel Vadot            const: fsl,imx8mq-mipi-dphy
60*d5b0e70fSEmmanuel Vadot    then:
61*d5b0e70fSEmmanuel Vadot      properties:
62*d5b0e70fSEmmanuel Vadot        fsl,syscon: false
63*d5b0e70fSEmmanuel Vadot
64*d5b0e70fSEmmanuel Vadot      required:
65*d5b0e70fSEmmanuel Vadot        - assigned-clocks
66*d5b0e70fSEmmanuel Vadot        - assigned-clock-parents
67*d5b0e70fSEmmanuel Vadot        - assigned-clock-rates
68*d5b0e70fSEmmanuel Vadot
69*d5b0e70fSEmmanuel Vadot  - if:
70*d5b0e70fSEmmanuel Vadot      properties:
71*d5b0e70fSEmmanuel Vadot        compatible:
72*d5b0e70fSEmmanuel Vadot          contains:
73*d5b0e70fSEmmanuel Vadot            const: fsl,imx8qxp-mipi-dphy
74*d5b0e70fSEmmanuel Vadot    then:
75*d5b0e70fSEmmanuel Vadot      properties:
76*d5b0e70fSEmmanuel Vadot        assigned-clocks: false
77*d5b0e70fSEmmanuel Vadot        assigned-clock-parents: false
78*d5b0e70fSEmmanuel Vadot        assigned-clock-rates: false
79*d5b0e70fSEmmanuel Vadot
80*d5b0e70fSEmmanuel Vadot      required:
81*d5b0e70fSEmmanuel Vadot        - fsl,syscon
82*d5b0e70fSEmmanuel Vadot
83*d5b0e70fSEmmanuel VadotadditionalProperties: false
84*d5b0e70fSEmmanuel Vadot
85*d5b0e70fSEmmanuel Vadotexamples:
86*d5b0e70fSEmmanuel Vadot  - |
87*d5b0e70fSEmmanuel Vadot    #include <dt-bindings/clock/imx8mq-clock.h>
88*d5b0e70fSEmmanuel Vadot    dphy: dphy@30a0030 {
89*d5b0e70fSEmmanuel Vadot        compatible = "fsl,imx8mq-mipi-dphy";
90*d5b0e70fSEmmanuel Vadot        reg = <0x30a00300 0x100>;
91*d5b0e70fSEmmanuel Vadot        clocks = <&clk IMX8MQ_CLK_DSI_PHY_REF>;
92*d5b0e70fSEmmanuel Vadot        clock-names = "phy_ref";
93*d5b0e70fSEmmanuel Vadot        assigned-clocks = <&clk IMX8MQ_CLK_DSI_PHY_REF>;
94*d5b0e70fSEmmanuel Vadot        assigned-clock-parents = <&clk IMX8MQ_VIDEO_PLL1_OUT>;
95*d5b0e70fSEmmanuel Vadot        assigned-clock-rates = <24000000>;
96*d5b0e70fSEmmanuel Vadot        #phy-cells = <0>;
97*d5b0e70fSEmmanuel Vadot        power-domains = <&pgc_mipi>;
98*d5b0e70fSEmmanuel Vadot    };
99