文本文件  |  60行  |  1.53 KB

Pp2Dxe porting guide
--------------------
Pp2Dxe is driver supporting PP2 NIC on Marvell platforms. Following PCDs
are required to operate:

Number of ports/network interfaces:
  gMarvellTokenSpaceGuid.PcdPp2NumPorts

Addresses of PHY devices:
  gMarvellTokenSpaceGuid.PcdPhySmiAddresses

Identificators of PP2 ports:
  gMarvellTokenSpaceGuid.PcdPp2PortIds

Indexes used in GOP operation:
  gMarvellTokenSpaceGuid.PcdPp2GopIndexes

Set to 0x1 for always-up interface, 0x0 otherwise:
  gMarvellTokenSpaceGuid.PcdPp2InterfaceAlwaysUp

Values corresponding to PHY_SPEED enum:
  gMarvellTokenSpaceGuid.PcdPp2InterfaceSpeed

PHY_SPEED (in Mbps) is defined as follows:
  typedef enum {
  0  NO_SPEED,
  1  SPEED_10,
  2  SPEED_100,
  3  SPEED_1000,
  4  SPEED_2500,
  5  SPEED_10000
  } PHY_SPEED;

Base address of shared register space of PP2:
  gMarvellTokenSpaceGuid.PcdPp2SharedAddress

Spacing between consecutive GMAC register spaces:
  gMarvellTokenSpaceGuid.PcdPp2GmacDevSize

Base address of GMAC:
  gMarvellTokenSpaceGuid.PcdPp2GmacBaseAddress

Spacing between consecutive XLG register spaces:
  gMarvellTokenSpaceGuid.PcdPp2XlgDevSize

Base address of XLG:
  gMarvellTokenSpaceGuid.PcdPp2XlgBaseAddress

Base address of RFU1:
  gMarvellTokenSpaceGuid.PcdPp2Rfu1BaseAddress

Base address of SMI:
  gMarvellTokenSpaceGuid.PcdPp2SmiBaseAddress

TCLK frequency in Hz:
  gMarvellTokenSpaceGuid.PcdPp2ClockFrequency

GMAC and XLG addresses are computed as follows:
  address = base_address + dev_size * gop_index