sun4i-usb-phy.txt 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. Allwinner sun4i USB PHY
  2. -----------------------
  3. Required properties:
  4. - compatible : should be one of
  5. * allwinner,sun4i-a10-usb-phy
  6. * allwinner,sun5i-a13-usb-phy
  7. * allwinner,sun6i-a31-usb-phy
  8. * allwinner,sun7i-a20-usb-phy
  9. * allwinner,sun8i-a23-usb-phy
  10. * allwinner,sun8i-a33-usb-phy
  11. * allwinner,sun8i-h3-usb-phy
  12. * allwinner,sun50i-a64-usb-phy
  13. - reg : a list of offset + length pairs
  14. - reg-names :
  15. * "phy_ctrl"
  16. * "pmu1"
  17. * "pmu2" for sun4i, sun6i or sun7i
  18. - #phy-cells : from the generic phy bindings, must be 1
  19. - clocks : phandle + clock specifier for the phy clocks
  20. - clock-names :
  21. * "usb_phy" for sun4i, sun5i or sun7i
  22. * "usb0_phy", "usb1_phy" and "usb2_phy" for sun6i
  23. * "usb0_phy", "usb1_phy" for sun8i
  24. - resets : a list of phandle + reset specifier pairs
  25. - reset-names :
  26. * "usb0_reset"
  27. * "usb1_reset"
  28. * "usb2_reset" for sun4i, sun6i or sun7i
  29. Optional properties:
  30. - usb0_id_det-gpios : gpio phandle for reading the otg id pin value
  31. - usb0_vbus_det-gpios : gpio phandle for detecting the presence of usb0 vbus
  32. - usb0_vbus_power-supply: power-supply phandle for usb0 vbus presence detect
  33. - usb0_vbus-supply : regulator phandle for controller usb0 vbus
  34. - usb1_vbus-supply : regulator phandle for controller usb1 vbus
  35. - usb2_vbus-supply : regulator phandle for controller usb2 vbus
  36. Example:
  37. usbphy: phy@0x01c13400 {
  38. #phy-cells = <1>;
  39. compatible = "allwinner,sun4i-a10-usb-phy";
  40. /* phy base regs, phy1 pmu reg, phy2 pmu reg */
  41. reg = <0x01c13400 0x10 0x01c14800 0x4 0x01c1c800 0x4>;
  42. reg-names = "phy_ctrl", "pmu1", "pmu2";
  43. clocks = <&usb_clk 8>;
  44. clock-names = "usb_phy";
  45. resets = <&usb_clk 0>, <&usb_clk 1>, <&usb_clk 2>;
  46. reset-names = "usb0_reset", "usb1_reset", "usb2_reset";
  47. pinctrl-names = "default";
  48. pinctrl-0 = <&usb0_id_detect_pin>, <&usb0_vbus_detect_pin>;
  49. usb0_id_det-gpios = <&pio 7 19 GPIO_ACTIVE_HIGH>; /* PH19 */
  50. usb0_vbus_det-gpios = <&pio 7 22 GPIO_ACTIVE_HIGH>; /* PH22 */
  51. usb0_vbus-supply = <&reg_usb0_vbus>;
  52. usb1_vbus-supply = <&reg_usb1_vbus>;
  53. usb2_vbus-supply = <&reg_usb2_vbus>;
  54. };