Sundance Spas ST201 User Manual

Page 33

Advertising
background image

33

Sundance Technology

ST201

PRELIMINARY draft 2

RXFRAMESTATUS

Class....................DMA Data Structures, RFD

Base Address ......Start of RFD

Address Offset .....0x04

Access Mode .......Read/Write

Width ...................32 bits

The second dword in the RFD is ReceiveFrameStatus. At the end of a RxDMA frame transfer, the ST201
writes the value of the RxDMAStatus register into this location in the RFD. The bit definitions for
TxFrameStatus for bits[31..29] and [27..0] are identical to the corresponding bits of the I/O Register RxDM-
AStatus. Only bit[28] differs between the RFD field RxFrameStatus and the register RxDMAStatus.

BIT

BIT NAME

BIT DESCRIPTION

12..0

RxDMAFrameLen

During frame RxDMA, RxDMAFrameLen gives a real-time indication of
the number of bytes transferred by RxDMA for the frame. RxDMAFra-
meLen is cleared when the ST201 fetches a new RxDMAListPtr, and
counts up in steps no larger than a bus master burst. When the frame
has been completely transferred by RxDMA, RxDMAFrameLen indi-
cates the true frame length, except in the case where the frame is
larger than the number of bytes specified in the RxDMA fragments. In
this case, the RxDMAOverflow bit will be set.

13

Reserved

Reserved for future use. Should be set to 0.

14

RxFrameError

Indicates that an error occurred in the receipt of the frame. The driver
should examine bits 16 through 20 to determine the type of error(s).
This bit is undefined until RxDMAComplete bit is set.

15

RxDMAComplete

Indicates that the frame transfer by RxDMA is complete. Unless a
RxDMA halt is in effect this bit would normally only remain set momen-
tarily (too short for the software to read it) since the hardware will then
fetch the next RFD.

16

RxFIFOOverrun

Indicates that the hardware was unable to remove data from the
RxFIFO quickly enough (most likely because the software failed to free
a RFD quickly enough, or kept the ST201 in the RxDMAHalt state for
too long). Bytes will be missing from the frame at one or more locations
in the frame (unpredictable). This bit is undefined until RxDMACom-
plete bit is set.

17

RxRuntFrame

Indicates that the frame was a runt (less than 60 bytes). Normally such
frames are not transferred by RxDMA unless RxEarlyThresh is set to a
value less than the actual size of the runt frame, and the RxEarlyEn-
able of MacCtrl register must be set. This bit is undefined until RxDMA-
Complete bit is set.

18

RxAlignmentError

Indicates that the frame had an alignment error (bad FCS and dribble
bits). This bit is undefined until RxDMAComplete bit is set.

19

RxFCSError

Indicates a FCS checksum error on the frame data. This bit is unde-
fined until RxDMAComplete bit is set.

20

RxOversizedFrame

Indicates the frame size was equal to or greater than the value set in
the MaxFrameSize register. This bit is undefined until RxDMACom-
plete bit is set.

Advertising