blob: 005bc22938fffb76d73fcee9b8cb29731a1e4584 [file] [log] [blame]
Hans de Goedeba4bdc92014-03-01 18:09:26 +01001Allwinner sun4i USB PHY
2-----------------------
3
4Required properties:
Maxime Ripardfecc2d72014-05-14 14:58:57 +02005- compatible : should be one of
6 * allwinner,sun4i-a10-usb-phy
7 * allwinner,sun5i-a13-usb-phy
8 * allwinner,sun6i-a31-usb-phy
9 * allwinner,sun7i-a20-usb-phy
Hans de Goede123dfdb2015-06-13 14:37:48 +020010 * allwinner,sun8i-a23-usb-phy
Hans de Goedefc1f45e2015-06-13 14:37:49 +020011 * allwinner,sun8i-a33-usb-phy
Reinder de Haan626a6302015-12-11 16:32:18 +010012 * allwinner,sun8i-h3-usb-phy
Icenowy Zheng16c40362017-01-03 23:25:31 +080013 * allwinner,sun8i-v3s-usb-phy
Icenowy Zheng732e35d2016-08-12 11:06:20 +080014 * allwinner,sun50i-a64-usb-phy
Hans de Goedeba4bdc92014-03-01 18:09:26 +010015- reg : a list of offset + length pairs
Maxime Ripardfecc2d72014-05-14 14:58:57 +020016- reg-names :
17 * "phy_ctrl"
Icenowy Zhenga0b19102017-03-25 22:50:08 +080018 * "pmu0" for H3, V3s and A64
Maxime Ripardfecc2d72014-05-14 14:58:57 +020019 * "pmu1"
20 * "pmu2" for sun4i, sun6i or sun7i
Hans de Goedeba4bdc92014-03-01 18:09:26 +010021- #phy-cells : from the generic phy bindings, must be 1
Maxime Ripardfecc2d72014-05-14 14:58:57 +020022- clocks : phandle + clock specifier for the phy clocks
23- clock-names :
24 * "usb_phy" for sun4i, sun5i or sun7i
25 * "usb0_phy", "usb1_phy" and "usb2_phy" for sun6i
Hans de Goede123dfdb2015-06-13 14:37:48 +020026 * "usb0_phy", "usb1_phy" for sun8i
Hans de Goedeba4bdc92014-03-01 18:09:26 +010027- resets : a list of phandle + reset specifier pairs
Maxime Ripardfecc2d72014-05-14 14:58:57 +020028- reset-names :
29 * "usb0_reset"
30 * "usb1_reset"
31 * "usb2_reset" for sun4i, sun6i or sun7i
Hans de Goedeba4bdc92014-03-01 18:09:26 +010032
Hans de Goeded2332302015-06-13 14:37:45 +020033Optional properties:
34- usb0_id_det-gpios : gpio phandle for reading the otg id pin value
35- usb0_vbus_det-gpios : gpio phandle for detecting the presence of usb0 vbus
Hans de Goede8665c182015-06-13 14:37:51 +020036- usb0_vbus_power-supply: power-supply phandle for usb0 vbus presence detect
Hans de Goeded2332302015-06-13 14:37:45 +020037- usb0_vbus-supply : regulator phandle for controller usb0 vbus
38- usb1_vbus-supply : regulator phandle for controller usb1 vbus
39- usb2_vbus-supply : regulator phandle for controller usb2 vbus
40
Hans de Goedeba4bdc92014-03-01 18:09:26 +010041Example:
42 usbphy: phy@0x01c13400 {
43 #phy-cells = <1>;
44 compatible = "allwinner,sun4i-a10-usb-phy";
45 /* phy base regs, phy1 pmu reg, phy2 pmu reg */
46 reg = <0x01c13400 0x10 0x01c14800 0x4 0x01c1c800 0x4>;
47 reg-names = "phy_ctrl", "pmu1", "pmu2";
48 clocks = <&usb_clk 8>;
49 clock-names = "usb_phy";
Hans de Goeded2332302015-06-13 14:37:45 +020050 resets = <&usb_clk 0>, <&usb_clk 1>, <&usb_clk 2>;
51 reset-names = "usb0_reset", "usb1_reset", "usb2_reset";
52 pinctrl-names = "default";
53 pinctrl-0 = <&usb0_id_detect_pin>, <&usb0_vbus_detect_pin>;
54 usb0_id_det-gpios = <&pio 7 19 GPIO_ACTIVE_HIGH>; /* PH19 */
55 usb0_vbus_det-gpios = <&pio 7 22 GPIO_ACTIVE_HIGH>; /* PH22 */
56 usb0_vbus-supply = <&reg_usb0_vbus>;
57 usb1_vbus-supply = <&reg_usb1_vbus>;
58 usb2_vbus-supply = <&reg_usb2_vbus>;
Hans de Goedeba4bdc92014-03-01 18:09:26 +010059 };