User Manual
BCM1250/BCM1125/BCM1125H
10/21/02
B r o a d c o m C o r p o r a t i o n
Document
1250_1125-UM100CB-R
Section 7: DMA Page
171
O
PTION
AND
F
LAG
B
ITS
FOR
E
THERNET
MAC
S
Table 104: Status Flags for Ethernet Receive Channel
Bits
Name
Description
Flags Written to dscr_a size_a field if extra_status is enabled
47:40
dscr_cnt
Number of descriptors used by this packet. If more than 255 descriptors were used to receive
the packet then this field will be 0 and software must compute the actual number.
This field is valid for Ethernet and Packet Fifo modes.
48
reserved
This bit may be used for status information in the future.
Flags Written to dscr_a options field
51
bad_ip4cs
This bit is clear if at the offset specified in the iphdr_offset field of the
mac_adfilter_cfg
register
the receive packet has a standard length (no options) IPv4 header with a valid header
checksum. Otherwise it is set.
This flag is only valid in Ethernet mode.
52
dscr_err
Descriptor error. During packet reception the channel ran out of descriptors, the tail of the
packet is lost. When this bit is set, the length field can be used to determine the number of bytes
transferred before the receiver ran out of descriptors.
If the system_revision indicates PERIPH_REV3 or later, the length field indicates the number
of bytes transferred. In older revisions the field must be corrected to account for the offset at the
start of the packet. Software should compensate by subtracting the low three bits of the offset
field:
ActualBytesTransferred = dscr_b.pkt_size - 32 - (dscr_a.offset & 7)
This flag is valid for Ethernet and Packet Fifo modes.
54:53
rx_ch
Receive channel number (always 2’b00 for DMA channel zero)
This field is valid for Ethernet and Packet Fifo modes.
57:55
pkt_type
Packet type. Contains an encoded version of the Ethernet Type field. See
Type Identification” on page 282
This field is valid for Ethernet and Packet Fifo modes. (It depends on the packet format so it may
not be useful in Packet Fifo mode.)
58
match_hash
This bit is set if the packet passed the hash match filter.
This field is valid for Ethernet and Packet Fifo modes. (It depends on the packet format so it may
not be useful in Packet Fifo mode.)
59
match_exact
This bit is set if the received packet passed the exact addresses filter. (The packet will pass if it
matched an address and the filter was true, or the packet did not match and the filter was
inverted).
This field is valid for Ethernet and Packet Fifo modes. (It depends on the packet format so it may
not be useful in Packet Fifo mode.)
60
bcast
This bit is set if the received packet has a broadcast address.
This field is valid for Ethernet and Packet Fifo modes. (It depends on the packet format so it may
not be useful in Packet Fifo mode.)
61
mcast
This bit is set if the received packet has a multicast address.
This field is valid for Ethernet and Packet Fifo modes. (It depends on the packet format so it may
not be useful in Packet Fifo mode.)
62
bad
This bit is set if the received packet has errors (length error or dribble error or code error or CRC
error or is a runt packet or is an oversize packet). See
for a description
of the errors.
In Packet Fifo mode, the error bit will be set by a CRC error or the packet is terminated with a
link Error (only possible in GMII style and Encoded modes).