
Имя модуля: DMA , базовый адрес: 0x03002000 Руководство п. 3.9.5 Регистров: 18 Имя регистра | Смещение 1) DMA_IRQ_EN_REG0 | 0x0000
typedef union dma_irq_en_reg0
{
struct
{
unsigned dma0_hlaf_irq_en : 1;
unsigned dma0_pkg_irq_en : 1;
unsigned dma0_queue_irq_en : 1;
unsigned unused0 : 1;
unsigned dma1_hlaf_irq_en : 1;
unsigned dma1_pkg_irq_en : 1;
unsigned dma1_queue_irq_en : 1;
unsigned unused1 : 1;
unsigned dma2_hlaf_irq_en : 1;
unsigned dma2_pkg_irq_en : 1;
unsigned dma2_queue_irq_en : 1;
unsigned unused2 : 1;
unsigned dma3_hlaf_irq_en : 1;
unsigned dma3_pkg_irq_en : 1;
unsigned dma3_queue_irq_en : 1;
unsigned unused3 : 1;
unsigned dma4_hlaf_irq_en : 1;
unsigned dma4_pkg_irq_en : 1;
unsigned dma4_queue_irq_en : 1;
unsigned unused4 : 1;
unsigned dma5_hlaf_irq_en : 1;
unsigned dma5_pkg_irq_en : 1;
unsigned dma5_queue_irq_en : 1;
unsigned unused5 : 1;
unsigned dma6_hlaf_irq_en : 1;
unsigned dma6_pkg_irq_en : 1;
unsigned dma6_queue_irq_en : 1;
unsigned unused6 : 1;
unsigned dma7_hlaf_irq_en : 1;
unsigned dma7_pkg_irq_en : 1;
unsigned dma7_queue_irq_en : 1;
unsigned unused7 : 1;
} b;
unsigned long w;
} DMA_IRQ_EN_REG0
2) DMA_IRQ_EN_REG1 | 0x0004
typedef union dma_irq_en_reg1
{
struct
{
unsigned dma8_hlaf_irq_en : 1;
unsigned dma8_pkg_irq_en : 1;
unsigned dma8_queue_irq_en : 1;
unsigned unused0 : 1;
unsigned dma9_hlaf_irq_en : 1;
unsigned dma9_pkg_irq_en : 1;
unsigned dma9_queue_irq_en : 1;
unsigned unused1 : 1;
unsigned dma10_hlaf_irq_en : 1;
unsigned dma10_pkg_irq_en : 1;
unsigned dma10_queue_irq_en : 1;
unsigned unused2 : 1;
unsigned dma11_hlaf_irq_en : 1;
unsigned dma11_pkg_irq_en : 1;
unsigned dma11_queue_irq_en : 1;
unsigned unused3 : 1;
unsigned dma12_hlaf_irq_en : 1;
unsigned dma12_pkg_irq_en : 1;
unsigned dma12_queue_irq_en : 1;
unsigned unused4 : 1;
unsigned dma13_hlaf_irq_en : 1;
unsigned dma13_pkg_irq_en : 1;
unsigned dma13_queue_irq_en : 1;
unsigned unused5 : 1;
unsigned dma14_hlaf_irq_en : 1;
unsigned dma14_pkg_irq_en : 1;
unsigned dma14_queue_irq_en : 1;
unsigned unused6 : 1;
unsigned dma15_hlaf_irq_en : 1;
unsigned dma15_pkg_irq_en : 1;
unsigned dma15_queue_irq_en : 1;
unsigned unused7 : 1;
} b;
unsigned long w;
} DMA_IRQ_EN_REG1
3) DMA_IRQ_PEND_REG0 | 0x0010
typedef union dma_irq_pend_reg0
{
struct
{
unsigned dma0_hlaf_irq_pend : 1;
unsigned dma0_pkg_irq_pend : 1;
unsigned dma0_queue_irq_pend : 1;
unsigned unused0 : 1;
unsigned dma1_hlaf_irq_pend : 1;
unsigned dma1_pkg_irq_pend : 1;
unsigned dma1_queue_irq_pend : 1;
unsigned unused1 : 1;
unsigned dma2_hlaf_irq_pend : 1;
unsigned dma2_pkg_irq_pend : 1;
unsigned dma2_queue_irq_pend : 1;
unsigned unused2 : 1;
unsigned dma3_hlaf_irq_pend : 1;
unsigned dma3_pkg_irq_pend : 1;
unsigned dma3_queue_irq_pend : 1;
unsigned unused3 : 1;
unsigned dma4_hlaf_irq_pend : 1;
unsigned dma4_pkg_irq_pend : 1;
unsigned dma4_queue_irq_pend : 1;
unsigned unused4 : 1;
unsigned dma5_hlaf_irq_pend : 1;
unsigned dma5_pkg_irq_pend : 1;
unsigned dma5_queue_irq_pend : 1;
unsigned unused5 : 1;
unsigned dma6_hlaf_irq_pend : 1;
unsigned dma6_pkg_irq_pend : 1;
unsigned dma6_queue_irq_pend : 1;
unsigned unused6 : 1;
unsigned dma7_hlaf_irq_pend : 1;
unsigned dma7_pkg_irq_pend : 1;
unsigned dma7_queue_irq_pend : 1;
unsigned unused7 : 1;
} b;
unsigned long w;
} DMA_IRQ_PEND_REG0
4) DMA_IRQ_PEND_REG1 | 0x0014
typedef union dma_irq_pend_reg1
{
struct
{
unsigned dma8_hlaf_irq_pend : 1;
unsigned dma8_pkg_irq_pend : 1;
unsigned dma8_queue_irq_pend : 1;
unsigned unused0 : 1;
unsigned dma9_hlaf_irq_pend : 1;
unsigned dma9_pkg_irq_pend : 1;
unsigned dma9_queue_irq_pend : 1;
unsigned unused1 : 1;
unsigned dma10_hlaf_irq_pend : 1;
unsigned dma10_pkg_irq_pend : 1;
unsigned dma10_queue_irq_pend : 1;
unsigned unused2 : 1;
unsigned dma11_hlaf_irq_pend : 1;
unsigned dma11_pkg_irq_pend : 1;
unsigned dma11_queue_irq_pend : 1;
unsigned unused3 : 1;
unsigned dma12_hlaf_irq_pend : 1;
unsigned dma12_pkg_irq_pend : 1;
unsigned dma12_queue_irq_pend : 1;
unsigned unused4 : 1;
unsigned dma13_hlaf_irq_pend : 1;
unsigned dma13_pkg_irq_pend : 1;
unsigned dma13_queue_irq_pend : 1;
unsigned unused5 : 1;
unsigned dma14_hlaf_irq_pend : 1;
unsigned dma14_pkg_irq_pend : 1;
unsigned dma14_queue_irq_pend : 1;
unsigned unused6 : 1;
unsigned dma15_hlaf_irq_pend : 1;
unsigned dma15_pkg_irq_pend : 1;
unsigned dma15_queue_irq_pend : 1;
unsigned unused7 : 1;
} b;
unsigned long w;
} DMA_IRQ_PEND_REG1
5) DMA_SEC_REG | 0x0020
typedef union dma_sec_reg
{
struct
{
unsigned dma0_sec : 1;
unsigned dma1_sec : 1;
unsigned dma2_sec : 1;
unsigned dma3_sec : 1;
unsigned dma4_sec : 1;
unsigned dma5_sec : 1;
unsigned dma6_sec : 1;
unsigned dma7_sec : 1;
unsigned dma8_sec : 1;
unsigned dma9_sec : 1;
unsigned dma10_sec : 1;
unsigned dma11_sec : 1;
unsigned dma12_sec : 1;
unsigned dma13_sec : 1;
unsigned dma14_sec : 1;
unsigned dma15_sec : 1;
unsigned unused0 : 16;
} b;
unsigned long w;
} DMA_SEC_REG
6) DMA_AUTO_GATE_REG | 0x0028
typedef union dma_auto_gate_reg
{
struct
{
unsigned dma_chan_circuit : 1;
unsigned dma_common_circuit : 1;
unsigned dma_mclk_circuit : 1;
unsigned unused0 : 29;
} b;
unsigned long w;
} DMA_AUTO_GATE_REG
7) DMA_STA_REG | 0x0030
typedef union dma_sta_reg
{
struct
{
unsigned dma0_status : 1;
unsigned dma1_status : 1;
unsigned dma2_status : 1;
unsigned dma3_status : 1;
unsigned dma4_status : 1;
unsigned dma5_status : 1;
unsigned dma6_status : 1;
unsigned dma7_status : 1;
unsigned dma8_status : 1;
unsigned dma9_status : 1;
unsigned dma10_status : 1;
unsigned dma11_status : 1;
unsigned dma12_status : 1;
unsigned dma13_status : 1;
unsigned dma14_status : 1;
unsigned dma15_status : 1;
unsigned unused0 : 14;
unsigned mbus_fifo_status : 1;
unsigned unused1 : 1;
} b;
unsigned long w;
} DMA_STA_REG
8) DMA_EN_REG | 0x0100+N*0x0040
typedef union dma_en_reg
{
struct
{
unsigned dma_en : 1;
unsigned unused0 : 31;
} b;
unsigned long w;
} DMA_EN_REG
9) DMA_PAU_REG | 0x0100+N*0x0040+0x0004
typedef union dma_pau_reg
{
struct
{
unsigned dma_pause : 1;
unsigned unused0 : 31;
} b;
unsigned long w;
} DMA_PAU_REG
10) DMA_DESC_ADDR_REG | 0x0100+N*0x0040+0x0008
typedef union dma_desc_addr_reg
{
struct
{
unsigned dma_desc_high_addr : 2;
unsigned dma_desc_low_addr : 30;
} b;
unsigned long w;
} DMA_DESC_ADDR_REG
11) DMA_CFG_REG | 0x0100+N*0x0040+0x000C
typedef union dma_cfg_reg
{
struct
{
unsigned dma_src_drq_type : 6;
unsigned dma_src_block_size : 2;
unsigned dma_src_addr_mode : 1;
unsigned dma_src_data_width : 2;
unsigned unused0 : 5;
unsigned dma_dest_drq_type : 6;
unsigned dma_dest_block_size : 2;
unsigned dma_addr_mode : 1;
unsigned dma_dest_data_width : 2;
unsigned unused1 : 5;
} b;
unsigned long w;
} DMA_CFG_REG
12) DMA_CUR_SRC_REG | 0x0100+N*0x0040+0x0010
typedef union dma_cur_src_reg
{
struct
{
unsigned dma_cur_src : 32;
} b;
unsigned long w;
} DMA_CUR_SRC_REG
13) DMA_CUR_DEST_REG | 0x0100+N*0x0040+0x0014
typedef union dma_cur_dest_reg
{
struct
{
unsigned dma_cur_dest : 32;
} b;
unsigned long w;
} DMA_CUR_DEST_REG
14) DMA_BCNT_LEFT_REG | 0x0100+N*0x0040+0x0018
typedef union dma_bcnt_left_reg
{
struct
{
unsigned dma_bcnt_left : 25;
unsigned unused0 : 7;
} b;
unsigned long w;
} DMA_BCNT_LEFT_REG
15) DMA_PARA_REG | 0x0100+N*0x0040+0x001C
typedef union dma_para_reg
{
struct
{
unsigned wait_cyc : 8;
unsigned unused0 : 24;
} b;
unsigned long w;
} DMA_PARA_REG
16) DMA_MODE_REG | 0x0100+N*0x0040+0x0028
typedef union dma_mode_reg
{
struct
{
unsigned unused0 : 2;
unsigned dma_src_mode : 1;
unsigned dma_dst_mode : 1;
unsigned unused1 : 28;
} b;
unsigned long w;
} DMA_MODE_REG
17) DMA_FDESC_ADDR_REG | 0x0100+N*0x0040+0x002C
typedef union dma_fdesc_addr_reg
{
struct
{
unsigned dma_fdesc_addr : 32;
} b;
unsigned long w;
} DMA_FDESC_ADDR_REG
18) DMA_PKG_NUM_REG | 0x0100+N*0x0040+0x0030
typedef union dma_pkg_num_reg
{
struct
{
unsigned dma_pkg_num : 32;
} b;
unsigned long w;
} DMA_PKG_NUM_REG
|
![]() |