Intel IXP400 Frozen Dessert Maker User Manual


 
Intel
®
IXP400 Software
Access-Layer Components: Ethernet Database (IxEthDB) API
Programmer’s Guide IXP400 Software Version 2.0 April 2005
Document Number: 252539, Revision: 007 167
The frame IX_OSAL_MBUF header can contain override information (flags – see above)
explicitly stating whether the frame is to be tagged or not.
Tagging information (802.1Q tag) is contained in the IX_OSAL_MBUF header.
The frame VLAN ID, if any, is compared against the transmit port VLAN membership table
and discarded if not found in the membership table.
If the buffer header does not override the port tagging behavior, then the TTI table is consulted
for the VLAN ID found in the
ixp_ne_vlan_tci field of the frame header. If the bit
corresponding to the VLAN ID is set, the frame is to be tagged by the NPE prior to
transmission. Otherwise, the frame is transmitted without the tag
Special Conditions
The NPE microcode uses the
ixp_ne_flags.vlan_en field to distinguish between regular untagged
Ethernet frames and tagged frames that have Priority 0 + VLAN ID 0, since both will have an
IX_OSAL_MBUF header
ixp_ne_vlan_tci value of 0.
If egress tagging is enabled on VLAN ID 0, then the
ixp_ne_flags.vlan_en field must be disabled
for regular untagged Ethernet frames to prevent them from being tagged with Priority 0. Similarly,
if Egress tagging is disabled on VLAN ID 0, then Priority 0 tagged frames must enable the
ixp_ne_flags.vlan_en field to override the default behavior of sending them as untagged frames.
Note: When using the egress VLAN-tagging feature, be sure to enable FCS appending
( ixEthAccPortTxFrameAppendFCSEnable() ) on the affected NPE ports so that a valid FCS is
calculated and appended to the frame prior to transmission.