Main Page Modules Alphabetical List Data Structures File List Data Fields Globals # IXP425 Ethernet Access Codelet (IxEthAccCodelet) API [IXP425 Codelets] IXP425 Ethernet Access Codelet API. More...
## Defines
#define | IX_ETHACC_CODELET_NPEB_MAC
| Hard-encoded MAC address for NPEB.
#define | IX_ETHACC_CODELET_NPEC_MAC
| Hard-encoded MAC address for NPEC.
#define | IX_ETHACC_CODELET_RX_MBUF_POOL_SIZE
| Size of receive MBuf pool.
#define | IX_ETHACC_CODELET_TX_MBUF_POOL_SIZE
| Size of transmit MBuf pool.
#define | IX_ETHACC_CODELET_MAX_PORT
| Number of Ethernet Ports supported for this codelet.
#define | IX_ETHACC_CODELET_MBUF_POOL_SIZE
| Size of MBuf pool.
#define | IX_ETHACC_CODELET_PCK_SIZE
| Size of MBuf packet (recommaended size for ethAcc component).
#define | IX_ETHACC_CODELET_PCK_LEN
| Length of MBuf payload (in bytes).
#define | IX_ETHACC_CODELET_MBUF_DATA_POOL_SIZE
| Size of MBuf data pool.
#define | IX_ETHACC_CODELET_TXGEN_PCK_LEN
| Size of packets for TxGenRxSink Operation.
#define | IX_ETHACC_CODELET_TXGEN_PCKS
| Number of packets to generate for the TxGenRxSink Operation.
#define | IX_ETHACC_CODELET_RX_FCS_STRIP
| Strip FCS from incoming frames. To undefine, change to #undef.
#define | IX_ETHACC_CODELET_FRAME_SIZE
| Maximum size of a frame.
## Functions
PUBLIC IX_STATUS | ixEthAccCodeletMain (IxEthAccCodeletOperation operationType)
| This function is used as a single point of execution for EthAcc codelet.
## Detailed Description IXP425 Ethernet Access Codelet API. This codelet demonstrates both Ethernet Data and Control plane services and Ethernet Management services. A) Ethernet Data and Control plane services: Configuring both ports as a receiver sink from an external source (such as Smartbits). Configuring Port-1 to automatically transmit frames and receive frames on Port-2. Frames generated and transmitted in Port-1 are loopbacked into Port-2 by using cross cable. Configuring and performing a software loopback on each of the two ethernet ports. Configuring both ports to act as a bridge so that frames received on one port are retransmitted on the other. B) Ethernet Management services: Adding and removing static/dynamic entries. Calling the maintenance interface (shall be run as a separate background task) Calling the show routine to display the MAC address filtering tables. Definition In the context of this codelet, the following definitions are applicable. Port 1 = ixe0 = Ethernet port associated with NPE-B Ethernet Coprocessor. Port 2 = ixe1 = Ethernet port associated with NPE-C Ethernet Coprocessor. Design constraints This codelet assumes that the underlying IXP425 Product Line Silicons have two Ethernet NPEs. For silicon with single Ethernet NPE, operation will be only functional in the particular Ethernet port that corresponds to the available Ethernet NPE. Particularly, bridge operation will not work as two Ethernet ports are needed in this operation. Assumptions This codelet illustrates the use EthAcc APIs. The operations provided may not be working on the best performance as the target of this codelet is just to show the functionality of APIs. In order to get better performance, #undef IX_ETHACC_CODELET_TXGENRXSINK_VERIFY to disable traffic verification. Please note that this codelet is not optimized for production quality. For performance testing, please use the operations below: Rx Sink Operation. TxGenRxSink Operation. Bridge Operation with Ethernet frames sent into either one of the Ethernet Ports. The operations below need special tuning to optimize them. Tuning can be done by either using a lower traffic(frames/second), reducing the value of IX_ETHACC_CODELET_TXGEN_PCKS or #undef IX_ETHACC_CODELET_TXGENRXSINK_VERIFY. Software Loopback Operation. PHY Loopback Operation. Bridge Operation with Ethernet frames sent into both Ethernet Ports. VxWorks User Guide ixEthAccCodeletMain() function is used as a single point of execution for EthAcc Codelet. It allows user to enter selection for different type of supported operations described below:
       Usage :
          >ixEthAccCodeletMain (operationType)
          Where operationType:
               1 = To sink received frames as fast as possible for available ports.
               2 = To software loopback received frames to the same port for available ports.
               3 = To generate and transmit frames from port 1, remote loopback by using
                   an external cross cable to port 2, and received on port 2 (TxGenRxSink).
               4 = To generate frames and perform PHY loopback on the same port for available ports.
               5 = To transmit any frame received on one port through the other one (Bridge).
               6 = To activate Ethernet MAC learning facility.
