1c25b84c0SMaxime Ripard# SPDX-License-Identifier: GPL-2.0
2c25b84c0SMaxime Ripard%YAML 1.2
3c25b84c0SMaxime Ripard---
4e1ff7390SRob Herring$id: http://devicetree.org/schemas/phy/allwinner,sun6i-a31-mipi-dphy.yaml#
5c25b84c0SMaxime Ripard$schema: http://devicetree.org/meta-schemas/core.yaml#
6c25b84c0SMaxime Ripard
7dd3cb467SAndrew Lunntitle: Allwinner A31 MIPI D-PHY Controller
8c25b84c0SMaxime Ripard
9c25b84c0SMaxime Ripardmaintainers:
10c25b84c0SMaxime Ripard  - Chen-Yu Tsai <wens@csie.org>
115c7404bbSMaxime Ripard  - Maxime Ripard <mripard@kernel.org>
12c25b84c0SMaxime Ripard
13c25b84c0SMaxime Ripardproperties:
14c25b84c0SMaxime Ripard  "#phy-cells":
15c25b84c0SMaxime Ripard    const: 0
16c25b84c0SMaxime Ripard
17c25b84c0SMaxime Ripard  compatible:
18db08ca5aSJagan Teki    oneOf:
19db08ca5aSJagan Teki      - const: allwinner,sun6i-a31-mipi-dphy
20db08ca5aSJagan Teki      - items:
21db08ca5aSJagan Teki          - const: allwinner,sun50i-a64-mipi-dphy
22db08ca5aSJagan Teki          - const: allwinner,sun6i-a31-mipi-dphy
23c25b84c0SMaxime Ripard
24c25b84c0SMaxime Ripard  reg:
25c25b84c0SMaxime Ripard    maxItems: 1
26c25b84c0SMaxime Ripard
27*5a0d2df4SSamuel Holland  interrupts:
28*5a0d2df4SSamuel Holland    maxItems: 1
29*5a0d2df4SSamuel Holland
30c25b84c0SMaxime Ripard  clocks:
31c25b84c0SMaxime Ripard    items:
32c25b84c0SMaxime Ripard      - description: Bus Clock
33c25b84c0SMaxime Ripard      - description: Module Clock
34c25b84c0SMaxime Ripard
35c25b84c0SMaxime Ripard  clock-names:
36c25b84c0SMaxime Ripard    items:
37c25b84c0SMaxime Ripard      - const: bus
38c25b84c0SMaxime Ripard      - const: mod
39c25b84c0SMaxime Ripard
40c25b84c0SMaxime Ripard  resets:
41c25b84c0SMaxime Ripard    maxItems: 1
42c25b84c0SMaxime Ripard
43c20f80d0SPaul Kocialkowski  allwinner,direction:
44c20f80d0SPaul Kocialkowski    $ref: '/schemas/types.yaml#/definitions/string'
45c20f80d0SPaul Kocialkowski    description: |
46c20f80d0SPaul Kocialkowski      Direction of the D-PHY:
47c20f80d0SPaul Kocialkowski      - "rx" for receiving (e.g. when used with MIPI CSI-2);
48c20f80d0SPaul Kocialkowski      - "tx" for transmitting (e.g. when used with MIPI DSI).
49c20f80d0SPaul Kocialkowski
50c20f80d0SPaul Kocialkowski    enum:
51c20f80d0SPaul Kocialkowski      - tx
52c20f80d0SPaul Kocialkowski      - rx
53c20f80d0SPaul Kocialkowski    default: tx
54c20f80d0SPaul Kocialkowski
55c25b84c0SMaxime Ripardrequired:
56c25b84c0SMaxime Ripard  - "#phy-cells"
57c25b84c0SMaxime Ripard  - compatible
58c25b84c0SMaxime Ripard  - reg
59*5a0d2df4SSamuel Holland  - interrupts
60c25b84c0SMaxime Ripard  - clocks
61c25b84c0SMaxime Ripard  - clock-names
62c25b84c0SMaxime Ripard  - resets
63c25b84c0SMaxime Ripard
64c25b84c0SMaxime RipardadditionalProperties: false
65c25b84c0SMaxime Ripard
66c25b84c0SMaxime Ripardexamples:
67c25b84c0SMaxime Ripard  - |
68*5a0d2df4SSamuel Holland    #include <dt-bindings/interrupt-controller/arm-gic.h>
69*5a0d2df4SSamuel Holland
70c25b84c0SMaxime Ripard    dphy0: d-phy@1ca1000 {
71c25b84c0SMaxime Ripard        compatible = "allwinner,sun6i-a31-mipi-dphy";
72c25b84c0SMaxime Ripard        reg = <0x01ca1000 0x1000>;
73*5a0d2df4SSamuel Holland        interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>;
74c25b84c0SMaxime Ripard        clocks = <&ccu 23>, <&ccu 97>;
75c25b84c0SMaxime Ripard        clock-names = "bus", "mod";
76c25b84c0SMaxime Ripard        resets = <&ccu 4>;
77c25b84c0SMaxime Ripard        #phy-cells = <0>;
78c25b84c0SMaxime Ripard    };
79c25b84c0SMaxime Ripard
80c25b84c0SMaxime Ripard...
81