xref: /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/phy/phy-rockchip-naneng-usb2.txt (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunROCKCHIP USB2.0 PHY WITH NANENG IP BLOCK
2*4882a593Smuzhiyun
3*4882a593SmuzhiyunRequired properties (phy (parent) node):
4*4882a593Smuzhiyun - compatible : should be one of the listed compatibles:
5*4882a593Smuzhiyun	* "rockchip,rv1126-usb2phy"
6*4882a593Smuzhiyun - reg : the address offset of grf for usb-phy configuration.
7*4882a593Smuzhiyun - rockchip,grf : phandle to the syscon managing the "general register files"
8*4882a593Smuzhiyun - clocks : phandle + phy specifier pair, for the input clocks of phy.
9*4882a593Smuzhiyun - clock-names : input clocks name of phy.
10*4882a593Smuzhiyun - resets : phandle + reset specifier pairs.
11*4882a593Smuzhiyun - reset-names : reset names of phy.
12*4882a593Smuzhiyun - #clock-cells : should be 0.
13*4882a593Smuzhiyun - clock-output-names : specify the 480m output clock name.
14*4882a593Smuzhiyun
15*4882a593SmuzhiyunOptional properties:
16*4882a593Smuzhiyun - assigned-clocks : phandle of usb 480m clock.
17*4882a593Smuzhiyun - assigned-clock-parents : parent of usb 480m clock, select between
18*4882a593Smuzhiyun		 usb-phy output 480m and xin24m.
19*4882a593Smuzhiyun		 Refer to clk/clock-bindings.txt for generic clock
20*4882a593Smuzhiyun		 consumer properties.
21*4882a593Smuzhiyun - vbus-supply : regulator phandle for vbus power source.
22*4882a593Smuzhiyun - wakeup-source : enable bvalid irq and linestate wakeup when suspend.
23*4882a593Smuzhiyun			only work when suspend wakeup-config is not work.
24*4882a593Smuzhiyun - vup-gpios : gpio phandle for pull-up resistor on DM. this property
25*4882a593Smuzhiyun		is specially provided to RV1126/RV1109 in order to
26*4882a593Smuzhiyun		increase the amplitude of chirpK and successfully
27*4882a593Smuzhiyun		complete high speed handshake.
28*4882a593Smuzhiyun
29*4882a593SmuzhiyunRequired nodes : a sub-node is required for each port the phy provides.
30*4882a593Smuzhiyun		 The sub-node name is used to identify host or otg port,
31*4882a593Smuzhiyun		 and shall be the following entries:
32*4882a593Smuzhiyun	* "otg-port" : the name of otg port.
33*4882a593Smuzhiyun	* "host-port" : the name of host port.
34*4882a593Smuzhiyun
35*4882a593SmuzhiyunRequired properties (port (child) node):
36*4882a593Smuzhiyun - #phy-cells : must be 0. See ./phy-bindings.txt for details.
37*4882a593Smuzhiyun - interrupts : specify an interrupt for each entry in interrupt-names.
38*4882a593Smuzhiyun - interrupt-names : a list which should be one of the following cases:
39*4882a593Smuzhiyun	Regular case:
40*4882a593Smuzhiyun	* "otg-id" : for the otg id interrupt.
41*4882a593Smuzhiyun	* "otg-bvalid" : for the otg vbus interrupt.
42*4882a593Smuzhiyun	* "linestate" : for the host/otg linestate interrupt.
43*4882a593Smuzhiyun	* "disconnect" : for the host/otg disconnect interrupt.
44*4882a593Smuzhiyun
45*4882a593SmuzhiyunOptional properties:
46*4882a593Smuzhiyun - phy-supply : phandle to a regulator that provides power to VBUS.
47*4882a593Smuzhiyun		See ./phy-bindings.txt for details.
48*4882a593Smuzhiyun - rockchip,vbus-always-on: when set, indicates that the otg vbus
49*4882a593Smuzhiyun		is always powered on.
50*4882a593Smuzhiyun
51*4882a593SmuzhiyunExample:
52*4882a593Smuzhiyun
53*4882a593Smuzhiyunu2phy1: usb2-phy@ff4c8000 {
54*4882a593Smuzhiyun	compatible = "rockchip,rv1126-usb2phy";
55*4882a593Smuzhiyun	reg = <0xff4c8000 0x8000>;
56*4882a593Smuzhiyun	rockchip,grf = <&grf>;
57*4882a593Smuzhiyun	clocks = <&pmucru CLK_USBPHY_HOST_REF>, <&cru PCLK_USBPHY_HOST>;
58*4882a593Smuzhiyun	clock-names = "phyclk", "pclk";
59*4882a593Smuzhiyun	assigned-clocks = <&cru USB480M>;
60*4882a593Smuzhiyun	assigned-clock-parents = <&u2phy1>;
61*4882a593Smuzhiyun	resets = <&cru SRST_USBPHYPOR_HOST>, <&cru SRST_USBPHY_HOST_P>;
62*4882a593Smuzhiyun	reset-names = "u2phy", "u2phy-apb";
63*4882a593Smuzhiyun	#clock-cells = <0>;
64*4882a593Smuzhiyun	clock-output-names = "usb480m_phy";
65*4882a593Smuzhiyun	status = "disabled";
66*4882a593Smuzhiyun
67*4882a593Smuzhiyun	u2phy_host: host-port {
68*4882a593Smuzhiyun		#phy-cells = <0>;
69*4882a593Smuzhiyun		interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
70*4882a593Smuzhiyun			     <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>;
71*4882a593Smuzhiyun		interrupt-names = "linestate", "disconnect";
72*4882a593Smuzhiyun		status = "disabled";
73*4882a593Smuzhiyun	};
74*4882a593Smuzhiyun};
75