SPRUIE9D May 2017 – May 2024 DRA74P , DRA75P , DRA76P , DRA77P
Some registers have no reset value (marked with -) because of hardware implementation in memory. Software must ensure the correct programming of these registers, if needed.
Shadow registers are used to read run-time registers such as CCEN, CCFN, CDAC, and CSAC. Typically, when accessed in 8-bit or 16-bit access for two consecutive accesses, the value of the previous registers can change. A shadow register holds the entire value to let the next access recover the remaining 24 or 16 bits.
For non-32-bit transactions, start reading or writing from the LSByte first to enable the register update. There is no issue for 32-bit read-write transactions.
Address Offset | 0x0000 0000 | ||
Physical Address | 0x4A05 6000 | Instance | DMA_SYSTEM |
Description | This register contains the DMA revision code | ||
Type | R |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
REVISION |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:0 | REVISION | Reserved, Write 0's for future compatibility. Read returns 0 | R | TI internal Data |
Address Offset | 0x0000 0008 + (0x4 * j) | Index | j = 0 to 3 |
Physical Address | 0x4A05 6008 + (0x4 * j) | Instance | DMA_SYSTEM |
Description | The interrupt status register regroups all the status of the DMA_SYSTEM channels that can generate an interrupt over line Lj. | ||
Type | RW |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
CH_31_0_Lj |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:0 | CH_31_0_Lj | Channel 31 Interrupt on Lj: When an interrupt is seen on the line Lj the status of a interrupting channel i is read in the bit field i. | RW W1toClr | 0x0000 0000 |
Read 0x0: Channel Interrupt Lj false | ||||
Write 0x0: Channel Interrupt Lj status bit unchanged | ||||
Write 0x1: Channel Interrupt Lj status bit is reset | ||||
Read 0x1: Channel Interrupt Lj true (pending) |
Address Offset | 0x0000 0018 + (0x4 * j) | Index | j = 0 to 3 |
Physical Address | 0x4A05 6018 + (0x4 * j) | Instance | DMA_SYSTEM |
Description | The interrupt enable register allows to mask/unmask the module internal sources of interrupt, on line Lj | ||
Type | RW |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
CH_31_0_Lj_EN |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:0 | CH_31_0_Lj_EN | Channel Interrupt on Lj mask/unmask : to Mask/Unmask a channel i interrupt on Lj the user writes 0/1 on the bit field i. | RW | 0x0000 0000 |
0x0: Channel Interrupt Lj is masked | ||||
0x1: Channel Interrupt Lj generates an interrupt when it occurs |
Address Offset | 0x0000 0028 | ||
Physical Address | 0x4A05 6028 | Instance | DMA_SYSTEM |
Description | The register provides status information about the module excluding the interrupt status information (see interrupt status register) | ||
Type | R |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | RESETDONE |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:1 | RESERVED | Reserved for module-specific status information | R | 0x0000 0000 |
0 | RESETDONE | Internal reset monitoring | R | 1 |
Read 0x0: Internal module reset is on-going | ||||
Read 0x1: Reset completed |
Address Offset | 0x0000 002C | ||
Physical Address | 0x4A05 602C | Instance | DMA_SYSTEM |
Description | DMA system configuration register | ||
Type | RW |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | MIDLEMODE | RESERVED | CLOCKACTIVITY | RESERVED | EMUFREE | SIDLEMODE | RESERVED | RESERVED | AUTOIDLE |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:14 | RESERVED | Write 0's for future compatibility, Reads return 0 | RW | 0x00000 |
13:12 | MIDLEMODE | Read write power management, standby/wait control | RW | 0x0 |
0x0: Force-standby: MStandby is asserted only when all the DMA channels are disabled | ||||
0x1: No-Standby: MStandby is never asserted | ||||
0x2: Smart-Standby: MStandby is asserted if at least one of the following two conditions is satisfied: 1. All the channels are disabled, OR 2. There is no non-synchronized channel enabled AND [if hardware synchronized channel is enabled, then no DMA request input is asserted and no requests are pending to be serviced]. | ||||
0x3: Reserved | ||||
11:10 | RESERVED | Reserved for clocks activities extension | RW | 0x0 |
9:8 | CLOCKACTIVITY | Clocks activities during wake-up Bit 8: Interface clock 0x0: Interface clock can be switched-off Bit 9: Functional clock 0x0: Functional clock can be switched-off | R | 0x0 |
7:6 | RESERVED | Write 0's for future compatibility. Read returns 0 | RW | 0x0 |
5 | EMUFREE | Enable sensitivity to MSuspend | RW | 0 |
0x0: DMA4 freezes its internal logic upon MSuspend assertion | ||||
0x1: DMA4 ignores the MSuspend input | ||||
4:3 | SIDLEMODE | Configuration port power management, Idle req/ack control | RW | 0x0 |
0x0: Force-idle. An idle request is acknowledged unconditionally | ||||
0x1: No-idle. An idle request is never acknowledged | ||||
0x2: Smart-idle. Idle acknowledge is given by DMA4 if all of the conditions are true: 1. All the channels are disabled. 2. If hardware synchronized channel is enabled, then no DMA request input is asserted and no requests are pending to be serviced. 3. All transactions are completed on all the DMA ports. 4.No interrupts are pending to be serviced. | ||||
0x3: Reserved. Do not use | ||||
2 | RESERVED | Write 0's for future compatibility, Reads return 0 | RW | 0 |
1 | RESERVED | Reserved for non-GP devices | RW | 0 |
0 | AUTOIDLE | Internal interface clock gating strategy | RW | 0 |
0x0: Interface clock is free running | ||||
0x1: Automatic interface clock gating strategy is applied, based on the interface activity. |
Address Offset | 0x0000 0064 | ||
Physical Address | 0x4A05 6064 | Instance | DMA_SYSTEM |
Description | DMA Capabilities Register 0 LSW | ||
Type | RW |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | LINK_LIST_CPBLTY_TYPE4 | LINK_LIST_CPBLTY_TYPE123 | CONST_FILL_CPBLTY | TRANSPARENT_BLT_CPBLTY | RESERVED |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:22 | RESERVED | Write 0's for future compatibility. Read returns 0 | RW | 0x000 |
21 | LINK_LIST_CPBLTY_TYPE4 | Link List capability for type4 descriptor capability | R | 0 |
20 | LINK_LIST_CPBLTY_TYPE123 | Link List capability for type123 descriptor capability | R | 1 |
19 | CONST_FILL_CPBLTY | Constant_Fill_Capability | R | 1 |
Read 0x0: No LCH supports constant fill copy | ||||
Read 0x1: any LCH supports constant fill copy | ||||
18 | TRANSPARENT_BLT_CPBLTY | Transparent_BLT_Capability | R | 1 |
Read 0x0: No LCH supports transparent BLT copy | ||||
Read 0x1: any LCH supports transparent BLT copy | ||||
17:0 | RESERVED | Write 0's for future compatibility. Read returns 0 | RW | 0x00000 |
Address Offset | 0x0000 006C | ||
Physical Address | 0x4A05 606C | Instance | DMA_SYSTEM |
Description | DMA Capabilities Register 2 | ||
Type | R |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | SEPARATE_SRC_AND_DST_INDEX_CPBLTY | DST_DOUBLE_INDEX_ADRS_CPBLTY | DST_SINGLE_INDEX_ADRS_CPBLTY | DST_POST_INCRMNT_ADRS_CPBLTY | DST_CONST_ADRS_CPBLTY | SRC_DOUBLE_INDEX_ADRS_CPBLTY | SRC_SINGLE_INDEX_ADRS_CPBLTY | SRC_POST_INCREMENT_ADRS_CPBLTY | SRC_CONST_ADRS_CPBLTY |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:9 | RESERVED | Write 0's for future compatibility. Read returns 0 | R | 0x000000 |
8 | SEPARATE_SRC_AND_DST_INDEX_CPBLTY | Separate_source/destination_index_capability | R | 1 |
Read 0x0: Does not support separate src/dst index for 2D addressing | ||||
Read 0x1: Supports separate src/dest index for 2D addressing | ||||
7 | DST_DOUBLE_INDEX_ADRS_CPBLTY | Destination_double_index_address_capability | R | 1 |
Read 0x0: Does not support double index address mode on the destination port | ||||
Read 0x1: Supports double index address mode on the destination port | ||||
6 | DST_SINGLE_INDEX_ADRS_CPBLTY | Destination_single_index_address_capability | R | 1 |
Read 0x0: Does not support single index address mode on the destination port | ||||
Read 0x1: Supports single index address mode on the destination port | ||||
5 | DST_POST_INCRMNT_ADRS_CPBLTY | Destination_post_increment_address_capability | R | 1 |
Read 0x0: Does not supports post-increment address mode in the destination port | ||||
Read 0x1: Supports post-increment address mode in the destination port | ||||
4 | DST_CONST_ADRS_CPBLTY | Destination_constant_address_capability | R | 1 |
Read 0x0: Does not supports constant address mode in the destination port | ||||
Read 0x1: Supports constant address mode in the destination port | ||||
3 | SRC_DOUBLE_INDEX_ADRS_CPBLTY | Source_double_index_address_capability | R | 1 |
Read 0x0: Does not support double index address mode on the source port | ||||
Read 0x1: Supports double index address mode on the source port | ||||
2 | SRC_SINGLE_INDEX_ADRS_CPBLTY | Source_single_index_address_capability | R | 1 |
Read 0x0: Does not support single index address mode on the source port | ||||
Read 0x1: Supports single index address mode in the source port | ||||
1 | SRC_POST_INCREMENT_ADRS_CPBLTY | Source_post_increment_address_capability | R | 1 |
Read 0x0: Does not supports post-increment address mode in the source port | ||||
Read 0x1: Supports post-increment address mode in the source port | ||||
0 | SRC_CONST_ADRS_CPBLTY | Source_constant_address_capability | R | 1 |
Read 0x0: Does not supports constant address mode in the source port | ||||
Read 0x1: Supports constant address mode in the source port |
Address Offset | 0x0000 0070 | ||
Physical Address | 0x4A05 6070 | Instance | DMA_SYSTEM |
Description | DMA Capabilities Register 3 | ||
Type | R |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | BLOCK_SYNCHR_CPBLTY | PKT_SYNCHR_CPBLTY | CHANNEL_CHANINIG_CPBLTY | CHANNEL_INTERLEAVE_CPBLTY | RESERVED | FRAME_SYNCHR_CPBLTY | ELMNT_SYNCHR_CPBLTY |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:8 | RESERVED | Write 0's for future compatibility. Read returns 0 | R | 0x000000 |
7 | BLOCK_SYNCHR_CPBLTY | Block_synchronization_capability | R | 1 |
Read 0x0: Does not support synchronization transfer on block boundary | ||||
Read 0x1: Supports synchronization transfer on block boundary | ||||
6 | PKT_SYNCHR_CPBLTY | Packet_synchronization_capability | R | 1 |
Read 0x0: Does not support synchronization transfer on packet boundary | ||||
Read 0x1: Supports synchronization transfer on packet boundary | ||||
5 | CHANNEL_CHANINIG_CPBLTY | Channel_Chaninig_capability | R | 1 |
Read 0x0: Does not support Channel Chaninig capability | ||||
Read 0x1: Supports Channel Chaninig capability | ||||
4 | CHANNEL_INTERLEAVE_CPBLTY | Channel_interleave_capability | R | 1 |
Read 0x0: Does not support Channel interleave capability | ||||
Read 0x1: Supports Channel_interleave capability | ||||
3:2 | RESERVED | R | 0x0 | |
1 | FRAME_SYNCHR_CPBLTY | Frame_synchronization_capability | R | 1 |
Read 0x0: Does not support synchronization transfer on Frame boundary | ||||
Read 0x1: Supports synchronization transfer on Frame boundary | ||||
0 | ELMNT_SYNCHR_CPBLTY | Element_synchronization_capability | R | 1 |
Read 0x0: Does not support synchronization transfer on Element boundary | ||||
Read 0x1: Supports synchronization transfer on Element boundary |
Address Offset | 0x0000 0074 | ||
Physical Address | 0x4A05 6074 | Instance | DMA_SYSTEM |
Description | DMA Capabilities Register 4 | ||
Type | RW |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | EOSB_INTERRUPT_CPBLTY | RESERVED | DRAIN_END_INTERRUPT_CPBLTY | MISALIGNED_ADRS_ERR_INTERRUPT_CPBLTY | SUPERVISOR_ERR_INTERRUPT_CPBLTY | RESERVED | TRANS_ERR_INTERRUPT_CPBLTY | PKT_INTERRUPT_CPBLTY | SYNC_STATUS_CPBLTY | BLOCK_INTERRUPT_CPBLTY | LAST_FRAME_INTERRUPT_CPBLTY | FRAME_INTERRUPT_CPBLTY | HALF_FRAME_INTERRUPT_CPBLTY | EVENT_DROP_INTERRUPT_CPBLTY | RESERVED |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:15 | RESERVED | Write 0's for future compatibility. Read returns 0. | RW | 0x00000 |
14 | EOSB_INTERRUPT_CPBLTY | End of Super Block detection capability. | R | 1 |
13 | RESERVED | Reserved for non-GP devices | R | 1 |
12 | DRAIN_END_INTERRUPT_CPBLTY | Drain End detection capability. | R | 1 |
11 | MISALIGNED_ADRS_ERR_INTERRUPT_CPBLTY | Misaligned error detection capability. | R | 1 |
10 | SUPERVISOR_ERR_INTERRUPT_CPBLTY | Supervisor error detection capability. | R | 1 |
9 | RESERVED | Reserved for non-GP devices | R | 1 |
8 | TRANS_ERR_INTERRUPT_CPBLTY | Transaction error detection capability. | R | 1 |
7 | PKT_INTERRUPT_CPBLTY | End of Packet detection capability. | R | 1 |
Read 0x0: Does not support end of packet interrupt generation capability | ||||
Read 0x1: Supports end of packet interrupt generation capability | ||||
6 | SYNC_STATUS_CPBLTY | Sync_status_capability | R | 1 |
Read 0x0: Does not support synchronized transfer status bit generation | ||||
Read 0x1: Supports synchronized transfer status bit generation | ||||
5 | BLOCK_INTERRUPT_CPBLTY | End of block detection capability. | R | 1 |
Read 0x0: Does not support end of block interrupt generation capability | ||||
Read 0x1: Supports end of block interrupt generation capability | ||||
4 | LAST_FRAME_INTERRUPT_CPBLTY | Start of last frame detection capability. | R | 1 |
Read 0x0: Does not support last frame interrupt generation capability | ||||
Read 0x1: Supports last frame interrupt generation capability | ||||
3 | FRAME_INTERRUPT_CPBLTY | End of frame detection capability. | R | 1 |
Read 0x0: Does not support end of frame interrupt generation capability | ||||
Read 0x1: Supports end of frame interrupt generation capability | ||||
2 | HALF_FRAME_INTERRUPT_CPBLTY | Detection capability of the half of frame end. | R | 1 |
Read 0x0: Does not support half of frame interrupt generation capability | ||||
Read 0x1: Supports half of frame interrupt generation capability | ||||
1 | EVENT_DROP_INTERRUPT_CPBLTY | Request collision detection capability. | R | 1 |
Read 0x0: Does not support event drop interrupt generation capability | ||||
Read 0x1: Supports event drop interrupt generation capability | ||||
0 | RESERVED | Write 0's for future compatibility. Read returns 0. | RW | 0 |
Address Offset | 0x0000 0078 | ||
Physical Address | 0x4A05 6078 | Instance | DMA_SYSTEM |
Description | FIFO sharing between high and low priority channel. The Maximum per channel FIFO depth is bounded by the low and high channel FIFO budget. The high respectively low priority channels maximum burst size must be less than the min (high respectively low priority channel FIFO budget, per channel maximum FIFO depth) | ||
Type | RW |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | CHANNEL_ID_GATE | ARBITRATION_RATE | HI_LO_FIFO_BUDGET | HI_THREAD_RESERVED | RESERVED | MAX_CHANNEL_FIFO_DEPTH |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:25 | RESERVED | Write 0's for future compatibility. Read returns 0. | RW | 0x00 |
24 | CHANNEL_ID_GATE | Gates the Channel ID bus monitoring on both Read and Write ports 0x0: Gates the Channel ID qualifiers on both Read and Write Ports 0x1: Does not gate the Channel ID qualifiers on both Read and Write Ports | RW | 0x0 |
23:16 | ARBITRATION_RATE | Arbitration switching rate between prioritized and regular channel queues | RW | 0x01 |
15:14 | HI_LO_FIFO_BUDGET | Allow to have a separate Global FIFO budget for high and low priority channels. For Hi priority Channel: (Per_channel_Maximum FIFO depth + 1) x Number of active High priority Channel =< High Budget FIFO For Low priority channel: (Per_channel_Maximum FIFO depth + 1) x Number of active Low priority Channel =< Low Budget FIFO | RW | 0x0 |
0x0: no fixed budget for neither higher nor lower priority channel | ||||
0x1: 75% of FIFO for low priority and 25% for high priority channels | ||||
0x2: 25% of FIFO for low priority and 75% for high priority channels | ||||
0x3: 50% of FIFO for low priority and 50% for high priority channels | ||||
13:12 | HI_THREAD_RESERVED | Allow thread reservation for high priority channel on both read and write ports. | RW | 0x0 |
0x0: No ThreadID is reserved on the Read Port for high priority channels. No ThreadID is reserved on the Write Port for high priority channels. | ||||
0x1: Read Port ThreadID 0 is reserved for high priority channels. Write Port ThreadID 0 is reserved for high priority channels. | ||||
0x2: Read port ThreadID 0 and ThreadID 1 are reserved for high priority channels. Write Port ThreadID 0 is reserved for high priority channels. | ||||
0x3: Read PortThreadID 0, ThreadID 1 and ThreadID 2 are reserved for high priority channels. Write Port ThreadID 0 is reserved for high priority channels. | ||||
11:8 | RESERVED | Write 0's for future compatibility. Read returns 0. | RW | 0x0 |
7:0 | MAX_CHANNEL_FIFO_DEPTH | Maximum FIFO depth allocated to one logical channel. Maximum FIFO depth can not be 0x0. It should be at least 0x1 or greater. Note that If channel limit is less than destination burst size enough data will not be accumulated in the data FIFO and it will never be sent out on the WR port. The burst size should be less than the FIFO limit specified in this bit field. | RW | 0x10 |
Address Offset | 0x0000 0080 + (0x60 * i) | index: | i = 0 to 31 |
Physical Address | 0x4A05 6080 + (0x60 * i) | Instance | DMA_SYSTEM |
Description | Channel Control Register | ||
Type | RW |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | RESERVED | WRITE_PRIORITY | BUFFERING_DISABLE | SEL_SRC_DST_SYNC | PREFETCH | SUPERVISOR | RESERVED | SYNCHRO_CONTROL_UPPER | BS | TRANSPARENT_COPY_ENABLE | CONST_FILL_ENABLE | DST_AMODE | SRC_AMODE | RESERVED | WR_ACTIVE | RD_ACTIVE | SUSPEND_SENSITIVE | ENABLE | READ_PRIORITY | FS | SYNCHRO_CONTROL |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:30 | RESERVED | Write 0's for future compatibility. Read returns 0. | RW | 0x0 |
29:27 | RESERVED | Reserved for non-GP devices | RW | 0x0 |
26 | WRITE_PRIORITY | Channel priority on the Write side | RW | 0 |
0x0: Channel has low priority on the write side during the arbitration process. | ||||
0x1: Channel has high priority on write sided during the arbitration process. | ||||
25 | BUFFERING_DISABLE | This bit allows to disable the default buffering functionality when transfer is source synchronized. | RW | - |
0x0: Buffering is enabled across element/packet when source is synchronized to element, packet, frame or blocks. | ||||
0x1: Buffering is disabled across element/packet when source is synchronized to element, packet, frame or blocks. | ||||
24 | SEL_SRC_DST_SYNC | Specifies that element, packet, frame or block transfer (depending on CCR.bs and CCR.fs) is triggered by the source or the destination on the DMA request | RW | - |
0x0: Transfer is triggered by the destination. If synch on packet the packet element number is specified in the CDFI register. | ||||
0x1: Transfer is triggered by the source. If synchronized on packet the packet element number is specified in the CSFI register. | ||||
23 | PREFETCH | Enables the prefetch mode | RW | 0 |
0x0: Prefetch mode is disabled. When Sel_Src_Dst_Sync=1 transfers are buffered and pipelined between DMA requests. | ||||
0x1: Prefetch mode is enabled. Prefetch mode is active only when destination is synchronized. It is software user responsibility not to have at the same time Prefetch=1 when Sel_Src_Dst_Sync=1. This mode is not supported. | ||||
22 | SUPERVISOR | Enables the supervisor mode | RW | 0 |
0x0: Supervisor mode is disabled. | ||||
0x1: Supervisor mode is enabled. | ||||
21 | RESERVED | Reserved for non-GP devices | RW | 0 |
20:19 | SYNCHRO_CONTROL_UPPER | Channel Synchronization control upper (used in conjunction with the 5 bits of synchro channel DMA4_CCRi[4:0]) Used in conjunction, as 2 MSB, with the 5 bits of the synchro channel bit field. | RW | 0b00 |
18 | BS | Block synchronization This bit used in conjunction with the fs to see how the DMA request is serviced in a synchronized transfer. | RW | - |
17 | TRANSPARENT_COPY_ENABLE | Transparent copy enable | RW | - |
0x0: Transparent copy mode is disabled. | ||||
0x1: Transparent copy mode is enabled. | ||||
16 | CONST_FILL_ENABLE | Constant fill enable | RW | 0 |
0x0: Constant fill mode is disabled. | ||||
0x1: Constant fill mode is enabled. | ||||
15:14 | DST_AMODE | Selects the addressing mode on the Write Port of a channel. | RW | 0bxx |
0x0: Constant address mode | ||||
0x1: Post-incremented address mode | ||||
0x2: Single index address mode | ||||
0x3: Double index address mode | ||||
13:12 | SRC_AMODE | Selects the addressing mode on the Read Port of a channel. | RW | 0bxx |
0x0: Constant address mode | ||||
0x1: Post-incremented address mode | ||||
0x2: Single index address mode | ||||
0x3: Double index address mode | ||||
11 | RESERVED | Write 0s for future compatibility. Read returns 0. | RW | 0 |
10 | WR_ACTIVE | Indicates if the channel write context is active or not | R | 0 |
Read 0x0: Channel is not active on the write port. | ||||
Read 0x1: Channel is currently active on the write port. | ||||
9 | RD_ACTIVE | Indicates if the channel read context is active or not | R | 0 |
Read 0x0: Channel is not active on the read port. | ||||
Read 0x1: Channel is currently active on the read port. | ||||
8 | SUSPEND_SENSITIVE | Logical channel suspend enable bit | RW | 0 |
0x0: The channel ignores the MSuspend even if EMUFree is set to 0. | ||||
0x1: If EMUFree is set to 0 and MSuspend comes in then all current OCP services (single transaction or burst transaction as specified in the corresponding CSDP register) have to be completed before stopping processing any more transactions. | ||||
7 | ENABLE | Logical channel enable. It is SW responsibility to clear the CSR register and the IRQSTATUS bit for the different interrupt lines before enabling the channel. | RW | 0 |
0x0: The logical channel is disabled. | ||||
0x1: The logical channel is enabled. | ||||
6 | READ_PRIORITY | Channel priority on the read side | RW | 0 |
0x0: Channel has low priority on the read side during the arbitration process. | ||||
0x1: Channel has high priority on read sided during the arbitration process. | ||||
5 | FS | Frame synchronization This bit used in conjunction with the BS to see how the DMA request is serviced in a synchronized transfer FS = 0 and BS = 0: An element is transferred once a DMA request is made. FS = 0 and BS = 1: An entire block is transferred once a DMA request is made. FS = 1 and BS = 0: An entire frame is transferred once a DMA request is made. FS = 1 and BS = 1: A packet is transferred once a DMA request is made. All these different transfers can be interleaved on the port with other DMA requests. | RW | - |
4:0 | SYNCHRO_CONTROL | Channel synchronization control This bit field used in conjunction with the second_level_ synchro_control_upper (as 2 MSB) 0000000 : Is reserved for non synchronized LCH transfer xxxxxxx (from 1 to 127)There are 127 possible DMA request to assign to any LCH. Note: The channel synchronization control registers are 1-based. For example, to enable the S_DMA_1 request, DMA4_CCR[4:0] SYNCHRO_CONTROL must be set to 0x2 (DMA request number + 1). | RW | 0b00000 |
Address Offset | 0x0000 0084 + (0x60 * i) | index: | i = 0 to 31 |
Physical Address | 0x4A05 6084 + (0x60 * i) | Instance | DMA_SYSTEM |
Description | Channel Link Control Register | ||
Type | RW |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | ENABLE_LNK | RESERVED | NEXTLCH_ID |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:16 | RESERVED | Write 0's for future compatibility. Read returns 0. | RW | 0x0000 |
15 | ENABLE_LNK | Enables or disable the channel linking. | RW | 0 |
0x0: Channel linking mode is disabled When set on the fly to 0 the current channel will complete the transfer and stops the chain linking | ||||
0x1: Channel linking mode is enabled. The logical channel defined in the NextLCH_ID is enabled at the end of the current transfer | ||||
14:5 | RESERVED | Write 0's for future compatibility. Read returns 0. | RW | 0x000 |
4:0 | NEXTLCH_ID | Defines the NextLCh_ID, which is used to build logical channel chaining queue. | RW | 0bxxxxx |
Address Offset | 0x0000 0088 + (0x60 * i) | index: | i = 0 to 31 |
Physical Address | 0x4A05 6088 + (0x60 * i) | Instance | DMA_SYSTEM |
Description | Channel Interrupt Control Register | ||
Type | RW |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | SUPER_BLOCK_IE | RESERVED | DRAIN_IE | MISALIGNED_ERR_IE | SUPERVISOR_ERR_IE | RESERVED | TRANS_ERR_IE | PKT_IE | RESERVED | BLOCK_IE | LAST_IE | FRAME_IE | HALF_IE | DROP_IE | RESERVED |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:15 | RESERVED | Write 0's for future compatibility. Read returns 0. | RW | 0x00000 |
14 | SUPER_BLOCK_IE | Enables the end of super block interrupt | RW | - |
13 | RESERVED | Reserved for non-GP devices | RW | 1 |
12 | DRAIN_IE | Enables the end of draining interrupt | RW | 0 |
11 | MISALIGNED_ERR_IE | Enables the address misaligned error event interrupt | RW | - |
0x0: Disables the misaligned address error event interrupt | ||||
0x1: Enables the misaligned address error event interrupt | ||||
10 | SUPERVISOR_ERR_IE | Enables the supervisor transaction error event interrupt | RW | 1 |
0x0: Disables the supervisor transaction error event interrupt | ||||
0x1: Enables the supervisor transaction error event interrupt | ||||
9 | RESERVED | Reserved for non-GP devices | RW | 1 |
8 | TRANS_ERR_IE | Enables the transaction error event interrupt | RW | - |
0x0: Disables the transaction error event interrupt | ||||
0x1: Enables the transaction error event interrupt | ||||
7 | PKT_IE | Enables the end of Packet interrupt | RW | - |
0x0: Disables the end of Packet transfer interrupt | ||||
0x1: Enables the end of Packet transfer interrupt | ||||
6 | RESERVED | Write 0's for future compatibility. Read returns 0. | RW | 0 |
5 | BLOCK_IE | Enables the end of block interrupt | RW | - |
0x0: Disables the end of block interrupt | ||||
0x1: Enables the end of block interrupt | ||||
4 | LAST_IE | Last frame interrupt enable (start of last frame) | RW | - |
0x0: Disables the last frame interrupt | ||||
0x1: Enables the last frame interrupt | ||||
3 | FRAME_IE | Frame interrupt enable (end of frame) | RW | - |
0x0: Disables the end of frame interrupt | ||||
0x1: Enables the end of frame interrupt | ||||
2 | HALF_IE | Enables or disables the half frame interrupt. | RW | - |
0x0: Disables the half frame interrupt | ||||
0x1: Enables the half frame interrupt | ||||
1 | DROP_IE | Synchronization event drop interrupt enable (request collision) | RW | 0 |
0x0: Disables the event drop interrupt | ||||
0x1: Enables the event drop interrupt | ||||
0 | RESERVED | Write 0's for future compatibility. Read returns 0. | RW | 0 |
Address Offset | 0x0000 008C + (0x60 * i) | index: | i = 0 to 31 |
Physical Address | 0x4A05 608C + (0x60 * i) | Instance | DMA_SYSTEM |
Description | Channel Status Register | ||
Type | RW |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | RESERVED | SUPER_BLOCK | RESERVED | DRAIN_END | MISALIGNED_ADRS_ERR | SUPERVISOR_ERR | RESERVED | TRANS_ERR | PKT | SYNC | BLOCK | LAST | FRAME | HALF | DROP | RESERVED |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:17 | RESERVED | Write 0's for future compatibility. Read returns 0. | RW | 0x0000 |
16:15 | RESERVED | Reserved for debug (Monitor descriptor/data load phase), Write 0's for future compatibility, Read returns 0 | RW | 0x0 |
14 | SUPER_BLOCK | End of Super block event Read 0x0: The current Super block transfer has not been finished Write 0x0: Status bit unchanged Read 0x1: The current Super block has been transferred Write 0x1: Status bit is reset | RW W1toClr | 0 |
13 | RESERVED | Reserved for non-GP devices | RW | 0 |
12 | DRAIN_END | End of channel draining Read 0x0: No drain end in the current transfer Write 0x0: Status bit unchanged Read 0x1: The current channel draining is completed Write 0x1: Status bit is reset | RW W1toClr | 0 |
11 | MISALIGNED_ADRS_ERR | Misaligned address error event | RW W1toClr | 0 |
Read 0x0: No address error | ||||
Write 0x0: Status bit unchanged | ||||
Write 0x1: Status bit is reset | ||||
Read 0x1: An address error has been occurred | ||||
10 | SUPERVISOR_ERR | Supervisor transaction error event | RW W1toClr | 0 |
Read 0x0: No supervisor transaction error | ||||
Write 0x0: Status bit unchanged | ||||
Write 0x1: Status bit is reset | ||||
Read 0x1: A supervisor transaction error has been occurred | ||||
9 | RESERVED | Reserved for non-GP devices | RW | 0 |
8 | TRANS_ERR | Transaction error event | RW W1toClr | 0 |
Read 0x0: No transaction error | ||||
Write 0x0: Status bit unchanged | ||||
Write 0x1: Status bit is reset | ||||
Read 0x1: A transaction error has been occurred | ||||
7 | PKT | End of Packet transfer | RW W1toClr | 0 |
Read 0x0: The current packet transfer has not been finished | ||||
Write 0x0: Status bit unchanged | ||||
Write 0x1: Status bit is reset | ||||
Read 0x1: The current packet has been transferred | ||||
6 | SYNC | Synchronization status of a channel. | RW W1toClr | 0 |
Read 0x0: Logical channel is not scheduled or servicing a non synchronized DMA request. | ||||
Write 0x0: Status bit unchanged | ||||
Write 0x1: Status bit is reset | ||||
Read 0x1: Logical channel is servicing a synchronized DMA request | ||||
5 | BLOCK | End of block event | RW W1toClr | 0 |
Read 0x0: The current block transfer has not been finished | ||||
Write 0x0: Status bit unchanged | ||||
Write 0x1: Status bit is reset | ||||
Read 0x1: The current block has been transferred | ||||
4 | LAST | Last frame (start of last frame) | RW W1toClr | 0 |
Read 0x0: The start of the last frame to transfer is not reached | ||||
Write 0x0: Status bit unchanged | ||||
Write 0x1: Status bit is reset | ||||
Read 0x1: The start of the last frame to transfer is reached | ||||
3 | FRAME | End of frame event | RW W1toClr | 0 |
Read 0x0: The end of current transferred frame is not reached | ||||
Write 0x0: Status bit unchanged | ||||
Write 0x1: Status bit is reset | ||||
Read 0x1: The end of current transferred frame is reached | ||||
2 | HALF | Half of frame event. | RW W1toClr | 0 |
Read 0x0: The half of current transferred frame is not reached | ||||
Write 0x0: Status bit unchanged | ||||
Write 0x1: Status bit is reset | ||||
Read 0x1: The half of current transferred frame is reached | ||||
1 | DROP | Synchronization event drop occured during the transfer | RW W1toClr | 0 |
Read 0x0: No synchronization collision | ||||
Write 0x0: Status bit unchanged | ||||
Write 0x1: Status bit is reset | ||||
Read 0x1: A synchronization collision has been occurred | ||||
0 | RESERVED | Write 0's for future compatibility. Read returns 0. | RW | 0 |
Address Offset | 0x0000 0090 + (0x60 * i) | index: | i = 0 to 31 |
Physical Address | 0x4A05 6090 + (0x60 * i) | Instance | DMA_SYSTEM |
Description | Channel Source Destination Parameters | ||
Type | RW |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | SRC_ENDIAN | SRC_ENDIAN_LOCK | DST_ENDIAN | DST_ENDIAN_LOCK | WRITE_MODE | DST_BURST_EN | DST_PACKED | RESERVED | SRC_BURST_EN | SRC_PACKED | RESERVED | DATA_TYPE |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:22 | RESERVED | Write 0's for future compatibility. Read returns 0. | RW | 0x000 |
21 | SRC_ENDIAN | Channel source endianness control | RW | - |
0x0: Source has Little Endian type | ||||
0x1: Source has Big Endian type | ||||
20 | SRC_ENDIAN_LOCK | Endianness Lock | RW | - |
0x0: Endianness adapt | ||||
0x1: Endianness lock | ||||
19 | DST_ENDIAN | Channel Destination endianness control | RW | - |
0x0: Destination has Little Endian type | ||||
0x1: Destination has Big Endian type | ||||
18 | DST_ENDIAN_LOCK | Endianness Lock | RW | - |
0x0: Endianness adapt | ||||
0x1: Endianness lock | ||||
17:16 | WRITE_MODE | Used to enable writing mode without posting or with posting | RW | 0bxx |
0x0: Write None Posted (WRNP) | ||||
0x1: Write (Posted) | ||||
0x2: All transaction are mapped on the Write command as posted except for the last transaction in the transfer mapped on a Write None Posted | ||||
0x3: Undefined | ||||
15:14 | DST_BURST_EN | Used to enable bursting on the Write Port. Smaller burst size than the programmed burst size is also allowed | RW | 0b00 |
0x0: single access | ||||
0x1: 16 bytes or 4x32-bit / 2x64-bit burst access | ||||
0x2: 32 bytes or 8x32-bit / 4x64-bit burst access | ||||
0x3: 64 bytes or 16x32-bit / 8x64-bit burst access | ||||
13 | DST_PACKED | Destination receives packed data. | RW | - |
0x0: The destination target is non packed | ||||
0x1: The destination target is packed | ||||
12:9 | RESERVED | Write the reset value. Read returns reset value | RW | 0x- |
8:7 | SRC_BURST_EN | Used to enable bursting on the Read Port. Smaller burst size than the programmed burst size is also allowed | RW | 0bxx |
0x0: single access | ||||
0x1: 16 bytes or 4x32-bit / 2x64-bit burst access | ||||
0x2: 32 bytes or 8x32-bit / 4x64-bit burst access | ||||
0x3: 64 bytes or 16x32-bit / 8x64-bit burst access | ||||
6 | SRC_PACKED | Source provides packed data. | RW | - |
0x0: The source target is non packed | ||||
0x1: The source target is packed | ||||
5:2 | RESERVED | Write the reset value. Read returns reset value | RW | 0x- |
1:0 | DATA_TYPE | Defines the type of the data moved in the channel. | RW | 0bxx |
0x0: 8 bits scalar | ||||
0x1: 16 bits scalar | ||||
0x2: 32 bits scalar | ||||
0x3: Reserved |
Address Offset | 0x0000 0094 + (0x60 * i) | index: | i = 0 to 31 |
Physical Address | 0x4A05 6094 + (0x60 * i) | Instance | DMA_SYSTEM |
Description | Channel Element Number | ||
Type | RW |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | CHANNEL_ELMNT_NBR |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:24 | RESERVED | Write 0's for future compatibility. Read returns 0. | RW | 0x00 |
23:0 | CHANNEL_ELMNT_NBR | Number of elements within a frame (unsigned) to transfer | RW | 0x------ |
Address Offset | 0x0000 0098 + (0x60 * i) | index: | i = 0 to 31 |
Physical Address | 0x4A05 6098 + (0x60 * i) | Instance | DMA_SYSTEM |
Description | Channel Frame Number | ||
Type | RW |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | CHANNEL_FRAME_NBR |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:16 | RESERVED | Write 0's for future compatibility. Read returns 0. | RW | 0x0000 |
15:0 | CHANNEL_FRAME_NBR | Number of frames within the block to be transferred (unsigned) | RW | 0x---- |
Address Offset | 0x0000 009C + (0x60 * i) | index: | i = 0 to 31 |
Physical Address | 0x4A05 609C + (0x60 * i) | Instance | DMA_SYSTEM |
Description | Channel Source Start Address | ||
Type | RW |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
SRC_START_ADRS |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:0 | SRC_START_ADRS | 32 bits of the source start address | RW | 0x-------- |
Address Offset | 0x0000 00A0 + (0x60 * i) | index: | i = 0 to 31 |
Physical Address | 0x4A05 60A0 + (0x60 * i) | Instance | DMA_SYSTEM |
Description | Channel Destination Start Address | ||
Type | RW |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
DST_START_ADRS |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:0 | DST_START_ADRS | 32 bits of the destination start address | RW | 0x-------- |
Address Offset | 0x0000 00A4 + (0x60 * i) | index: | i = 0 to 31 |
Physical Address | 0x4A05 60A4 + (0x60 * i) | Instance | DMA_SYSTEM |
Description | Channel Source Element Index (Signed) | ||
Type | RW |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | CHANNEL_SRC_ELMNT_INDEX |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:16 | RESERVED | Write 0's for future compatibility. Read returns 0. | RW | 0x0000 |
15:0 | CHANNEL_SRC_ELMNT_INDEX | Channel source element index | RW | 0x---- |
Address Offset | 0x0000 00A8 + (0x60 * i) | index: | i = 0 to 31 |
Physical Address | 0x4A05 60A8 + (0x60 * i) | Instance | DMA_SYSTEM |
Description | Channel Source Frame Index (Signed) or 16-bit Packet size | ||
Type | RW |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
CH_SRC_FRM_INDEX_OR_16BIT_PKT_ELNT_NBR |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:0 | CH_SRC_FRM_INDEX_OR_16BIT_PKT_ELNT_NBR | Channel source frame index value if source address is in double index mode. Or if fs=bs=1 and DMA_CCR[SEL_SRC_DST_SYNC] = 1; the bit field [15:0] gives the number of element in packet. The field [31:16] is unused for the packet size. | RW | 0x-------- |
Address Offset | 0x0000 00AC + (0x60 * i) | index: | i = 0 to 31 |
Physical Address | 0x4A05 60AC + (0x60 * i) | Instance | DMA_SYSTEM |
Description | Channel Destination Element Index (Signed) | ||
Type | RW |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | CHANNEL_DST_ELMNT_INDEX |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:16 | RESERVED | Write 0's for future compatibility. Read returns 0. | RW | 0x0000 |
15:0 | CHANNEL_DST_ELMNT_INDEX | Channel destination element index | RW | 0x---- |
Address Offset | 0x0000 00B0 + (0x60 * i) | index: | i = 0 to 31 |
Physical Address | 0x4A05 60B0 + (0x60 * i) | Instance | DMA_SYSTEM |
Description | Channel Destination Frame Index (Signed) or 16-bit Packet size | ||
Type | RW |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
CH_DST_FRM_IDX_OR_16BIT_PKT_ELNT_NBR |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:0 | CH_DST_FRM_IDX_OR_16BIT_PKT_ELNT_NBR | Channel destination frame index value if destination address is in double index mode. Or if fs=bs=1 and DMA_CCR[SEL_SRC_DST_SYNC]=0; the bit field [15:0] gives the number of element in packet. The field [31:16] is unused for the packet size.. | RW | 0x-------- |
Address Offset | 0x0000 00B4 + (0x60 * i) | index: | i = 0 to 31 |
Physical Address | 0x4A05 60B4 + (0x60 * i) | Instance | DMA_SYSTEM |
Description | Channel Source Address Value. User has to access this register only in 32-bit access. If accessed in 8-bit or 16bit data may be corrupted. | ||
Type | R |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
SRC_ELMNT_ADRS |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:0 | SRC_ELMNT_ADRS | Current source address counter value | R | 0x-------- |
Address Offset | 0x0000 00B8 + (0x60 * i) | index: | i = 0 to 31 |
Physical Address | 0x4A05 60B8 + (0x60 * i) | Instance | DMA_SYSTEM |
Description | Channel Destination Address Value. User has to access this register only in 32-bit access. If accessed in 8-bit or 16bit data may be corrupted. | ||
Type | RW |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
DST_ELMNT_ADRS |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:0 | DST_ELMNT_ADRS | Current destination address counter value | RW | 0x-------- |
Address Offset | 0x0000 00BC + (0x60 * i) | index: | i = 0 to 31 |
Physical Address | 0x4A05 60BC + (0x60 * i) | Instance | DMA_SYSTEM |
Description | Channel Current Transferred Element Number in the current frame. User has to access this register only in 32-bit access. If accessed in 8-bit or 16bit data may be corrupted. | ||
Type | RW |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | CURRENT_ELMNT_NBR |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:24 | RESERVED | Write 0's for future compatibility. Read returns 0. | RW | 0x00 |
23:0 | CURRENT_ELMNT_NBR | Channel current transferred element number in the current frame | RW | 0x------ |
Address Offset | 0x0000 00C0 + (0x60 * i) | index: | i = 0 to 31 |
Physical Address | 0x4A05 60C0 + (0x60 * i) | Instance | DMA_SYSTEM |
Description | Channel Current Transferred Frame Number in the current transfer. User has to access this register only in 32-bit access. If accessed in 8-bit or 16bit data may be corrupted. | ||
Type | RW |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | CURRENT_FRAME_NBR |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:16 | RESERVED | Write 0's for future compatibility. Read returns 0. | RW | 0x0000 |
15:0 | CURRENT_FRAME_NBR | Channel current transferred frame number in the current transfer | RW | 0x---- |
Address Offset | 0x0000 00C4 + (0x60 * i) | index: | i = 0 to 31 |
Physical Address | 0x4A05 60C4 + (0x60 * i) | Instance | DMA_SYSTEM |
Description | Channel DMA COLOR KEY /SOLID COLOR | ||
Type | RW |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | CH_BLT_FRGRND_COLOR_OR_SOLID_COLOR_PTRN |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:24 | RESERVED | Write 0's for future compatibility. Read returns 0. | RW | 0x– |
23:0 | CH_BLT_FRGRND_COLOR_OR_SOLID_COLOR_PTRN | Color key or solid color pattern: The pattern is replicated according to the data type. If the data-type is 8-bit the pattern is replicated 4 times to fill the register in order to enhance processing when data is packed at the graphic module input. The same reasoning for 16-bit data-type. | RW | 0x------ |
Address Offset | 0x0000 00D0 + (0x60 * i) | index: | i = 0 to 31 |
Physical Address | 0x4A05 60D0 + (0x60 * i) | Instance | DMA_SYSTEM |
Description | This register controls the various parameters of the link list mechanism | ||
Type | RW |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | FAST | TRANSFER_MODE | PAUSE_LINK_LIST | NEXT_DESCRIPTOR_TYPE | SRC_VALID | DEST_VALID |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:11 | RESERVED | Write 0's for future compatibility, Reads return 0 | RW | 0x00000 |
10 | FAST | Sets the fast-start mode for linked list descriptor types 1, 2 and 3 | RW | 0x0 |
0x0: No fast-start mode | ||||
0x1: Fast-start mode is enabled. | ||||
9:8 | TRANSFER_MODE | Enable linked-list transfer mode | RW | 0x0 |
0x0: Normal transfer mode is used. | ||||
0x1: Linked-list channel mode for type 1, 2, or 3 descriptor is used. | ||||
0x2: Undefined | ||||
0x3: Undefined | ||||
7 | PAUSE_LINK_LIST | Suspend the linked-list transfer at completion of the current block transfer. | RW | 0x0 |
0x0: Linked list is active. | ||||
0x1: Linked list is suspended at the boundary of next descriptor loading. | ||||
6:4 | NEXT_DESCRIPTOR_TYPE | Next Descriptor Type | RW | 0x- |
0x0: Undefined | ||||
0x1: Next descriptor is of type 1. | ||||
0x2: Next descriptor is of type 2. | ||||
0x3: Next descriptor is of type 3. | ||||
0x4: Undefined | ||||
0x5: Undefined | ||||
0x6: Undefined | ||||
0x7: Undefined | ||||
3:2 | SRC_VALID | Source address valid | RW | 0x- |
0x0: The source address is not present in the next descriptor and continuous incrementing is enabled. | ||||
0x1: The source address must be reloaded in the next descriptor transfer. | ||||
0x2: The source start address is not present in the next descriptor. But will reload the one from configuration memory which belongs to the previous descriptor. | ||||
0x3: Undefined addressing mode | ||||
1:0 | DEST_VALID | Destination address valid | RW | 0x- |
0x0: The destination address is not present in the next descriptor and continuous incrementing is enabled. | ||||
0x1: The destination address must be reloaded in the next descriptor transfer. | ||||
0x2: The destination start address is not present in the next descriptor. But will reload the one from configuration memory which belongs to the previous descriptor. | ||||
0x3: Undefined addressing mode |
Address Offset | 0x0000 00D4 + (0x60 * i) | index: | i = 0 to 31 |
Physical Address | 0x4A05 60D4 + (0x60 * i) | Instance | DMA_SYSTEM |
Description | This register contains the Next descriptor Address Pointer for the link list Mechanism | ||
Type | RW |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
NEXT_DESCRIPTOR_POINTER | RESERVED |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:2 | NEXT_DESCRIPTOR_POINTER | This register contains the Next descriptor Address Pointer for the link list Mechanism | RW | 0bxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx |
1:0 | RESERVED | Write 0's for future compatibility, Reads return 0 | RW | 0x0 |
Address Offset | 0x0000 00D8 + (0x60 * i) | index: | i = 0 to 31 |
Physical Address | 0x4A05 60D8 + (0x60 * i) | Instance | DMA_SYSTEM |
Description | |||
Type | RW |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | CURRENT_DESCRIPTOR_NBR |
Bits | Field Name | Description | Type | Reset |
---|---|---|---|---|
31:16 | RESERVED | Write 0's for future compatibility, Reads return 0 | RW | 0x0000 |
15:0 | CURRENT_DESCRIPTOR_NBR | This register when read contains the current active descriptor number in the link list. This register is Read/write to allow user initialization. | RW | 0x---- |