342 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
		
		
			
		
	
	
			342 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_CONF0_ADDR 0x0
							 | 
						||
| 
								 | 
							
								#define REG_DEV_RX_BRK_EOF_EN_OFFSET 18
							 | 
						||
| 
								 | 
							
								#define REG_DEV_RX_BRK_EOF_EN_MASK 0x00040000
							 | 
						||
| 
								 | 
							
								#define REG_CLK_EN_OFFSET 17
							 | 
						||
| 
								 | 
							
								#define REG_CLK_EN_MASK 0x00020000
							 | 
						||
| 
								 | 
							
								#define REG_MEM_TRANS_EN_OFFSET 15
							 | 
						||
| 
								 | 
							
								#define REG_MEM_TRANS_EN_MASK 0x00008000
							 | 
						||
| 
								 | 
							
								#define REG_OUT_DATA_BURST_EN_OFFSET 14
							 | 
						||
| 
								 | 
							
								#define REG_OUT_DATA_BURST_EN_MASK 0x00004000
							 | 
						||
| 
								 | 
							
								#define REG_INDSCR_BURST_EN_OFFSET 13
							 | 
						||
| 
								 | 
							
								#define REG_INDSCR_BURST_EN_MASK 0x00002000
							 | 
						||
| 
								 | 
							
								#define REG_OUTDSCR_BURST_EN_OFFSET 12
							 | 
						||
| 
								 | 
							
								#define REG_OUTDSCR_BURST_EN_MASK 0x00001000
							 | 
						||
| 
								 | 
							
								#define REG_DEV2_CE_OFFSET 11
							 | 
						||
| 
								 | 
							
								#define REG_DEV2_CE_MASK 0x00000800
							 | 
						||
| 
								 | 
							
								#define REG_DEV1_CE_OFFSET 10
							 | 
						||
| 
								 | 
							
								#define REG_DEV1_CE_MASK 0x00000400
							 | 
						||
| 
								 | 
							
								#define REG_DEV0_CE_OFFSET 9
							 | 
						||
| 
								 | 
							
								#define REG_DEV0_CE_MASK 0x00000200
							 | 
						||
| 
								 | 
							
								#define REG_OUT_EOF_MODE_OFFSET 8
							 | 
						||
| 
								 | 
							
								#define REG_OUT_EOF_MODE_MASK 0x00000100
							 | 
						||
| 
								 | 
							
								#define REG_LOOP_BACK_MODE_OFFSET 7
							 | 
						||
| 
								 | 
							
								#define REG_LOOP_BACK_MODE_MASK 0x00000080
							 | 
						||
| 
								 | 
							
								#define REG_OUT_AUTO_WRBACK_OFFSET 6
							 | 
						||
| 
								 | 
							
								#define REG_OUT_AUTO_WRBACK_MASK 0x00000040
							 | 
						||
| 
								 | 
							
								#define REG_OUT_LOOP_TEST_OFFSET 5
							 | 
						||
| 
								 | 
							
								#define REG_OUT_LOOP_TEST_MASK 0x00000020
							 | 
						||
| 
								 | 
							
								#define REG_IN_LOOP_TEST_OFFSET 4
							 | 
						||
| 
								 | 
							
								#define REG_IN_LOOP_TEST_MASK 0x00000010
							 | 
						||
| 
								 | 
							
								#define REG_AHBM_RST_OFFSET 3
							 | 
						||
| 
								 | 
							
								#define REG_AHBM_RST_MASK 0x00000008
							 | 
						||
| 
								 | 
							
								#define REG_AHBM_FIFO_RST_OFFSET 2
							 | 
						||
| 
								 | 
							
								#define REG_AHBM_FIFO_RST_MASK 0x00000004
							 | 
						||
| 
								 | 
							
								#define REG_OUT_RST_OFFSET 1
							 | 
						||
| 
								 | 
							
								#define REG_OUT_RST_MASK 0x00000002
							 | 
						||
| 
								 | 
							
								#define REG_IN_RST_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define REG_IN_RST_MASK 0x00000001
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_INT_RAW_ADDR 0x4
							 | 
						||
| 
								 | 
							
								#define DMA_INFIFO_FULL_WM_INT_RAW_OFFSET 9
							 | 
						||
| 
								 | 
							
								#define DMA_INFIFO_FULL_WM_INT_RAW_MASK 0x00000200
							 | 
						||
| 
								 | 
							
								#define DMA_OUT_TOTAL_EOF_INT_RAW_OFFSET 8
							 | 
						||
