cpm2.h
来自「Linux Kernel 2.6.9 for OMAP1710」· C头文件 代码 · 共 1,045 行 · 第 1/4 页
H
1,045 行
#define SCC_GSMRH_SYNL16 ((uint)0x0000000c)#define SCC_GSMRH_SYNL8 ((uint)0x00000008)#define SCC_GSMRH_SYNL4 ((uint)0x00000004)#define SCC_GSMRH_RTSM ((uint)0x00000002)#define SCC_GSMRH_RSYN ((uint)0x00000001)#define SCC_GSMRL_SIR ((uint)0x80000000) /* SCC2 only */#define SCC_GSMRL_EDGE_NONE ((uint)0x60000000)#define SCC_GSMRL_EDGE_NEG ((uint)0x40000000)#define SCC_GSMRL_EDGE_POS ((uint)0x20000000)#define SCC_GSMRL_EDGE_BOTH ((uint)0x00000000)#define SCC_GSMRL_TCI ((uint)0x10000000)#define SCC_GSMRL_TSNC_3 ((uint)0x0c000000)#define SCC_GSMRL_TSNC_4 ((uint)0x08000000)#define SCC_GSMRL_TSNC_14 ((uint)0x04000000)#define SCC_GSMRL_TSNC_INF ((uint)0x00000000)#define SCC_GSMRL_RINV ((uint)0x02000000)#define SCC_GSMRL_TINV ((uint)0x01000000)#define SCC_GSMRL_TPL_128 ((uint)0x00c00000)#define SCC_GSMRL_TPL_64 ((uint)0x00a00000)#define SCC_GSMRL_TPL_48 ((uint)0x00800000)#define SCC_GSMRL_TPL_32 ((uint)0x00600000)#define SCC_GSMRL_TPL_16 ((uint)0x00400000)#define SCC_GSMRL_TPL_8 ((uint)0x00200000)#define SCC_GSMRL_TPL_NONE ((uint)0x00000000)#define SCC_GSMRL_TPP_ALL1 ((uint)0x00180000)#define SCC_GSMRL_TPP_01 ((uint)0x00100000)#define SCC_GSMRL_TPP_10 ((uint)0x00080000)#define SCC_GSMRL_TPP_ZEROS ((uint)0x00000000)#define SCC_GSMRL_TEND ((uint)0x00040000)#define SCC_GSMRL_TDCR_32 ((uint)0x00030000)#define SCC_GSMRL_TDCR_16 ((uint)0x00020000)#define SCC_GSMRL_TDCR_8 ((uint)0x00010000)#define SCC_GSMRL_TDCR_1 ((uint)0x00000000)#define SCC_GSMRL_RDCR_32 ((uint)0x0000c000)#define SCC_GSMRL_RDCR_16 ((uint)0x00008000)#define SCC_GSMRL_RDCR_8 ((uint)0x00004000)#define SCC_GSMRL_RDCR_1 ((uint)0x00000000)#define SCC_GSMRL_RENC_DFMAN ((uint)0x00003000)#define SCC_GSMRL_RENC_MANCH ((uint)0x00002000)#define SCC_GSMRL_RENC_FM0 ((uint)0x00001000)#define SCC_GSMRL_RENC_NRZI ((uint)0x00000800)#define SCC_GSMRL_RENC_NRZ ((uint)0x00000000)#define SCC_GSMRL_TENC_DFMAN ((uint)0x00000600)#define SCC_GSMRL_TENC_MANCH ((uint)0x00000400)#define SCC_GSMRL_TENC_FM0 ((uint)0x00000200)#define SCC_GSMRL_TENC_NRZI ((uint)0x00000100)#define SCC_GSMRL_TENC_NRZ ((uint)0x00000000)#define SCC_GSMRL_DIAG_LE ((uint)0x000000c0) /* Loop and echo */#define SCC_GSMRL_DIAG_ECHO ((uint)0x00000080)#define SCC_GSMRL_DIAG_LOOP ((uint)0x00000040)#define SCC_GSMRL_DIAG_NORM ((uint)0x00000000)#define SCC_GSMRL_ENR ((uint)0x00000020)#define SCC_GSMRL_ENT ((uint)0x00000010)#define SCC_GSMRL_MODE_ENET ((uint)0x0000000c)#define SCC_GSMRL_MODE_DDCMP ((uint)0x00000009)#define SCC_GSMRL_MODE_BISYNC ((uint)0x00000008)#define SCC_GSMRL_MODE_V14 ((uint)0x00000007)#define SCC_GSMRL_MODE_AHDLC ((uint)0x00000006)#define SCC_GSMRL_MODE_PROFIBUS ((uint)0x00000005)#define SCC_GSMRL_MODE_UART ((uint)0x00000004)#define SCC_GSMRL_MODE_SS7 ((uint)0x00000003)#define SCC_GSMRL_MODE_ATALK ((uint)0x00000002)#define SCC_GSMRL_MODE_HDLC ((uint)0x00000000)#define SCC_TODR_TOD ((ushort)0x8000)/* SCC Event and Mask register.*/#define SCCM_TXE ((unsigned char)0x10)#define SCCM_BSY ((unsigned char)0x04)#define SCCM_TX ((unsigned char)0x02)#define SCCM_RX ((unsigned char)0x01)typedef struct scc_param { ushort scc_rbase; /* Rx Buffer descriptor base address */ ushort scc_tbase; /* Tx Buffer descriptor base address */ u_char scc_rfcr; /* Rx function code */ u_char scc_tfcr; /* Tx function code */ ushort scc_mrblr; /* Max receive buffer length */ uint scc_rstate; /* Internal */ uint scc_idp; /* Internal */ ushort scc_rbptr; /* Internal */ ushort scc_ibc; /* Internal */ uint scc_rxtmp; /* Internal */ uint scc_tstate; /* Internal */ uint scc_tdp; /* Internal */ ushort scc_tbptr; /* Internal */ ushort scc_tbc; /* Internal */ uint scc_txtmp; /* Internal */ uint scc_rcrc; /* Internal */ uint scc_tcrc; /* Internal */} sccp_t;/* CPM Ethernet through SCC1. */typedef struct scc_enet { sccp_t sen_genscc; uint sen_cpres; /* Preset CRC */ uint sen_cmask; /* Constant mask for CRC */ uint sen_crcec; /* CRC Error counter */ uint sen_alec; /* alignment error counter */ uint sen_disfc; /* discard frame counter */ ushort sen_pads; /* Tx short frame pad character */ ushort sen_retlim; /* Retry limit threshold */ ushort sen_retcnt; /* Retry limit counter */ ushort sen_maxflr; /* maximum frame length register */ ushort sen_minflr; /* minimum frame length register */ ushort sen_maxd1; /* maximum DMA1 length */ ushort sen_maxd2; /* maximum DMA2 length */ ushort sen_maxd; /* Rx max DMA */ ushort sen_dmacnt; /* Rx DMA counter */ ushort sen_maxb; /* Max BD byte count */ ushort sen_gaddr1; /* Group address filter */ ushort sen_gaddr2; ushort sen_gaddr3; ushort sen_gaddr4; uint sen_tbuf0data0; /* Save area 0 - current frame */ uint sen_tbuf0data1; /* Save area 1 - current frame */ uint sen_tbuf0rba; /* Internal */ uint sen_tbuf0crc; /* Internal */ ushort sen_tbuf0bcnt; /* Internal */ ushort sen_paddrh; /* physical address (MSB) */ ushort sen_paddrm; ushort sen_paddrl; /* physical address (LSB) */ ushort sen_pper; /* persistence */ ushort sen_rfbdptr; /* Rx first BD pointer */ ushort sen_tfbdptr; /* Tx first BD pointer */ ushort sen_tlbdptr; /* Tx last BD pointer */ uint sen_tbuf1data0; /* Save area 0 - current frame */ uint sen_tbuf1data1; /* Save area 1 - current frame */ uint sen_tbuf1rba; /* Internal */ uint sen_tbuf1crc; /* Internal */ ushort sen_tbuf1bcnt; /* Internal */ ushort sen_txlen; /* Tx Frame length counter */ ushort sen_iaddr1; /* Individual address filter */ ushort sen_iaddr2; ushort sen_iaddr3; ushort sen_iaddr4; ushort sen_boffcnt; /* Backoff counter */ /* NOTE: Some versions of the manual have the following items * incorrectly documented. Below is the proper order. */ ushort sen_taddrh; /* temp address (MSB) */ ushort sen_taddrm; ushort sen_taddrl; /* temp address (LSB) */} scc_enet_t;/* SCC Event register as used by Ethernet.*/#define SCCE_ENET_GRA ((ushort)0x0080) /* Graceful stop complete */#define SCCE_ENET_TXE ((ushort)0x0010) /* Transmit Error */#define SCCE_ENET_RXF ((ushort)0x0008) /* Full frame received */#define SCCE_ENET_BSY ((ushort)0x0004) /* All incoming buffers full */#define SCCE_ENET_TXB ((ushort)0x0002) /* A buffer was transmitted */#define SCCE_ENET_RXB ((ushort)0x0001) /* A buffer was received *//* SCC Mode Register (PSMR) as used by Ethernet.*/#define SCC_PSMR_HBC ((ushort)0x8000) /* Enable heartbeat */#define SCC_PSMR_FC ((ushort)0x4000) /* Force collision */#define SCC_PSMR_RSH ((ushort)0x2000) /* Receive short frames */#define SCC_PSMR_IAM ((ushort)0x1000) /* Check individual hash */#define SCC_PSMR_ENCRC ((ushort)0x0800) /* Ethernet CRC mode */#define SCC_PSMR_PRO ((ushort)0x0200) /* Promiscuous mode */#define SCC_PSMR_BRO ((ushort)0x0100) /* Catch broadcast pkts */#define SCC_PSMR_SBT ((ushort)0x0080) /* Special backoff timer */#define SCC_PSMR_LPB ((ushort)0x0040) /* Set Loopback mode */#define SCC_PSMR_SIP ((ushort)0x0020) /* Sample Input Pins */#define SCC_PSMR_LCW ((ushort)0x0010) /* Late collision window */#define SCC_PSMR_NIB22 ((ushort)0x000a) /* Start frame search */#define SCC_PSMR_FDE ((ushort)0x0001) /* Full duplex enable *//* Buffer descriptor control/status used by Ethernet receive. * Common to SCC and FCC. */#define BD_ENET_RX_EMPTY ((ushort)0x8000)#define BD_ENET_RX_WRAP ((ushort)0x2000)#define BD_ENET_RX_INTR ((ushort)0x1000)#define BD_ENET_RX_LAST ((ushort)0x0800)#define BD_ENET_RX_FIRST ((ushort)0x0400)#define BD_ENET_RX_MISS ((ushort)0x0100)#define BD_ENET_RX_BC ((ushort)0x0080) /* FCC Only */#define BD_ENET_RX_MC ((ushort)0x0040) /* FCC Only */#define BD_ENET_RX_LG ((ushort)0x0020)#define BD_ENET_RX_NO ((ushort)0x0010)#define BD_ENET_RX_SH ((ushort)0x0008)#define BD_ENET_RX_CR ((ushort)0x0004)#define BD_ENET_RX_OV ((ushort)0x0002)#define BD_ENET_RX_CL ((ushort)0x0001)#define BD_ENET_RX_STATS ((ushort)0x01ff) /* All status bits *//* Buffer descriptor control/status used by Ethernet transmit. * Common to SCC and FCC. */#define BD_ENET_TX_READY ((ushort)0x8000)#define BD_ENET_TX_PAD ((ushort)0x4000)#define BD_ENET_TX_WRAP ((ushort)0x2000)#define BD_ENET_TX_INTR ((ushort)0x1000)#define BD_ENET_TX_LAST ((ushort)0x0800)#define BD_ENET_TX_TC ((ushort)0x0400)#define BD_ENET_TX_DEF ((ushort)0x0200)#define BD_ENET_TX_HB ((ushort)0x0100)#define BD_ENET_TX_LC ((ushort)0x0080)#define BD_ENET_TX_RL ((ushort)0x0040)#define BD_ENET_TX_RCMASK ((ushort)0x003c)#define BD_ENET_TX_UN ((ushort)0x0002)#define BD_ENET_TX_CSL ((ushort)0x0001)#define BD_ENET_TX_STATS ((ushort)0x03ff) /* All status bits *//* SCC as UART*/typedef struct scc_uart { sccp_t scc_genscc; uint scc_res1; /* Reserved */ uint scc_res2; /* Reserved */ ushort scc_maxidl; /* Maximum idle chars */ ushort scc_idlc; /* temp idle counter */ ushort scc_brkcr; /* Break count register */ ushort scc_parec; /* receive parity error counter */ ushort scc_frmec; /* receive framing error counter */ ushort scc_nosec; /* receive noise counter */ ushort scc_brkec; /* receive break condition counter */ ushort scc_brkln; /* last received break length */ ushort scc_uaddr1; /* UART address character 1 */ ushort scc_uaddr2; /* UART address character 2 */ ushort scc_rtemp; /* Temp storage */ ushort scc_toseq; /* Transmit out of sequence char */ ushort scc_char1; /* control character 1 */ ushort scc_char2; /* control character 2 */ ushort scc_char3; /* control character 3 */ ushort scc_char4; /* control character 4 */ ushort scc_char5; /* control character 5 */ ushort scc_char6; /* control character 6 */ ushort scc_char7; /* control character 7 */ ushort scc_char8; /* control character 8 */ ushort scc_rccm; /* receive control character mask */ ushort scc_rccr; /* receive control character register */ ushort scc_rlbc; /* receive last break character */} scc_uart_t;/* SCC Event and Mask registers when it is used as a UART.*/#define UART_SCCM_GLR ((ushort)0x1000)#define UART_SCCM_GLT ((ushort)0x0800)#define UART_SCCM_AB ((ushort)0x0200)#define UART_SCCM_IDL ((ushort)0x0100)#define UART_SCCM_GRA ((ushort)0x0080)#define UART_SCCM_BRKE ((ushort)0x0040)#define UART_SCCM_BRKS ((ushort)0x0020)#define UART_SCCM_CCR ((ushort)0x0008)#define UART_SCCM_BSY ((ushort)0x0004)#define UART_SCCM_TX ((ushort)0x0002)#define UART_SCCM_RX ((ushort)0x0001)/* The SCC PSMR when used as a UART.*/#define SCU_PSMR_FLC ((ushort)0x8000)#define SCU_PSMR_SL ((ushort)0x4000)#define SCU_PSMR_CL ((ushort)0x3000)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?