xref: /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/regulator/uniphier-regulator.txt (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunSocionext UniPhier Regulator Controller
2*4882a593Smuzhiyun
3*4882a593SmuzhiyunThis describes the devicetree bindings for regulator controller implemented
4*4882a593Smuzhiyunon Socionext UniPhier SoCs.
5*4882a593Smuzhiyun
6*4882a593SmuzhiyunUSB3 Controller
7*4882a593Smuzhiyun---------------
8*4882a593Smuzhiyun
9*4882a593SmuzhiyunThis regulator controls VBUS and belongs to USB3 glue layer. Before using
10*4882a593Smuzhiyunthe regulator, it is necessary to control the clocks and resets to enable
11*4882a593Smuzhiyunthis layer. These clocks and resets should be described in each property.
12*4882a593Smuzhiyun
13*4882a593SmuzhiyunRequired properties:
14*4882a593Smuzhiyun- compatible: Should be
15*4882a593Smuzhiyun    "socionext,uniphier-pro4-usb3-regulator" - for Pro4 SoC
16*4882a593Smuzhiyun    "socionext,uniphier-pro5-usb3-regulator" - for Pro5 SoC
17*4882a593Smuzhiyun    "socionext,uniphier-pxs2-usb3-regulator" - for PXs2 SoC
18*4882a593Smuzhiyun    "socionext,uniphier-ld20-usb3-regulator" - for LD20 SoC
19*4882a593Smuzhiyun    "socionext,uniphier-pxs3-usb3-regulator" - for PXs3 SoC
20*4882a593Smuzhiyun- reg: Specifies offset and length of the register set for the device.
21*4882a593Smuzhiyun- clocks: A list of phandles to the clock gate for USB3 glue layer.
22*4882a593Smuzhiyun	According to the clock-names, appropriate clocks are required.
23*4882a593Smuzhiyun- clock-names: Should contain
24*4882a593Smuzhiyun    "gio", "link" - for Pro4 and Pro5 SoCs
25*4882a593Smuzhiyun    "link"        - for others
26*4882a593Smuzhiyun- resets: A list of phandles to the reset control for USB3 glue layer.
27*4882a593Smuzhiyun	According to the reset-names, appropriate resets are required.
28*4882a593Smuzhiyun- reset-names: Should contain
29*4882a593Smuzhiyun    "gio", "link" - for Pro4 and Pro5 SoCs
30*4882a593Smuzhiyun    "link"        - for others
31*4882a593Smuzhiyun
32*4882a593SmuzhiyunSee Documentation/devicetree/bindings/regulator/regulator.txt
33*4882a593Smuzhiyunfor more details about the regulator properties.
34*4882a593Smuzhiyun
35*4882a593SmuzhiyunExample:
36*4882a593Smuzhiyun
37*4882a593Smuzhiyun	usb-glue@65b00000 {
38*4882a593Smuzhiyun		compatible = "socionext,uniphier-ld20-dwc3-glue",
39*4882a593Smuzhiyun			     "simple-mfd";
40*4882a593Smuzhiyun		#address-cells = <1>;
41*4882a593Smuzhiyun		#size-cells = <1>;
42*4882a593Smuzhiyun		ranges = <0 0x65b00000 0x400>;
43*4882a593Smuzhiyun
44*4882a593Smuzhiyun		usb_vbus0: regulators@100 {
45*4882a593Smuzhiyun			compatible = "socionext,uniphier-ld20-usb3-regulator";
46*4882a593Smuzhiyun			reg = <0x100 0x10>;
47*4882a593Smuzhiyun			clock-names = "link";
48*4882a593Smuzhiyun			clocks = <&sys_clk 14>;
49*4882a593Smuzhiyun			reset-names = "link";
50*4882a593Smuzhiyun			resets = <&sys_rst 14>;
51*4882a593Smuzhiyun		};
52*4882a593Smuzhiyun
53*4882a593Smuzhiyun		phy {
54*4882a593Smuzhiyun			...
55*4882a593Smuzhiyun			phy-supply = <&usb_vbus0>;
56*4882a593Smuzhiyun		};
57*4882a593Smuzhiyun		...
58*4882a593Smuzhiyun	};
59