1*24aa40d3SRob HerringQualcomm's APQ8016/MSM8916 USB transceiver controller 2*24aa40d3SRob Herring 3*24aa40d3SRob Herring- compatible: 4*24aa40d3SRob Herring Usage: required 5*24aa40d3SRob Herring Value type: <string> 6*24aa40d3SRob Herring Definition: Should contain "qcom,usb-8x16-phy". 7*24aa40d3SRob Herring 8*24aa40d3SRob Herring- reg: 9*24aa40d3SRob Herring Usage: required 10*24aa40d3SRob Herring Value type: <prop-encoded-array> 11*24aa40d3SRob Herring Definition: USB PHY base address and length of the register map 12*24aa40d3SRob Herring 13*24aa40d3SRob Herring- clocks: 14*24aa40d3SRob Herring Usage: required 15*24aa40d3SRob Herring Value type: <prop-encoded-array> 16*24aa40d3SRob Herring Definition: See clock-bindings.txt section "consumers". List of 17*24aa40d3SRob Herring two clock specifiers for interface and core controller 18*24aa40d3SRob Herring clocks. 19*24aa40d3SRob Herring 20*24aa40d3SRob Herring- clock-names: 21*24aa40d3SRob Herring Usage: required 22*24aa40d3SRob Herring Value type: <string> 23*24aa40d3SRob Herring Definition: Must contain "iface" and "core" strings. 24*24aa40d3SRob Herring 25*24aa40d3SRob Herring- vddcx-supply: 26*24aa40d3SRob Herring Usage: required 27*24aa40d3SRob Herring Value type: <phandle> 28*24aa40d3SRob Herring Definition: phandle to the regulator VDCCX supply node. 29*24aa40d3SRob Herring 30*24aa40d3SRob Herring- v1p8-supply: 31*24aa40d3SRob Herring Usage: required 32*24aa40d3SRob Herring Value type: <phandle> 33*24aa40d3SRob Herring Definition: phandle to the regulator 1.8V supply node. 34*24aa40d3SRob Herring 35*24aa40d3SRob Herring- v3p3-supply: 36*24aa40d3SRob Herring Usage: required 37*24aa40d3SRob Herring Value type: <phandle> 38*24aa40d3SRob Herring Definition: phandle to the regulator 3.3V supply node. 39*24aa40d3SRob Herring 40*24aa40d3SRob Herring- resets: 41*24aa40d3SRob Herring Usage: required 42*24aa40d3SRob Herring Value type: <prop-encoded-array> 43*24aa40d3SRob Herring Definition: See reset.txt section "consumers". PHY reset specifier. 44*24aa40d3SRob Herring 45*24aa40d3SRob Herring- reset-names: 46*24aa40d3SRob Herring Usage: required 47*24aa40d3SRob Herring Value type: <string> 48*24aa40d3SRob Herring Definition: Must contain "phy" string. 49*24aa40d3SRob Herring 50*24aa40d3SRob Herring- switch-gpio: 51*24aa40d3SRob Herring Usage: optional 52*24aa40d3SRob Herring Value type: <prop-encoded-array> 53*24aa40d3SRob Herring Definition: Some boards are using Dual SPDT USB Switch, witch is 54*24aa40d3SRob Herring controlled by GPIO to de/multiplex D+/D- USB lines 55*24aa40d3SRob Herring between connectors. 56*24aa40d3SRob Herring 57*24aa40d3SRob HerringExample: 58*24aa40d3SRob Herring usb_phy: phy@78d9000 { 59*24aa40d3SRob Herring compatible = "qcom,usb-8x16-phy"; 60*24aa40d3SRob Herring reg = <0x78d9000 0x400>; 61*24aa40d3SRob Herring 62*24aa40d3SRob Herring vddcx-supply = <&pm8916_s1_corner>; 63*24aa40d3SRob Herring v1p8-supply = <&pm8916_l7>; 64*24aa40d3SRob Herring v3p3-supply = <&pm8916_l13>; 65*24aa40d3SRob Herring 66*24aa40d3SRob Herring clocks = <&gcc GCC_USB_HS_AHB_CLK>, 67*24aa40d3SRob Herring <&gcc GCC_USB_HS_SYSTEM_CLK>; 68*24aa40d3SRob Herring clock-names = "iface", "core"; 69*24aa40d3SRob Herring 70*24aa40d3SRob Herring resets = <&gcc GCC_USB2A_PHY_BCR>; 71*24aa40d3SRob Herring reset-names = "phy"; 72*24aa40d3SRob Herring 73*24aa40d3SRob Herring // D+/D- lines: 1 - Routed to HUB, 0 - Device connector 74*24aa40d3SRob Herring switch-gpio = <&pm8916_gpios 4 GPIO_ACTIVE_HIGH>; 75*24aa40d3SRob Herring }; 76*24aa40d3SRob Herring 77