| 
								 | 
							
								#define DMA_OUT_TOTAL_EOF_INT_RAW_MASK 0x00000100
							 | 
						||
| 
								 | 
							
								#define DMA_IN_DSCR_EMPTY_INT_RAW_OFFSET 7
							 | 
						||
| 
								 | 
							
								#define DMA_IN_DSCR_EMPTY_INT_RAW_MASK 0x00000080
							 | 
						||
| 
								 | 
							
								#define DMA_OUT_DSCR_ERR_INT_RAW_OFFSET 6
							 | 
						||
| 
								 | 
							
								#define DMA_OUT_DSCR_ERR_INT_RAW_MASK 0x00000040
							 | 
						||
| 
								 | 
							
								#define DMA_IN_DSCR_ERR_INT_RAW_OFFSET 5
							 | 
						||
| 
								 | 
							
								#define DMA_IN_DSCR_ERR_INT_RAW_MASK 0x00000020
							 | 
						||
| 
								 | 
							
								#define DMA_OUT_EOF_INT_RAW_OFFSET 4
							 | 
						||
| 
								 | 
							
								#define DMA_OUT_EOF_INT_RAW_MASK 0x00000010
							 | 
						||
| 
								 | 
							
								#define DMA_OUT_DONE_INT_RAW_OFFSET 3
							 | 
						||
| 
								 | 
							
								#define DMA_OUT_DONE_INT_RAW_MASK 0x00000008
							 | 
						||
| 
								 | 
							
								#define DMA_IN_ERR_EOF_INT_RAW_OFFSET 2
							 | 
						||
| 
								 | 
							
								#define DMA_IN_ERR_EOF_INT_RAW_MASK 0x00000004
							 | 
						||
| 
								 | 
							
								#define DMA_IN_SUC_EOF_INT_RAW_OFFSET 1
							 | 
						||
| 
								 | 
							
								#define DMA_IN_SUC_EOF_INT_RAW_MASK 0x00000002
							 | 
						||
| 
								 | 
							
								#define DMA_IN_DONE_INT_RAW_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define DMA_IN_DONE_INT_RAW_MASK 0x00000001
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_INT_ST_ADDR 0x8
							 | 
						||
| 
								 | 
							
								#define DMA_INFIFO_FULL_WM_INT_ST_OFFSET 9
							 | 
						||
| 
								 | 
							
								#define DMA_INFIFO_FULL_WM_INT_ST_MASK 0x00000200
							 | 
						||
| 
								 | 
							
								#define DMA_OUT_TOTAL_EOF_INT_ST_OFFSET 8
							 | 
						||
| 
								 | 
							
								#define DMA_OUT_TOTAL_EOF_INT_ST_MASK 0x00000100
							 | 
						||
| 
								 | 
							
								#define DMA_IN_DSCR_EMPTY_INT_ST_OFFSET 7
							 | 
						||
| 
								 | 
							
								#define DMA_IN_DSCR_EMPTY_INT_ST_MASK 0x00000080
							 | 
						||
| 
								 | 
							
								#define DMA_OUT_DSCR_ERR_INT_ST_OFFSET 6
							 | 
						||
| 
								 | 
							
								#define DMA_OUT_DSCR_ERR_INT_ST_MASK 0x00000040
							 | 
						||
| 
								 | 
							
								#define DMA_IN_DSCR_ERR_INT_ST_OFFSET 5
							 | 
						||
| 
								 | 
							
								#define DMA_IN_DSCR_ERR_INT_ST_MASK 0x00000020
							 | 
						||
| 
								 | 
							
								#define DMA_OUT_EOF_INT_ST_OFFSET 4
							 | 
						||
| 
								 | 
							
								#define DMA_OUT_EOF_INT_ST_MASK 0x00000010
							 | 
						||
| 
								 | 
							
								#define DMA_OUT_DONE_INT_ST_OFFSET 3
							 | 
						||
| 
								 | 
							
								#define DMA_OUT_DONE_INT_ST_MASK 0x00000008
							 | 
						||
| 
								 | 
							
								#define DMA_IN_ERR_EOF_INT_ST_OFFSET 2
							 | 
						||
| 
								 | 
							
								#define DMA_IN_ERR_EOF_INT_ST_MASK 0x00000004
							 | 
						||
| 
								 | 
							
								#define DMA_IN_SUC_EOF_INT_ST_OFFSET 1
							 | 
						||
