4 wakeup frame detection, Table 3.14 wakeup frame filter register structure, Wakeup frame detection – SMSC LAN9420 User Manual

Page 57: Datasheet 3.5.4 wakeup frame detection

Advertising
background image

Single-Chip Ethernet Controller with HP Auto-MDIX Support and PCI Interface

Datasheet

SMSC LAN9420/LAN9420i

57

Revision 1.22 (09-25-08)

DATASHEET

3.5.4

Wakeup Frame Detection

Setting the Wakeup Frame Enable bit (WAKE_EN) in the “WUCSR—Wakeup Control and Status
Register”, places the MAC in the wakeup frame detection mode. In this mode, normal data reception
is disabled, and detection logic within the MAC examines receive data for the pre-programmed wakeup
frame patterns. Upon detection of a wake event, the MAC will assert the wake event interrupt to the
Interrupt Controller. In turn, the Interrupt Controller can be programmed to assert its interrupt (IRQ) to
the PCIB. In reduced power modes, the IRQ interrupt can be used to generate a wakeup event using
the nPME signal, which, if enabled to do so, will return the system to its normal operational state (S0
state). The IRQ interrupt can also be used to generate an interrupt to the Host, via the nINT signal.
Upon detection, the Wakeup Frame Received bit (WUFR) in the WUCSR is set. When the Host system
clears the WUEN bit, the MAC will resume normal receive operation.

Before putting the MAC into the wakeup frame detection state, the Host application must provide the
detection logic with a list of sample frames and their corresponding byte masks. This information is
written into the Wakeup Frame Filter register (WUFF). Please refer to

Section 4.4.11, "Wakeup Frame

Filter (WUFF)," on page 132

for additional information on this register.

The MAC supports four programmable filters that support many different receive packet patterns. If
remote wakeup mode is enabled, the remote wakeup function receives all frames addressed to the
MAC. It then checks each frame against the enabled filter and recognizes the frame as a remote
wakeup frame if it passes the wakeup frame filter register’s address filtering and CRC value match.

In order to determine which bytes of the frames should be checked by the CRC module, the MAC uses
a programmable byte mask and a programmable pattern offset for each of the four supported filters.

The pattern’s offset defines the location of the first byte that should be checked in the frame. The byte
mask is a 31-bit field that specifies whether or not each of the 31 contiguous bytes within the frame,
beginning in the pattern offset, should be checked. If bit j in the byte mask is set, the detection logic
checks byte offset + j in the frame.

In order to load the Wakeup Frame Filter register, the LAN driver software must perform eight writes
to the Wakeup Frame Filter register (WUFF).

Table 3.14

shows the Wakeup Frame Filter register’s

structure.

Note 3.1

Wakeup frame detection can be performed when LAN9420/LAN9420i is in any power
state. Wakeup frame detection is enabled when the WUEN bit is set.

Note: When wake-up frame detection is enabled via the WUEN bit of the

Wakeup Control and Status

Register (WUCSR)

, a broadcast wake-up frame will wake-up the device despite the state of

the Disable Broadcast (BCAST) bit in the

MAC Control Register (MAC_CR)

.

Table 3.14 Wakeup Frame Filter Register Structure

Filter 0 Byte Mask

Filter 1 Byte Mask

Filter 2 Byte Mask

Filter 3 Byte Mask

Reserved

Filter 3

Command

Reserved

Filter 2

Command

Reserved

Filter 1

Command

Reserved

Filter 0

Command

Filter 3 Offset

Filter 2 Offset

Filter 1Offset

Filter 0 Offset

Filter 1 CRC-16

Filter 0 CRC-16

Filter 3 CRC-16

Filter 2 CRC-16

Advertising
This manual is related to the following products: