Intel 82559 Switch User Manual


 
Intel 8255x 10/100 Mbps Ethernet Controller Family Open Source Software Developer Manual 111
Host Software Interface
6.6.1 PHY Based Flow Control
The 82558 supports the PHY based flow control scheme known as the “Bay Flow Control”
scheme. This scheme is supported only when the 82558 is operating using its internal PHY TX
unit. It is not supported when an external PHY is used through the MII. The Bay Flow Control
scheme is activated by setting bit 15 in MII register 16 in the 82558 PHY TX unit.
The 82558 generates flow control pause indications according to the number of bytes in its receive
FIFO. This pause indication tells the 82558’s link partner to pause (or delay) future transmissions
to allow the 82558 some time to empty its receive FIFO. The threshold at which the 82558 triggers
the pause indication is determined by the flow control threshold register. PHY based flow control
should not be used at the same time as frame based flow control.
Since frame based flow control is an IEEE 802.3x standard, it is recommended that software use
the frame based FC method instead of PHY based FC.
6.6.2 Frame Based Flow Control
The 82558 and later generation devices support the frame based flow control scheme as specified
in the IEEE 802.3x standard. Frame based flow control operates independently of the PHY. Thus,
this method is supported with either the 8255x (except the 82557) internal PHY or an external
PHY.
These devices also support a priority aware flow control scheme, which is a non-standard variation
of frame based flow control and is described later in Section 6.6.3, “Priority Aware Frame Based
Flow Control”.
Frame based flow control should be negotiated with a device’s link partner. This is accomplished
through the N-Way auto-negotiation algorithm. To advertise frame based FC capability, the device
should have their pause operation for full duplex (FDX) links bit set in the auto-negotiation
advertisement register (MDI register 4, bit 10 [Section 7.2.4, “Auto-Negotiation Advertisement
Register: Register 4”]). A device should enable the pause functionality only if both the local device
and the link partner advertise this capability and the negotiated link utilizes a FDX technology
(regardless of data rate).
The 82558 defaults to advertising that it is not capable of FDX FC. The 82559 defaults to
advertising that it is capable of FDX FC. To enable this feature on the 82558, software needs to
configure the corresponding bit in the ability advertisement register and force re-negotiation.
6.6.2.1 Protocol Description
IEEE 802.3x flow control (FC) is defined as point to point flow control. This means that it is
relevant only for two devices connected by a dedicated link. This form of flow control is
implemented in full duplex only. It includes a set of commands (and indications) for stopping and
re-starting frame transportation between the two connected devices. The commands are encoded
into special frames.
Flow control frames are the minimum Ethernet frame length (64 bytes). The flow control frame
includes the following fields:
Special DA (6 bytes), SA (6 bytes), Type (2 bytes), Command (2 bytes), Parameters (2 bytes),
Pad (42 bytes), CRC (4 bytes).