Back to home page

OSCL-LXR

 
 

    


0001 This document explains only the device tree data binding. For general
0002 information about PHY subsystem refer to Documentation/driver-api/phy/phy.rst
0003 
0004 PHY device node
0005 ===============
0006 
0007 Required Properties:
0008 #phy-cells:     Number of cells in a PHY specifier;  The meaning of all those
0009                 cells is defined by the binding for the phy node. The PHY
0010                 provider can use the values in cells to find the appropriate
0011                 PHY.
0012 
0013 Optional Properties:
0014 phy-supply:     Phandle to a regulator that provides power to the PHY. This
0015                 regulator will be managed during the PHY power on/off sequence.
0016 
0017 For example:
0018 
0019 phys: phy {
0020     compatible = "xxx";
0021     reg = <...>;
0022     .
0023     .
0024     #phy-cells = <1>;
0025     .
0026     .
0027 };
0028 
0029 That node describes an IP block (PHY provider) that implements 2 different PHYs.
0030 In order to differentiate between these 2 PHYs, an additional specifier should be
0031 given while trying to get a reference to it.
0032 
0033 PHY user node
0034 =============
0035 
0036 Required Properties:
0037 phys : the phandle for the PHY device (used by the PHY subsystem; not to be
0038        confused with the Ethernet specific 'phy' and 'phy-handle' properties,
0039        see Documentation/devicetree/bindings/net/ethernet.txt for these)
0040 phy-names : the names of the PHY corresponding to the PHYs present in the
0041             *phys* phandle
0042 
0043 Example 1:
0044 usb1: usb_otg_ss@xxx {
0045     compatible = "xxx";
0046     reg = <xxx>;
0047     .
0048     .
0049     phys = <&usb2_phy>, <&usb3_phy>;
0050     phy-names = "usb2phy", "usb3phy";
0051     .
0052     .
0053 };
0054 
0055 This node represents a controller that uses two PHYs, one for usb2 and one for
0056 usb3.
0057 
0058 Example 2:
0059 usb2: usb_otg_ss@xxx {
0060     compatible = "xxx";
0061     reg = <xxx>;
0062     .
0063     .
0064     phys = <&phys 1>;
0065     phy-names = "usbphy";
0066     .
0067     .
0068 };
0069 
0070 This node represents a controller that uses one of the PHYs of the PHY provider
0071 device defined previously. Note that the phy handle has an additional specifier
0072 "1" to differentiate between the two PHYs.