#ifndef _TL2CDR_H_ #define _TL2CDR_H_ #ifndef __ASSEMBLER__ #include #endif #define TL2CDR_BASE 0x10000000U #define TX0_WriteSoftReset 0x00U #define TX0_WriteTxLen 0x04U #define TX0_WriteTxFifo 0x08U #define TX0_ReadTxCrc 0x0CU #define TX1_WriteSoftReset 0x10U #define TX1_WriteTxLen 0x14U #define TX1_WriteTxFifo 0x18U #define TX1_ReadTxCrc 0x1CU #define RX0_WriteSoftReset 0x20U #define RX0_ReadRxLen 0x24U #define RX0_ReadRxFifo 0x28U #define RX0_ReadRxCrc 0x2CU #define RX0_WrtieLimitTimerAim 0x30U #define RX0_WriteLimitTxPair 0x34U #define RX1_WriteSoftReset 0x40U #define RX1_ReadRxLen 0x44U #define RX1_ReadRxFifo 0x48U #define RX1_ReadRxCrc 0x4CU #define RX1_WrtieLimitTimerAim 0x50U #define RX1_WriteLimitTxPair 0x54U #define HLM_ReadStatus 0x58U #define HLM_ReadIsLast 0x5CU #define HLM_TX_FIFO_LEN 16U #define HLM_RX_FIFO_LEN 16U #define HLM_TX0_FIFO_FULL (1U<<0U) #define HLM_TX1_FIFO_FULL (1U<<1U) #define HLM_TX0_BUSY (1U<<2U) #define HLM_TX1_BUSY (1U<<3U) #define HLM_RX0_ERROR (1U<<4U) #define HLM_RX1_ERROR (1U<<5U) #define HLM_RX0_VALID (1U<<6U) #define HLM_RX1_VALID (1U<<7U) #define HLM_RX0_FIFO_LEFT(s) (((s) >> 8) & 0x1f) #define HLM_RX1_FIFO_LEFT(s) (((s) >> (8 + 5)) & 0x1f) #define HLM_TX0_FIFO_LEFT(s) (((s) >> (8 + 10)) & 0x1f) #define HLM_TX1_FIFO_LEFT(s) (((s) >> (8 + 15)) & 0x1f) #ifndef __ASSEMBLER__ extern volatile uint32_t * const tx0_softReset; extern volatile uint32_t * const tx0_txLen; extern volatile uint32_t * const tx0_txFifo; extern volatile uint32_t * const tx0_txCrc; extern volatile uint32_t * const tx1_softReset; extern volatile uint32_t * const tx1_txLen; extern volatile uint32_t * const tx1_txFifo; extern volatile uint32_t * const tx1_txCrc; extern volatile uint32_t * const rx0_softReset; extern volatile uint32_t * const rx0_rxLen; extern volatile uint32_t * const rx0_rxFifo; extern volatile uint32_t * const rx0_rxCrc; extern volatile uint32_t * const rx0_rxTimerAim; extern volatile uint32_t * const rx0_rxTxPair; extern volatile uint32_t * const rx1_softReset; extern volatile uint32_t * const rx1_rxLen; extern volatile uint32_t * const rx1_rxFifo; extern volatile uint32_t * const rx1_rxCrc; extern volatile uint32_t * const rx1_rxTimerAim; extern volatile uint32_t * const rx1_rxTxPair; extern volatile uint32_t * const HLM_status; extern volatile uint32_t * const HLM_isLast; #endif #endif