| 
								 | 
							
								#define DMA_IN_SUC_EOF_INT_ST_MASK 0x00000002
							 | 
						||
| 
								 | 
							
								#define DMA_IN_DONE_INT_ST_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define DMA_IN_DONE_INT_ST_MASK 0x00000001
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_INT_ENA_ADDR 0xC
							 | 
						||
| 
								 | 
							
								#define DMA_INFIFO_FULL_WM_INT_ENA_OFFSET 9
							 | 
						||
| 
								 | 
							
								#define DMA_INFIFO_FULL_WM_INT_ENA_MASK 0x00000200
							 | 
						||
| 
								 | 
							
								#define DMA_OUT_TOTAL_EOF_INT_ENA_OFFSET 8
							 | 
						||
| 
								 | 
							
								#define DMA_OUT_TOTAL_EOF_INT_ENA_MASK 0x00000100
							 | 
						||
| 
								 | 
							
								#define DMA_IN_DSCR_EMPTY_INT_ENA_OFFSET 7
							 | 
						||
| 
								 | 
							
								#define DMA_IN_DSCR_EMPTY_INT_ENA_MASK 0x00000080
							 | 
						||
| 
								 | 
							
								#define DMA_OUT_DSCR_ERR_INT_ENA_OFFSET 6
							 | 
						||
| 
								 | 
							
								#define DMA_OUT_DSCR_ERR_INT_ENA_MASK 0x00000040
							 | 
						||
| 
								 | 
							
								#define DMA_IN_DSCR_ERR_INT_ENA_OFFSET 5
							 | 
						||
| 
								 | 
							
								#define DMA_IN_DSCR_ERR_INT_ENA_MASK 0x00000020
							 | 
						||
| 
								 | 
							
								#define DMA_OUT_EOF_INT_ENA_OFFSET 4
							 | 
						||
| 
								 | 
							
								#define DMA_OUT_EOF_INT_ENA_MASK 0x00000010
							 | 
						||
| 
								 | 
							
								#define DMA_OUT_DONE_INT_ENA_OFFSET 3
							 | 
						||
| 
								 | 
							
								#define DMA_OUT_DONE_INT_ENA_MASK 0x00000008
							 | 
						||
| 
								 | 
							
								#define DMA_IN_ERR_EOF_INT_ENA_OFFSET 2
							 | 
						||
| 
								 | 
							
								#define DMA_IN_ERR_EOF_INT_ENA_MASK 0x00000004
							 | 
						||
| 
								 | 
							
								#define DMA_IN_SUC_EOF_INT_ENA_OFFSET 1
							 | 
						||
| 
								 | 
							
								#define DMA_IN_SUC_EOF_INT_ENA_MASK 0x00000002
							 | 
						||
| 
								 | 
							
								#define DMA_IN_DONE_INT_ENA_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define DMA_IN_DONE_INT_ENA_MASK 0x00000001
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_INT_CLR_ADDR 0x10
							 | 
						||
| 
								 | 
							
								#define REG_DMA_INFIFO_FULL_WM_INT_CLR_OFFSET 9
							 | 
						||
| 
								 | 
							
								#define REG_DMA_INFIFO_FULL_WM_INT_CLR_MASK 0x00000200
							 | 
						||
| 
								 | 
							
								#define REG_OUT_TOTAL_EOF_INT_CLR_OFFSET 8
							 | 
						||
| 
								 | 
							
								#define REG_OUT_TOTAL_EOF_INT_CLR_MASK 0x00000100
							 | 
						||
| 
								 | 
							
								#define REG_IN_DSCR_EMPTY_INT_CLR_OFFSET 7
							 | 
						||
| 
								 | 
							
								#define REG_IN_DSCR_EMPTY_INT_CLR_MASK 0x00000080
							 | 
						||
| 
								 | 
							
								#define REG_OUT_DSCR_ERR_INT_CLR_OFFSET 6
							 | 
						||
| 
								 | 
							
								#define REG_OUT_DSCR_ERR_INT_CLR_MASK 0x00000040
							 | 
						||
| 
								 | 
							
								#define REG_IN_DSCR_ERR_INT_CLR_OFFSET 5
							 | 
						||
| 
								 | 
							
								#define REG_IN_DSCR_ERR_INT_CLR_MASK 0x00000020
							 | 
						||
| 
								 | 
							
								#define REG_OUT_EOF_INT_CLR_OFFSET 4
							 | 
						||
| 
								 | 
							
								#define REG_OUT_EOF_INT_CLR_MASK 0x00000010
							 | 
						||