Linux User Guide The idea of using the ixEthAccCodeletMain() as a single point of execution for EthAcc codelet. The operation selected will be executed when user issue 'insmod' in command prompt.
       Usage :
          >insmod ixp400_codelets_ethAcc.o operationType=
          Where x:
               1 = To sink received frames as fast as possible for available ports.
               2 = To software loopback received frames to the same port for available ports.
               3 = To generate and transmit frames from port 1, remote loopback by using
                   an external cross cable to port 2, and received on port 2 (TxGenRxSink).
               4 = To generate frames and perform PHY loopback on the same port for available ports.
               5 = To transmit any frame received on one port through the other one (Bridge).
               6 = To activate Ethernet MAC learning facility.
MAC Setup The default MAC setup will be: Promiscuous mode enabled (for learning example) Frame Check Sequence appended for all frames generated on the XScale PHY Setup This codelet uses two PHYs as defined by IX_ETHACC_CODELET_MAX_PHY The default PHY setup will be: 100Mbits, full duplex, auto-negotiation on. Jumbo frames This codelet setup enable Jumbo frame reception The default setup will be: frames up to a msdu size of 9018 are supported. Test Equipment The test harness will consist of external test equipment capable of generating Ethernet packets (e.g. SmartBits). The test equipment must be capable of performing at least the following actions to support the scenarios outlined for the Codelet: Send/receive an Ethernet data stream. Send/receive frames of different length. Detect CRC errors. Append FCS. Support 100Mbit full duplex mode. ## Define Documentation
#define IX_ETHACC_CODELET_FRAME_SIZE
| Maximum size of a frame. This maximum frame size includes different network settings : Ethernet frames (up to 1518 bytes), BabyJumbo frames (up to nearly 1600 bytes) Jumbo frames (9K bytes). Note that different encapsulation types may extend the MTU size of 9000. The NPE firmware compares onlu the overall ethernet frame size (MSDU), with may be stripped from the FCS at the time of comparrison. Definition at line 379 of file IxEthAccCodelet.h.
#define IX_ETHACC_CODELET_MAX_PORT
| Number of Ethernet Ports supported for this codelet. Definition at line 262 of file IxEthAccCodelet.h.
#define IX_ETHACC_CODELET_MBUF_DATA_POOL_SIZE
| Size of MBuf data pool. Definition at line 300 of file IxEthAccCodelet.h.
#define IX_ETHACC_CODELET_MBUF_POOL_SIZE
| Size of MBuf pool. Definition at line 271 of file IxEthAccCodelet.h.
#define IX_ETHACC_CODELET_NPEB_MAC
| Hard-encoded MAC address for NPEB. Definition at line 226 of file IxEthAccCodelet.h.
#define IX_ETHACC_CODELET_NPEC_MAC
| Hard-encoded MAC address for NPEC. Definition at line 235 of file IxEthAccCodelet.h.
#define IX_ETHACC_CODELET_PCK_LEN
| Length of MBuf payload (in bytes). Definition at line 291 of file IxEthAccCodelet.h.
#define IX_ETHACC_CODELET_PCK_SIZE
| Size of MBuf packet (recommaended size for ethAcc component). Definition at line 282 of file IxEthAccCodelet.h.
#define IX_ETHACC_CODELET_RX_FCS_STRIP
| Strip FCS from incoming frames. To undefine, change to #undef.
#define IX_ETHACC_CODELET_RX_MBUF_POOL_SIZE
| Size of receive MBuf pool. Definition at line 244 of file IxEthAccCodelet.h.
#define IX_ETHACC_CODELET_TX_MBUF_POOL_SIZE
| Size of transmit MBuf pool. Definition at line 253 of file IxEthAccCodelet.h.
#define IX_ETHACC_CODELET_TXGEN_PCK_LEN
| Size of packets for TxGenRxSink Operation. Definition at line 310 of file IxEthAccCodelet.h.
#define IX_ETHACC_CODELET_TXGEN_PCKS
| Number of packets to generate for the TxGenRxSink Operation. Definition at line 319 of file IxEthAccCodelet.h.
## Function Documentation
ixEthAccCodeletMain | ( | IxEthAccCodeletOperation | operationType | ) |
  | This function is used as a single point of execution for EthAcc codelet. Parameters:
  IxEthAccCodeletOperation [in] operationType | - The type of operation to be executed. Refer to the descriptions above.
Returns: IX_SUCCESS : If operation selected is successfully setup IX_FAIL : If operation selected fails to be setup.
Automatically generated from sources. © Intel Corp. 2003