Bus_Mode

The Bus Mode register establishes the bus operating modes for the DMA.
Module Instance Base Address Register Address
emac0 0xFF700000 0xFF701000
emac1 0xFF702000 0xFF703000

Offset: 0x1000

Access: RW

Important: To prevent indeterminate system behavior, reserved areas of memory must not be accessed by software or hardware. Any area of the memory map that is not explicitly defined as a register space or accessible memory is considered reserved.
Bit Fields
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16

Reserved

aal

RW 0x0

eightxpbl

RW 0x0

usp

RW 0x0

rpbl

RW 0x1

fb

RW 0x0

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

Reserved

pbl

RW 0x1

atds

RW 0x0

dsl

RW 0x0

Reserved

swr

RW 0x1

Bus_Mode Fields

Bit Name Description Access Reset
25 aal

When this bit is set high and the FB bit is equal to 1, the AHB or AXI interface generates all bursts aligned to the start address LS bits. If the FB bit is equal to 0, the first burst (accessing the data buffer's start address) is not aligned, but subsequent bursts are aligned to the address.

Value Description
0x0 No Address-Aligned Beats
0x1 Address-Aligned Beats (dependent on FB)
RW 0x0
24 eightxpbl

When set high, this bit multiplies the programmed PBL value (Bits[22:17] and Bits[13:8]) eight times. Therefore, the DMA transfers the data in 8, 16, 32, 64, 128, and 256 beats depending on the PBL value.

Value Description
0x0 Non Multiply Mode
0x1 Multiplies PBL value by 8
RW 0x0
23 usp

When set high, this bit configures the Rx DMA to use the value configured in Bits[22:17] as PBL. The PBL value in Bits[13:8] is applicable only to the Tx DMA operations. When reset to low, the PBL value in Bits[13:8] is applicable for both DMA engines.

Value Description
0x0 Configures TX RX DMA to PBL
0x1 Configures TX DMA to PBL
RW 0x0
22:17 rpbl

This field indicates the maximum number of beats to be transferred in one Rx DMA transaction. This is the maximum value that is used in a single block Read or Write. The Rx DMA always attempts to burst as specified in the RPBL bit each time it starts a Burst transfer on the host bus. You can program RPBL with values of 1, 2, 4, 8, 16, and 32. Any other value results in undefined behavior. This field is valid and applicable only when USP is set high.

Value Description
0x1 Beats Trans. in one Rx DMA Transaction
0x2 Beats Trans. in one Rx DMA Transaction
0x4 Beats Trans. in one Rx DMA Transaction
0x8 Beats Trans. in one Rx DMA Transaction
0x10 Beats Trans. in one Rx DMA Transaction
0x20 Beats Trans. in one Rx DMA Transaction
RW 0x1
16 fb

This bit controls whether the AXI Master interface performs fixed burst transfers or not. When set, the AXI interface uses FIXED bursts during the start of the normal burst transfers. When reset, the AXI interface uses SINGLE and INCR burst transfer operations. For more information, see Bit 0 (UNDEFINED) of the AXI Bus Mode register.

Value Description
0x0 SINGLE or INCR Burst
0x1 FIXED Burst (1, 4, 8, or 16)
RW 0x0
13:8 pbl

These bits indicate the maximum number of beats to be transferred in one DMA transaction. This is the maximum value that is used in a single block Read or Write. The DMA always attempts to burst as specified in PBL each time it starts a Burst transfer on the host bus. PBL can be programmed with permissible values of 1, 2, 4, 8, 16, and 32. Any other value results in undefined behavior. When USP is set high, this PBL value is applicable only for Tx DMA transactions. If the number of beats to be transferred is more than 32, then perform the following steps: 1. Set the 8xPBL mode. 2. Set the PBL. For example, if the maximum number of beats to be transferred is 64, then first set 8xPBL to 1 and then set PBL to 8. The PBL values have the following limitation: The maximum number of possible beats (PBL) is limited by the size of the Tx FIFO and Rx FIFO in the MTL layer and the data bus width on the DMA. The FIFO has a constraint that the maximum beat supported is half the depth of the FIFO, except when specified.

RW 0x1
7 atds

Alternate Descriptor Size

This bit is valid (read or write with default value of 0) when you select the Alternate Descriptor feature and any (or both) of the following features:
  • Advanced Timestamp
  • IPC Full Checksum Offload Engine (Type 2)

When set, the size of the alternate descriptor increases to 32 bytes (8 DWORDS). The software application must set this bit when timestamping is enabled in Register 448 (Timestamp Control Register) or Checksum Offload is enabled in Register 0 (MAC Configuration Register). This is required when the Advanced Timestamp feature or the IPC Full Offload Engine (Type 2) is enabled in the receiver. The enhanced descriptor is not required if the Advanced Timestamp and IPC Full Checksum Offload (Type 2) features are not enabled. In such cases, you can use the 16 bytes descriptor to save 4 bytes of memory.

When reset, the descriptor size reverts back to 4 DWORDs (16 bytes). This bit preserves the backward compatibility for the descriptor size. In versions prior to 3.50a, the descriptor size is 16 bytes for both normal and enhanced descriptor. In version 3.50a, descriptor size is increased to 32 bytes because of the Advanced Timestamp and IPC Full Checksum Offload Engine (Type 2) features.

Value Description
0x0 Descriptor size is 16 bytes (4 DWORDS)
0x1 Descriptor size is 32 bytes (8 DWORDS)
RW 0x0
6:2 dsl

This bit specifies the number of Word, Dword, or Lword (depending on the 32-bit, 64-bit, or 128-bit bus) to skip between two unchained descriptors. The address skipping starts from the end of current descriptor to the start of next descriptor. When the DSL value is equal to zero, then the descriptor table is taken as contiguous by the DMA in Ring mode.

RW 0x0
0 swr

When this bit is set, the MAC DMA Controller resets the logic and all internal registers of the MAC. It is cleared automatically after the reset operation has completed in all of the EMAC clock domains. Before reprogramming any register of the EMAC, you should read a zero (0) value in this bit . Note: * The Software reset function is driven only by this bit. * The reset operation is completed only when all resets in all active clock domains are de-asserted. Therefore, it is essential that all the PHY inputs clocks (applicable for the selected PHY interface) are present for the software reset completion.

Value Description
0x0 MAC DMA Controller Clears Logic
0x1 MAC DMA Controller Resets Logic
RW 0x1