| 
								 | 
							
								#define REG_OUT_DONE_INT_CLR_OFFSET 3
							 | 
						||
| 
								 | 
							
								#define REG_OUT_DONE_INT_CLR_MASK 0x00000008
							 | 
						||
| 
								 | 
							
								#define REG_IN_ERR_EOF_INT_CLR_OFFSET 2
							 | 
						||
| 
								 | 
							
								#define REG_IN_ERR_EOF_INT_CLR_MASK 0x00000004
							 | 
						||
| 
								 | 
							
								#define REG_IN_SUC_EOF_INT_CLR_OFFSET 1
							 | 
						||
| 
								 | 
							
								#define REG_IN_SUC_EOF_INT_CLR_MASK 0x00000002
							 | 
						||
| 
								 | 
							
								#define REG_IN_DONE_INT_CLR_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define REG_IN_DONE_INT_CLR_MASK 0x00000001
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_OUT_STATUS_ADDR 0x14
							 | 
						||
| 
								 | 
							
								#define OUT_EMPTY_OFFSET 1
							 | 
						||
| 
								 | 
							
								#define OUT_EMPTY_MASK 0x00000002
							 | 
						||
| 
								 | 
							
								#define OUT_FULL_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define OUT_FULL_MASK 0x00000001
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_OUT_PUSH_ADDR 0x18
							 | 
						||
| 
								 | 
							
								#define REG_OUTFIFO_PUSH_OFFSET 16
							 | 
						||
| 
								 | 
							
								#define REG_OUTFIFO_PUSH_MASK 0x00010000
							 | 
						||
| 
								 | 
							
								#define REG_OUTFIFO_WDATA_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define REG_OUTFIFO_WDATA_MASK 0x000001FF
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_IN_STATUS_ADDR 0x1C
							 | 
						||
| 
								 | 
							
								#define DMA_RX_ERR_CAUSE_OFFSET 4
							 | 
						||
| 
								 | 
							
								#define DMA_RX_ERR_CAUSE_MASK 0x00000070
							 | 
						||
| 
								 | 
							
								#define IN_EMPTY_OFFSET 1
							 | 
						||
| 
								 | 
							
								#define IN_EMPTY_MASK 0x00000002
							 | 
						||
| 
								 | 
							
								#define IN_FULL_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define IN_FULL_MASK 0x00000001
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_IN_POP_ADDR 0x20
							 | 
						||
| 
								 | 
							
								#define REG_INFIFO_POP_OFFSET 16
							 | 
						||
| 
								 | 
							
								#define REG_INFIFO_POP_MASK 0x00010000
							 | 
						||
| 
								 | 
							
								#define REG_INFIFO_RDATA_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define REG_INFIFO_RDATA_MASK 0x00000FFF
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_OUT_LINK_ADDR 0x24
							 | 
						||
| 
								 | 
							
								#define REG_OUTLINK_RESTART_OFFSET 30
							 | 
						||
| 
								 | 
							
								#define REG_OUTLINK_RESTART_MASK 0x40000000
							 | 
						||
| 
								 | 
							
								#define REG_OUTLINK_START_OFFSET 29
							 | 
						||
| 
								 | 
							
								#define REG_OUTLINK_START_MASK 0x20000000
							 | 
						||
| 
								 | 
							
								#define REG_OUTLINK_STOP_OFFSET 28
							 | 
						||
| 
								 | 
							
								#define REG_OUTLINK_STOP_MASK 0x10000000
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_IN_LINK_ADDR 0x28
							 | 
						||
| 
								 | 
							
								#define REG_INLINK_AUTO_RET_OFFSET 31
							 | 
						||
| 
								 | 
							
								#define REG_INLINK_AUTO_RET_MASK 0x80000000
							 | 
						||
| 
								 | 
							
								#define REG_INLINK_RESTART_OFFSET 30
							 | 
						||
| 
								 | 
							
								#define REG_INLINK_RESTART_MASK 0x40000000
							 | 
						||
| 
								 | 
							
								#define REG_INLINK_START_OFFSET 29
							 | 
						||
| 
								 | 
							
								#define REG_INLINK_START_MASK 0x20000000
							 | 
						||
| 
								 | 
							
								#define REG_INLINK_STOP_OFFSET 28
							 | 
						||
| 
								 | 
							
								#define REG_INLINK_STOP_MASK 0x10000000
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_CONF1_ADDR 0x2C
							 | 
						||
