Power Management

After receiving a wakeup packet, the Ethernet controller ignores any subsequent wakeup packets until the driver clears all of the “Received” bits in the Wakeup Status Register (WUS). It also ignores link change events until the driver clears the Link Status Changed (LNKC) bit in the Wakeup Status Register (WUSR).

6.4.3Wakeup Packets

The Ethernet controller supports various wakeup packets using two types of filters:

Pre-defined Filters

Flexible Filters

Each of these filters are enabled if the corresponding bit in the Wakeup Filter Control Register (WUFC) is set to 1b.

6.4.3.1Pre-Defined Filters

The following packets are supported by the Ethernet controller’s pre-defined filters:

Directed Packet (including exact, multicast indexed, and broadcast)

Magic Packet* (not applicable to the 82541ER)

ARP/IPv4 Request Packet (ARP Request Packet for the 82544GC/EI)

Directed IPv4 Packet (Directed IP Packet for the 82544GC/EI)

Directed IPv6 Packet1

Each of these filters are enabled if the corresponding bit in the Wakeup Filter Control Register (WUFC) is set to 1b.

The following explanation of each filter includes a table listing which bytes at which offsets are compared to determine if the packet passes the filter. Note that both VLAN2 frames and LLC/Snap can increase the given offsets if they are present (see Section 9.3 for details).

For the 82541PI/GI/EI and 82547GI/EI, various tables can also include a reference to a possible VLAN Tag and LLC/SNAP Header. These Ethernet controllers detect VLAN and LLC/Snap frames by checking the initial size/type field. They first check for a VLAN header by comparing the size/type field to the value programmed in the VLAN EtherType register. If the field matches, the Ethernet controllers consider the frame a VLAN frame. They then check the VLAN ID against the values programmed in the VLAN Filter Table Array. If the ID matches the packet, processing continues. If the ID doesn’t match, or the CTRL.VME bit is 0b, and the VLAN Tag is listed as compare in the table, the packet is not considered a wakeup packet.

After processing a possible VLAN Tag, the 82541PI/GI/EI and 82547GI/EI Ethernet controllers check for an LLC/SNAP Header. If the size/type field is less than or equal to 1500 bytes, they check the following 6 bytes for the pattern of AAAA03000000h. If the pattern matches, then the packet processing continues. If the pattern doesn’t match, and the LLC/SNAP Header is listed as compare or check in the table, the packet is not considered a wakeup packet.

6.4.3.1.1Directed Exact Packet

1.Not applicable to the 82544GC/EI.

2.Not applicable to the 82541ER.

Software Developer’s Manual

143

Page 157
Image 157
Intel PCI-X, Intel Gigabit Ethernet Controllers manual Wakeup Packets, Pre-Defined Filters, Directed Exact Packet