1ff764963SKishon Vijay Abraham IThis document explains only the device tree data binding. For general 2ff764963SKishon Vijay Abraham Iinformation about PHY subsystem refer to Documentation/phy.txt 3ff764963SKishon Vijay Abraham I 4ff764963SKishon Vijay Abraham IPHY device node 5ff764963SKishon Vijay Abraham I=============== 6ff764963SKishon Vijay Abraham I 7ff764963SKishon Vijay Abraham IRequired Properties: 8ff764963SKishon Vijay Abraham I#phy-cells: Number of cells in a PHY specifier; The meaning of all those 9ff764963SKishon Vijay Abraham I cells is defined by the binding for the phy node. The PHY 10ff764963SKishon Vijay Abraham I provider can use the values in cells to find the appropriate 11ff764963SKishon Vijay Abraham I PHY. 12ff764963SKishon Vijay Abraham I 13*e9e8cf49SRoger QuadrosOptional Properties: 14*e9e8cf49SRoger Quadrosphy-supply: Phandle to a regulator that provides power to the PHY. This 15*e9e8cf49SRoger Quadros regulator will be managed during the PHY power on/off sequence. 16*e9e8cf49SRoger Quadros 17ff764963SKishon Vijay Abraham IFor example: 18ff764963SKishon Vijay Abraham I 19ff764963SKishon Vijay Abraham Iphys: phy { 20ff764963SKishon Vijay Abraham I compatible = "xxx"; 21ff764963SKishon Vijay Abraham I reg = <...>; 22ff764963SKishon Vijay Abraham I . 23ff764963SKishon Vijay Abraham I . 24ff764963SKishon Vijay Abraham I #phy-cells = <1>; 25ff764963SKishon Vijay Abraham I . 26ff764963SKishon Vijay Abraham I . 27ff764963SKishon Vijay Abraham I}; 28ff764963SKishon Vijay Abraham I 29ff764963SKishon Vijay Abraham IThat node describes an IP block (PHY provider) that implements 2 different PHYs. 30ff764963SKishon Vijay Abraham IIn order to differentiate between these 2 PHYs, an additonal specifier should be 31ff764963SKishon Vijay Abraham Igiven while trying to get a reference to it. 32ff764963SKishon Vijay Abraham I 33ff764963SKishon Vijay Abraham IPHY user node 34ff764963SKishon Vijay Abraham I============= 35ff764963SKishon Vijay Abraham I 36ff764963SKishon Vijay Abraham IRequired Properties: 37ff764963SKishon Vijay Abraham Iphys : the phandle for the PHY device (used by the PHY subsystem) 38ff764963SKishon Vijay Abraham Iphy-names : the names of the PHY corresponding to the PHYs present in the 39ff764963SKishon Vijay Abraham I *phys* phandle 40ff764963SKishon Vijay Abraham I 41ff764963SKishon Vijay Abraham IExample 1: 42ff764963SKishon Vijay Abraham Iusb1: usb_otg_ss@xxx { 43ff764963SKishon Vijay Abraham I compatible = "xxx"; 44ff764963SKishon Vijay Abraham I reg = <xxx>; 45ff764963SKishon Vijay Abraham I . 46ff764963SKishon Vijay Abraham I . 47ff764963SKishon Vijay Abraham I phys = <&usb2_phy>, <&usb3_phy>; 48ff764963SKishon Vijay Abraham I phy-names = "usb2phy", "usb3phy"; 49ff764963SKishon Vijay Abraham I . 50ff764963SKishon Vijay Abraham I . 51ff764963SKishon Vijay Abraham I}; 52ff764963SKishon Vijay Abraham I 53ff764963SKishon Vijay Abraham IThis node represents a controller that uses two PHYs, one for usb2 and one for 54ff764963SKishon Vijay Abraham Iusb3. 55ff764963SKishon Vijay Abraham I 56ff764963SKishon Vijay Abraham IExample 2: 57ff764963SKishon Vijay Abraham Iusb2: usb_otg_ss@xxx { 58ff764963SKishon Vijay Abraham I compatible = "xxx"; 59ff764963SKishon Vijay Abraham I reg = <xxx>; 60ff764963SKishon Vijay Abraham I . 61ff764963SKishon Vijay Abraham I . 62ff764963SKishon Vijay Abraham I phys = <&phys 1>; 63ff764963SKishon Vijay Abraham I phy-names = "usbphy"; 64ff764963SKishon Vijay Abraham I . 65ff764963SKishon Vijay Abraham I . 66ff764963SKishon Vijay Abraham I}; 67ff764963SKishon Vijay Abraham I 68ff764963SKishon Vijay Abraham IThis node represents a controller that uses one of the PHYs of the PHY provider 69ff764963SKishon Vijay Abraham Idevice defined previously. Note that the phy handle has an additional specifier 70ff764963SKishon Vijay Abraham I"1" to differentiate between the two PHYs. 71