| 
								 | 
							
								#define REG_DMA_INFIFO_FULL_THRS_OFFSET 8
							 | 
						||
| 
								 | 
							
								#define REG_DMA_INFIFO_FULL_THRS_MASK 0x000FFF00
							 | 
						||
| 
								 | 
							
								#define REG_CHECK_OWNER_OFFSET 1
							 | 
						||
| 
								 | 
							
								#define REG_CHECK_OWNER_MASK 0x00000002
							 | 
						||
| 
								 | 
							
								#define REG_CRC_DISABLE_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define REG_CRC_DISABLE_MASK 0x00000001
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_STATE0_ADDR 0x30
							 | 
						||
| 
								 | 
							
								#define DMA_STATE0_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define DMA_STATE0_MASK 0xFFFFFFFF
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_STATE1_ADDR 0x34
							 | 
						||
| 
								 | 
							
								#define DMA_STATE1_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define DMA_STATE1_MASK 0xFFFFFFFF
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_OUT_EOF_DES_ADDR_ADDR 0x38
							 | 
						||
| 
								 | 
							
								#define OUT_EOF_DES_ADDR_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define OUT_EOF_DES_ADDR_MASK 0xFFFFFFFF
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_IN_SUC_EOF_DES_ADDR_ADDR 0x3C
							 | 
						||
| 
								 | 
							
								#define IN_SUC_EOF_DES_ADDR_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define IN_SUC_EOF_DES_ADDR_MASK 0xFFFFFFFF
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_IN_ERR_EOF_DES_ADDR_ADDR 0x40
							 | 
						||
| 
								 | 
							
								#define IN_ERR_EOF_DES_ADDR_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define IN_ERR_EOF_DES_ADDR_MASK 0xFFFFFFFF
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_OUT_EOF_BFR_DES_ADDR_ADDR 0x44
							 | 
						||
| 
								 | 
							
								#define OUT_EOF_BFR_DES_ADDR_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define OUT_EOF_BFR_DES_ADDR_MASK 0xFFFFFFFF
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_AHB_TEST_ADDR 0x48
							 | 
						||
| 
								 | 
							
								#define REG_AHB_TESTADDR_OFFSET 4
							 | 
						||
| 
								 | 
							
								#define REG_AHB_TESTADDR_MASK 0x00000030
							 | 
						||
| 
								 | 
							
								#define REG_AHB_TESTMODE_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define REG_AHB_TESTMODE_MASK 0x00000007
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_IN_DSCR_ADDR 0x4C
							 | 
						||
| 
								 | 
							
								#define INLINK_DSCR_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define INLINK_DSCR_MASK 0xFFFFFFFF
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_IN_DSCR_BF0_ADDR 0x50
							 | 
						||
| 
								 | 
							
								#define INLINK_DSCR_BF0_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define INLINK_DSCR_BF0_MASK 0xFFFFFFFF
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_IN_DSCR_BF1_ADDR 0x54
							 | 
						||
| 
								 | 
							
								#define INLINK_DSCR_BF1_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define INLINK_DSCR_BF1_MASK 0xFFFFFFFF
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_OUT_DSCR_ADDR 0x58
							 | 
						||
| 
								 | 
							
								#define OUTLINK_DSCR_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define OUTLINK_DSCR_MASK 0xFFFFFFFF
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_OUT_DSCR_BF0_ADDR 0x5C
							 | 
						||
| 
								 | 
							
								#define OUTLINK_DSCR_BF0_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define OUTLINK_DSCR_BF0_MASK 0xFFFFFFFF
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_OUT_DSCR_BF1_ADDR 0x60
							 | 
						||
| 
								 | 
							
								#define OUTLINK_DSCR_BF1_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define OUTLINK_DSCR_BF1_MASK 0xFFFFFFFF
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_CRC_CFG0_ADDR 0x64
							 | 
						||
| 
								 | 
							
								#define CRC_OUT_DONE_OFFSET 9
							 | 
						||
| 
								 | 
							
								#define CRC_OUT_DONE_MASK 0x00000200
							 | 
						||
| 
								 | 
							
								#define CRC_ENA_OFFSET 8
							 | 
						||
| 
								 | 
							
								#define CRC_ENA_MASK 0x00000100
							 | 
						||
| 
								 | 
							
								#define CRC_MODE_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define CRC_MODE_MASK 0x000000FF
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_CRC_CFG1_ADDR 0x68
							 | 
						||
| 
								 | 
							
								#define CRC_OUT_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define CRC_OUT_MASK 0xFFFFFFFF
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_CRC_OUT_ADDR 0x6C
							 | 
						||
