Jagan Teki | fa944d7 | 2018-05-09 11:35:51 +0530 | [diff] [blame] | 1 | Allwinner sun4i USB PHY |
| 2 | ----------------------- |
| 3 | |
| 4 | Required properties: |
| 5 | - 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 |
| 10 | * allwinner,sun8i-a23-usb-phy |
| 11 | * allwinner,sun8i-a33-usb-phy |
| 12 | * allwinner,sun8i-a83t-usb-phy |
| 13 | * allwinner,sun8i-h3-usb-phy |
| 14 | * allwinner,sun8i-v3s-usb-phy |
| 15 | * allwinner,sun50i-a64-usb-phy |
| 16 | - reg : a list of offset + length pairs |
| 17 | - reg-names : |
| 18 | * "phy_ctrl" |
| 19 | * "pmu0" for H3, V3s and A64 |
| 20 | * "pmu1" |
| 21 | * "pmu2" for sun4i, sun6i, sun7i, sun8i-a83t or sun8i-h3 |
| 22 | * "pmu3" for sun8i-h3 |
| 23 | - #phy-cells : from the generic phy bindings, must be 1 |
| 24 | - clocks : phandle + clock specifier for the phy clocks |
| 25 | - clock-names : |
| 26 | * "usb_phy" for sun4i, sun5i or sun7i |
| 27 | * "usb0_phy", "usb1_phy" and "usb2_phy" for sun6i |
| 28 | * "usb0_phy", "usb1_phy" for sun8i |
| 29 | * "usb0_phy", "usb1_phy", "usb2_phy" and "usb2_hsic_12M" for sun8i-a83t |
| 30 | * "usb0_phy", "usb1_phy", "usb2_phy" and "usb3_phy" for sun8i-h3 |
| 31 | - resets : a list of phandle + reset specifier pairs |
| 32 | - reset-names : |
| 33 | * "usb0_reset" |
| 34 | * "usb1_reset" |
| 35 | * "usb2_reset" for sun4i, sun6i, sun7i, sun8i-a83t or sun8i-h3 |
| 36 | * "usb3_reset" for sun8i-h3 |
| 37 | |
| 38 | Optional properties: |
| 39 | - usb0_id_det-gpios : gpio phandle for reading the otg id pin value |
| 40 | - usb0_vbus_det-gpios : gpio phandle for detecting the presence of usb0 vbus |
| 41 | - usb0_vbus_power-supply: power-supply phandle for usb0 vbus presence detect |
| 42 | - usb0_vbus-supply : regulator phandle for controller usb0 vbus |
| 43 | - usb1_vbus-supply : regulator phandle for controller usb1 vbus |
| 44 | - usb2_vbus-supply : regulator phandle for controller usb2 vbus |
| 45 | - usb3_vbus-supply : regulator phandle for controller usb3 vbus |
| 46 | |
| 47 | Example: |
| 48 | usbphy: phy@01c13400 { |
| 49 | #phy-cells = <1>; |
| 50 | compatible = "allwinner,sun4i-a10-usb-phy"; |
| 51 | /* phy base regs, phy1 pmu reg, phy2 pmu reg */ |
| 52 | reg = <0x01c13400 0x10 0x01c14800 0x4 0x01c1c800 0x4>; |
| 53 | reg-names = "phy_ctrl", "pmu1", "pmu2"; |
| 54 | clocks = <&usb_clk 8>; |
| 55 | clock-names = "usb_phy"; |
| 56 | resets = <&usb_clk 0>, <&usb_clk 1>, <&usb_clk 2>; |
| 57 | reset-names = "usb0_reset", "usb1_reset", "usb2_reset"; |
| 58 | pinctrl-names = "default"; |
| 59 | pinctrl-0 = <&usb0_id_detect_pin>, <&usb0_vbus_detect_pin>; |
| 60 | usb0_id_det-gpios = <&pio 7 19 GPIO_ACTIVE_HIGH>; /* PH19 */ |
| 61 | usb0_vbus_det-gpios = <&pio 7 22 GPIO_ACTIVE_HIGH>; /* PH22 */ |
| 62 | usb0_vbus-supply = <®_usb0_vbus>; |
| 63 | usb1_vbus-supply = <®_usb1_vbus>; |
| 64 | usb2_vbus-supply = <®_usb2_vbus>; |
| 65 | }; |