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
163
E
THERNET
AND
S
ERIAL
DMA C
ONTROL
R
EGISTERS
The BCM1250 has MACs 0, 1 and 2.
The BCM1125/H has MACs 0 and 1. Accesses made to the address range allocated to a nonexistant MAC
may cause all MACs to exhibit UNPREDICTABLE behavior.
Table 91: Ethernet and Serial DMA Configuration Register 0
dma_config0_mac_0_rx_ch_0 -
00_1006_4800
dma_config0_mac_0_tx_ch_0 -
00_1006_4C00
dma_config0_mac_0_rx_ch_1 -
00_1006_4900
dma_config0_mac_0_tx_ch_1 -
00_1006_4D00
dma_config0_mac_1_rx_ch_0 -
00_1006_5800
dma_config0_mac_1_tx_ch_0 -
00_1006_5C00
dma_config0_mac_1_rx_ch_1 -
00_1006_5900
dma_config0_mac_1_tx_ch_1 -
00_1006_5D00
dma_config0_mac_2_rx_ch_0 -
00_1006_6800
dma_config0_mac_2_tx_ch_0 -
00_1006_6C00
dma_config0_mac_2_rx_ch_1 -
00_1006_6900
dma_config0_mac_2_tx_ch_1 -
00_1006_6D00
dma_config0_ser_0_rx -
00_1006_0400
dma_config0_ser_0_tx -
00_1006_0480
dma_config0_ser_1_rx -
00_1006_0800
dma_config0_ser_1_tx -
00_1006_0880
Bits
Name
Default
Description
0
drop
1'b0
Set to cause all packets to the channel to be dropped. MAC receive channels only,
setting this bit in other channels causes UNDEFINED behavior.
2:1
dscr_type
2'b0
This field sets the descriptor format:
00 - Descriptor Ring, Standard Aligned buffer format.
01 - Descriptor Chain, Standard Aligned buffer format.
10 - Descriptor Ring, Unaligned buffer format, WriteInvalidate overwrites a full
cache block at start/end of a buffer.
11 - Descriptor Ring, Unaligned buffer format, read-modify-write at start/end of
unaligned buffer.
Formats 10 and 11 are only supported by the Ethernet DMA engine and only if the
system revision indicates PERIPH_REV3 or greater.
3
eop_int_en
1'b0
Set to enable interrupt at end of packet. The interrupt will be generated when the
number of packets specified in int_pktcnt have been received, or if the receive
interrupt timer has timed out. See
Section: “Completion Interrupts” on page 158
4
hwm_int_en
1'b0
Set to enable an interrupt when the number of descriptors owned by the DMA
controller falls below the high watermark.
5
lwm_int_en
1'b0
Set to enable an interrupt when the number of descriptors owned by the DMA
controller falls below the low watermark.
The receiver will assert flow control when the number of descriptors falls below this
watermark.
6
tbx_en
1'b0
Set to cause the transmit DMA engine to fetch two 32 byte blocks at a time
(increasing the open page hit rate in the SDRAM). Clear to only fetch one block at
a time. The tx_wr_thrsh threshold must be set to match the fetch size. MAC transmit
channels only, setting this bit in other channels causes UNDEFINED behavior.
If system revision indicates a peripheral revision earlier than PERIPH_REV3 then
when this bit is set the buffer size should be a multiple of 64 bytes, if the system
revision indicates PERIPH_REV3 or greater there is no restriction.
7
tdx_en
1'b0
Set in ring mode to allow the DMA engine to fetch two descriptors at a time. Clear
if the engine should use 16 byte fetches to get a single descriptor. If this bit is set
and there is only a single descriptor available then the invalid prefetched data is
discarded. It is recommended that this bit is set in any high bandwidth DMA
channels.
15:8
int_pktcnt
8'b0
This sets the number of packets that must be received before an end of packet
interrupt is raised. See
Section: “Completion Interrupts” on page 158
.
31:16
ringsz
16'b0
When the channel is operating in ring mode this sets the number of descriptors in
the ring. It should only be changed when the channel is disabled. If this field is set
to 0 the ring will contain 65536 descriptors.