|
Data Structures |
struct | IxEthAccMacAddr |
| The IEEE 802.3 Ethernet MAC address structure. More...
|
struct | IxEthEthObjStats |
| This struct defines the statistics returned by this component. The component returns MIB2 EthObj variables which should are obtained from the hardware or maintained by this component. More...
|
Defines |
#define | IX_ETH_ACC_NUMBER_OF_PORTS |
| Defines related to the number of NPE's and mapping between PortId and NPE.
|
#define | IX_IEEE803_MAC_ADDRESS_SIZE |
| Defines the size of the MAC address NPE.
|
#define | IX_ETH_ACC_NUM_TX_PRIORITIES |
| The number of transmit priorities.
|
#define | IX_ETHACC_RX_MBUF_MIN_SIZE |
| This defines the recommanded minimum size of MBUF's submitted to the frame receive service.
|
#define | IXP425_ETH_ACC_MII_MAX_ADDR |
| This defines the highest MII address of any attached PHYs.
|
#define | ixEthAccMiiPhyScan(phyPresent) |
| : deprecated API entry point. This definition ensures backward compatibility
|
#define | ixEthAccMiiPhyConfig(phyAddr, speed100, fullDuplex, autonegotiate) |
| : deprecated API entry point. This definition ensures backward compatibility
|
#define | ixEthAccMiiPhyReset(phyAddr) |
| : deprecated API entry point. This definition ensures backward compatibility
|
#define | ixEthAccMiiLinkStatus(phyAddr, linkUp, speed100, fullDuplex, autoneg) |
| : deprecated API entry point. This definition ensures backward compatibility
|
#define | ixEthAccMiiShow(phyAddr) |
| : deprecated API entry point. This definition ensures backward compatibility
|
Typedefs |
typedef void(* | IxEthAccPortTxDoneCallback )(UINT32 callbackTag, IX_MBUF *buffer) |
| Function prototype for Ethernet Tx Buffer Done callback. Registered via ixEthAccTxBufferDoneCallbackRegister.
|
typedef void(* | IxEthAccPortRxCallback )(UINT32 callbackTag, IX_MBUF *buffer, IxEthAccPortId portId) |
| Function prototype for Ethernet Frame Rx callback. Registered via ixEthAccPortRxCallbackRegister.
|
Enumerations |
enum | IxEthAccStatus {
IX_ETH_ACC_SUCCESS,
IX_ETH_ACC_FAIL,
IX_ETH_ACC_INVALID_PORT,
IX_ETH_ACC_PORT_UNINITIALIZED,
IX_ETH_ACC_MAC_UNINITIALIZED,
IX_ETH_ACC_INVALID_ARG,
IX_ETH_TX_Q_FULL,
IX_ETH_ACC_NO_SUCH_ADDR
} |
| This is an enum to define the Ethernet Access status. More...
|
enum | IxEthAccPortId {
IX_ETH_PORT_1,
IX_ETH_PORT_2
} |
| This is an emum to define the IXP425 Mac Ethernet device. More...
|
enum | IxEthAccTxPriority {
IX_ETH_ACC_TX_PRIORITY_0,
IX_ETH_ACC_TX_PRIORITY_1,
IX_ETH_ACC_TX_PRIORITY_2,
IX_ETH_ACC_TX_PRIORITY_3,
IX_ETH_ACC_TX_PRIORITY_4,
IX_ETH_ACC_TX_PRIORITY_5,
IX_ETH_ACC_TX_PRIORITY_6,
IX_ETH_ACC_TX_PRIORITY_7,
IX_ETH_ACC_TX_DEFAULT_PRIORITY
} |
| enum to submit a frame with relative priority. More...
|
enum | IxEthAccDuplexMode {
IX_ETH_ACC_FULL_DUPLEX,
IX_ETH_ACC_HALF_DUPLEX
} |
| Definition to provision the duplex mode of the MAC. More...
|
enum | IxEthAccTxSchedulerDiscipline {
FIFO_NO_PRIORITY,
FIFO_PRIORITY
} |
| Definition for the port transmit scheduling discipline Definition for the port transmit scheduling discipline. More...
|
Functions |
IxEthAccStatus | ixEthAccInit (void) |
| Initialize the Ethernet Access Service.
|
void | ixEthAccUnload (void) |
| Unload the Ethernet Access Service.
|
IxEthAccStatus | ixEthAccPortInit (IxEthAccPortId portId) |
| Initialize an Ethernet MAC Port.
|
IxEthAccStatus | ixEthAccPortTxFrameSubmit (IxEthAccPortId portId, IX_MBUF *buffer, IxEthAccTxPriority priority) |
| This function shall be used to submit MBUFs buffers for transmission on a particular MAC device.
|
IxEthAccStatus | ixEthAccPortTxDoneCallbackRegister (IxEthAccPortId portId, IxEthAccPortTxDoneCallback txCallbackFn, UINT32 callbackTag) |
| This function registers a callback function to facilitate the return of transmit buffers to the user.
|
IxEthAccStatus | ixEthAccPortRxCallbackRegister (IxEthAccPortId portId, IxEthAccPortRxCallback rxCallbackFn, UINT32 callbackTag) |
| The function registered through this function shall be called once per received Ethernet frame.
|
IxEthAccStatus | ixEthAccPortRxFreeReplenish (IxEthAccPortId portId, IX_MBUF *buffer) |
| This function provides buffers for the Ethernet receive path.
|
IxEthAccStatus | ixEthAccPortEnable (IxEthAccPortId portId) |
| Enable a port.
|
IxEthAccStatus | ixEthAccPortDisable (IxEthAccPortId portId) |
| Disable a port.
|
IxEthAccStatus | ixEthAccPortEnabledQuery (IxEthAccPortId portId, BOOL *enabled) |
| Get the enabled state of a port.
|
IxEthAccStatus | ixEthAccPortPromiscuousModeClear (IxEthAccPortId portId) |
| Put the Ethernet MAC device in non-promiscuous mode.
|
IxEthAccStatus | ixEthAccPortPromiscuousModeSet (IxEthAccPortId portId) |
| Put the MAC device in promiscuous mode.
|
IxEthAccStatus | ixEthAccPortUnicastMacAddressSet (IxEthAccPortId portId, IxEthAccMacAddr *macAddr) |
| Configure unicast MAC address for a particular port.
|
IxEthAccStatus | ixEthAccPortUnicastMacAddressGet (IxEthAccPortId portId, IxEthAccMacAddr *macAddr) |
| Get unicast MAC address for a particular MAC port.
|
IxEthAccStatus | ixEthAccPortMulticastAddressJoin (IxEthAccPortId portId, IxEthAccMacAddr *macAddr) |
| ADD a multicast address to the MAC address table.
|
IxEthAccStatus | ixEthAccPortMulticastAddressJoinAll (IxEthAccPortId portId) |
| Filter all frames with multicast dest.
|
IxEthAccStatus | ixEthAccPortMulticastAddressLeave (IxEthAccPortId portId, IxEthAccMacAddr *macAddr) |
| Remove a multicast address from the MAC address table.
|
IxEthAccStatus | ixEthAccPortMulticastAddressLeaveAll (IxEthAccPortId portId) |
| Clear the MAC address table.
|
IxEthAccStatus | ixEthAccPortUnicastAddressShow (IxEthAccPortId portId) |
| Display unicast address has been configured using ixEthAccUnicastMacAddressSet.
|
void | ixEthAccPortMulticastAddressShow (IxEthAccPortId portId) |
| Display multicast address which have been configured using ixEthAccMulticastAddressJoin Display multicast address which have been configured using ixEthAccMulticastAddressJoin.
|
IxEthAccStatus | ixEthAccPortDuplexModeSet (IxEthAccPortId portId, IxEthAccDuplexMode mode) |
| Set the duplex mode for the MAC.
|
IxEthAccStatus | ixEthAccPortDuplexModeGet (IxEthAccPortId portId, IxEthAccDuplexMode *mode) |
| Get the duplex mode for the MAC.
|
IxEthAccStatus | ixEthAccPortTxFrameAppendPaddingEnable (IxEthAccPortId portId) |
| Enable the appending of padding bytes to runt frames submitted to this port.
|
IxEthAccStatus | ixEthAccPortTxFrameAppendPaddingDisable (IxEthAccPortId portId) |
| Disable the appending of padding bytes to the runt frames submitted to this port.
|
IxEthAccStatus | ixEthAccPortTxFrameAppendFCSEnable (IxEthAccPortId portId) |
| Enable the appending of Ethernet FCS to all frames submitted to this port.
|
IxEthAccStatus | ixEthAccPortTxFrameAppendFCSDisable (IxEthAccPortId portId) |
| Disable the appending of Ethernet FCS to all frames submitted to this port.
|
IxEthAccStatus | ixEthAccPortRxFrameAppendFCSEnable (IxEthAccPortId portId) |
| Forward frames with FCS included in the receive buffer to the user.
|
IxEthAccStatus | ixEthAccPortRxFrameAppendFCSDisable (IxEthAccPortId portId) |
| Disable the appending of Ethernet FCS to all frames submitted to this port.
|
IxEthAccStatus | ixEthAccTxSchedulingDisciplineSet (IxEthAccPortId portId, IxEthAccTxSchedulerDiscipline sched) |
| Set the port scheduling to one of IxEthAccTxSchedulerDiscipline Set the port scheduling to one of IxEthAccTxSchedulerDiscipline.
|
IxEthAccStatus | ixEthAccMibIIStatsGet (IxEthAccPortId portId,IxEthEthObjStats *retStats) |
| Return the statistics maintained for a port. Return the statistics maintained for a port.
|
IxEthAccStatus | ixEthAccMibIIStatsGetClear (IxEthAccPortId portId, IxEthEthObjStats *retStats) |
| Return and clear the statistics maintained for a port. Return and clear the statistics maintained for a port.
|
IxEthAccStatus | ixEthAccMibIIStatsClear (IxEthAccPortId portId) |
| Clear the statistics maintained for a port. Clear the statistics maintained for a port.
|
IxEthAccStatus | ixEthAccMacInit (IxEthAccPortId portId) |
| Initialize the ethernet MAC settings.
|
void | ixEthAccStatsShow (IxEthAccPortId portId) |
| Display a ports statistics on the standard io console using printf. Display a ports statistics on the standard io console using printf.
|
IxEthAccStatus | ixEthAccMiiReadRtn (UINT8 phyAddr, UINT8 phyReg, UINT16 *value) |
| Read a 16 bit value from a PHY.
|
IxEthAccStatus | ixEthAccMiiWriteRtn (UINT8 phyAddr, UINT8 phyReg, UINT16 value) |
| Write a 16 bit value to a PHY.
|
IxEthAccStatus | ixEthAccMiiStatsShow (UINT32 phyAddr) |
| Display detailed information on a specified PHY.
|
Design notes: The mbuf address is to be specified in the least significant 28-bit location [0:27]. The most significant 4-bit [31:29] are for interal use only.