| 
								 | 
							
								#define CRC_POLYNOMIAL_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define CRC_POLYNOMIAL_MASK 0xFFFFFFFF
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_LINK_ST_ADDR 0x70
							 | 
						||
| 
								 | 
							
								#define DMA_OUTLINK_PARK_OFFSET 1
							 | 
						||
| 
								 | 
							
								#define DMA_OUTLINK_PARK_MASK 0x00000002
							 | 
						||
| 
								 | 
							
								#define DMA_INLINK_PARK_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define DMA_INLINK_PARK_MASK 0x00000001
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_CRC_INI_ADDR 0x74
							 | 
						||
| 
								 | 
							
								#define CRC_INIT_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define CRC_INIT_MASK 0x00000001
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_CKSUM_INI_ADDR 0x78
							 | 
						||
| 
								 | 
							
								#define CKSUM_INIT_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define CKSUM_INIT_MASK 0x00000001
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_CKSUM_CFG_ADDR 0x7C
							 | 
						||
| 
								 | 
							
								#define CKSUM_OUT_OFFSET 16
							 | 
						||
| 
								 | 
							
								#define CKSUM_OUT_MASK 0xFFFF0000
							 | 
						||
| 
								 | 
							
								#define CKSUM_ENA_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define CKSUM_ENA_MASK 0x00000001
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_OUT_LINK_ADDR_ADDR 0x80
							 | 
						||
| 
								 | 
							
								#define REG_OUTLINK_ADDR_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define REG_OUTLINK_ADDR_MASK 0xFFFFFFFF
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_IN_LINK_ADDR_ADDR 0x84
							 | 
						||
| 
								 | 
							
								#define REG_INLINK_ADDR_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define REG_INLINK_ADDR_MASK 0xFFFFFFFF
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_FP_CFG0_ADDR 0x88
							 | 
						||
| 
								 | 
							
								#define DMA_FP_ENA_OFFSET 17
							 | 
						||
| 
								 | 
							
								#define DMA_FP_ENA_MASK 0x00020000
							 | 
						||
| 
								 | 
							
								#define DMA_FP_INIT_OFFSET 16
							 | 
						||
| 
								 | 
							
								#define DMA_FP_INIT_MASK 0x00010000
							 | 
						||
| 
								 | 
							
								#define DMA_FP_OP_TYPE_OFFSET 12
							 | 
						||
| 
								 | 
							
								#define DMA_FP_OP_TYPE_MASK 0x0000F000
							 | 
						||
| 
								 | 
							
								#define DMA_FP_SHIFT_OFFSET 4
							 | 
						||
| 
								 | 
							
								#define DMA_FP_SHIFT_MASK 0x000003F0
							 | 
						||
| 
								 | 
							
								#define DMA_FP_BIG_ENDIAN_OFFSET 3
							 | 
						||
| 
								 | 
							
								#define DMA_FP_BIG_ENDIAN_MASK 0x00000008
							 | 
						||
| 
								 | 
							
								#define DMA_FP_RND_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define DMA_FP_RND_MASK 0x00000007
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_FP_MAX_MIN_ADDR 0x8C
							 | 
						||
| 
								 | 
							
								#define DMA_FP_MAX_MIN_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define DMA_FP_MAX_MIN_MASK 0xFFFFFFFF
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//-----------------------------------
							 | 
						||
| 
								 | 
							
								#define CFG_PDMA_FP_SUM_ADDR 0x90
							 | 
						||
| 
								 | 
							
								#define DMA_FP_SUM_OFFSET 0
							 | 
						||
| 
								 | 
							
								#define DMA_FP_SUM_MASK 0xFFFFFFFF
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								//HW module read/write macro
							 | 
						||
| 
								 | 
							
								#define DMA0_READ_REG(addr) SOC_READ_REG(SW_DMA_REG0_BASEADDR + addr)
							 | 
						||
| 
								 | 
							
								#define DMA0_WRITE_REG(addr,value) SOC_WRITE_REG(SW_DMA_REG0_BASEADDR + addr,value)
							 | 
						||
| 
								 | 
							
								#define DMA1_READ_REG(addr) SOC_READ_REG(SW_DMA_REG1_BASEADDR + addr)
							 | 
						||
| 
								 | 
							
								#define DMA1_WRITE_REG(addr,value) SOC_WRITE_REG(SW_DMA_REG1_BASEADDR + addr,value)
							 |