• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1PHY driver configuration
2------------------------
3MvPhyDxe provides basic initialization and status routines for Marvell PHYs.
4Currently only 1512 series PHYs are supported. Following PCDs are required:
5
6  gMarvellTokenSpaceGuid.PcdPhyConnectionTypes
7  (list of values corresponding to PHY_CONNECTION enum)
8  gMarvellTokenSpaceGuid.PcdPhyStartupAutoneg
9  (boolean - if true, driver waits for autonegotiation on startup)
10  gMarvellTokenSpaceGuid.PcdPhyDeviceIds
11  (list of values corresponding to MV_PHY_DEVICE_ID enum)
12
13PHY_CONNECTION enum type is defined as follows:
14
15  typedef enum {
160    PHY_CONNECTION_RGMII,
171    PHY_CONNECTION_RGMII_ID,
182    PHY_CONNECTION_RGMII_TXID,
193    PHY_CONNECTION_RGMII_RXID,
204    PHY_CONNECTION_SGMII,
215    PHY_CONNECTION_RTBI,
226    PHY_CONNECTION_XAUI,
237    PHY_CONNECTION_RXAUI
24  } PHY_CONNECTION;
25
26MV_PHY_DEVICE_ID:
27
28  typedef enum {
290    MV_PHY_DEVICE_1512,
30  } MV_PHY_DEVICE_ID;
31
32It should be extended when adding support for other PHY
33models.
34
35Thus in order to set RGMII for 1st PHY and SGMII for 2nd, PCD should be:
36
37  gMarvellTokenSpaceGuid.PcdPhyConnectionTypes|{ 0x0, 0x4 }
38
39with disabled autonegotiation:
40
41  gMarvellTokenSpaceGuid.PcdPhyStartupAutoneg|FALSE
42
43assuming, that PHY models are 1512:
44
45  gMarvellTokenSpaceGuid.PcdPhyDeviceIds|{ 0x0, 0x0 }
46