xref: /linux/Documentation/devicetree/bindings/phy/hisilicon,inno-usb2-phy.yaml (revision 8582976acc8504cec53a7b6fed493435eba8437f)
1*7cc5efcdSRob Herring (Arm)# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*7cc5efcdSRob Herring (Arm)%YAML 1.2
3*7cc5efcdSRob Herring (Arm)---
4*7cc5efcdSRob Herring (Arm)$id: http://devicetree.org/schemas/phy/hisilicon,inno-usb2-phy.yaml#
5*7cc5efcdSRob Herring (Arm)$schema: http://devicetree.org/meta-schemas/core.yaml#
6*7cc5efcdSRob Herring (Arm)
7*7cc5efcdSRob Herring (Arm)title: HiSilicon INNO USB2 PHY
8*7cc5efcdSRob Herring (Arm)
9*7cc5efcdSRob Herring (Arm)maintainers:
10*7cc5efcdSRob Herring (Arm)  - Pengcheng Li <lpc.li@hisilicon.com>
11*7cc5efcdSRob Herring (Arm)
12*7cc5efcdSRob Herring (Arm)description:
13*7cc5efcdSRob Herring (Arm)  The INNO USB2 PHY device should be a child node of peripheral controller that
14*7cc5efcdSRob Herring (Arm)  contains the PHY configuration register, and each device supports up to 2 PHY
15*7cc5efcdSRob Herring (Arm)  ports which are represented as child nodes of INNO USB2 PHY device.
16*7cc5efcdSRob Herring (Arm)
17*7cc5efcdSRob Herring (Arm)properties:
18*7cc5efcdSRob Herring (Arm)  compatible:
19*7cc5efcdSRob Herring (Arm)    enum:
20*7cc5efcdSRob Herring (Arm)      - hisilicon,hi3798cv200-usb2-phy
21*7cc5efcdSRob Herring (Arm)      - hisilicon,hi3798mv100-usb2-phy
22*7cc5efcdSRob Herring (Arm)      - hisilicon,inno-usb2-phy
23*7cc5efcdSRob Herring (Arm)
24*7cc5efcdSRob Herring (Arm)  reg:
25*7cc5efcdSRob Herring (Arm)    maxItems: 1
26*7cc5efcdSRob Herring (Arm)
27*7cc5efcdSRob Herring (Arm)  clocks:
28*7cc5efcdSRob Herring (Arm)    maxItems: 1
29*7cc5efcdSRob Herring (Arm)
30*7cc5efcdSRob Herring (Arm)  resets:
31*7cc5efcdSRob Herring (Arm)    maxItems: 1
32*7cc5efcdSRob Herring (Arm)
33*7cc5efcdSRob Herring (Arm)  "#address-cells":
34*7cc5efcdSRob Herring (Arm)    const: 1
35*7cc5efcdSRob Herring (Arm)
36*7cc5efcdSRob Herring (Arm)  "#size-cells":
37*7cc5efcdSRob Herring (Arm)    const: 0
38*7cc5efcdSRob Herring (Arm)
39*7cc5efcdSRob Herring (Arm)patternProperties:
40*7cc5efcdSRob Herring (Arm)  "^phy@[0-1]$":
41*7cc5efcdSRob Herring (Arm)    description: PHY port subnode
42*7cc5efcdSRob Herring (Arm)    type: object
43*7cc5efcdSRob Herring (Arm)    additionalProperties: false
44*7cc5efcdSRob Herring (Arm)
45*7cc5efcdSRob Herring (Arm)    properties:
46*7cc5efcdSRob Herring (Arm)      reg:
47*7cc5efcdSRob Herring (Arm)        maximum: 1
48*7cc5efcdSRob Herring (Arm)
49*7cc5efcdSRob Herring (Arm)      "#phy-cells":
50*7cc5efcdSRob Herring (Arm)        const: 0
51*7cc5efcdSRob Herring (Arm)
52*7cc5efcdSRob Herring (Arm)      resets:
53*7cc5efcdSRob Herring (Arm)        maxItems: 1
54*7cc5efcdSRob Herring (Arm)
55*7cc5efcdSRob Herring (Arm)    required:
56*7cc5efcdSRob Herring (Arm)      - reg
57*7cc5efcdSRob Herring (Arm)      - "#phy-cells"
58*7cc5efcdSRob Herring (Arm)      - resets
59*7cc5efcdSRob Herring (Arm)
60*7cc5efcdSRob Herring (Arm)required:
61*7cc5efcdSRob Herring (Arm)  - compatible
62*7cc5efcdSRob Herring (Arm)  - reg
63*7cc5efcdSRob Herring (Arm)  - clocks
64*7cc5efcdSRob Herring (Arm)  - resets
65*7cc5efcdSRob Herring (Arm)  - "#address-cells"
66*7cc5efcdSRob Herring (Arm)  - "#size-cells"
67*7cc5efcdSRob Herring (Arm)
68*7cc5efcdSRob Herring (Arm)additionalProperties: false
69*7cc5efcdSRob Herring (Arm)
70*7cc5efcdSRob Herring (Arm)examples:
71*7cc5efcdSRob Herring (Arm)  - |
72*7cc5efcdSRob Herring (Arm)    #include <dt-bindings/clock/histb-clock.h>
73*7cc5efcdSRob Herring (Arm)
74*7cc5efcdSRob Herring (Arm)    usb2-phy@120 {
75*7cc5efcdSRob Herring (Arm)        compatible = "hisilicon,hi3798cv200-usb2-phy";
76*7cc5efcdSRob Herring (Arm)        reg = <0x120 0x4>;
77*7cc5efcdSRob Herring (Arm)        clocks = <&crg HISTB_USB2_PHY1_REF_CLK>;
78*7cc5efcdSRob Herring (Arm)        resets = <&crg 0xbc 4>;
79*7cc5efcdSRob Herring (Arm)        #address-cells = <1>;
80*7cc5efcdSRob Herring (Arm)        #size-cells = <0>;
81*7cc5efcdSRob Herring (Arm)
82*7cc5efcdSRob Herring (Arm)        phy@0 {
83*7cc5efcdSRob Herring (Arm)            reg = <0>;
84*7cc5efcdSRob Herring (Arm)            #phy-cells = <0>;
85*7cc5efcdSRob Herring (Arm)            resets = <&crg 0xbc 8>;
86*7cc5efcdSRob Herring (Arm)        };
87*7cc5efcdSRob Herring (Arm)
88*7cc5efcdSRob Herring (Arm)        phy@1 {
89*7cc5efcdSRob Herring (Arm)            reg = <1>;
90*7cc5efcdSRob Herring (Arm)            #phy-cells = <0>;
91*7cc5efcdSRob Herring (Arm)            resets = <&crg 0xbc 9>;
92*7cc5efcdSRob Herring (Arm)        };
93*7cc5efcdSRob Herring (Arm)    };
94