cchal.h
来自「WinCE 3.0 BSP, 包含Inter SA1110, Intel_815」· C头文件 代码 · 共 587 行 · 第 1/2 页
H
587 行
#define TMI_ON 0x01 /* #S1_FIR TMI bit in IIRC3R On */
#define TMI_OFF 0xFE /* #S1_FIR TMI bit in IIRC3R Off */
#define RTS_ON 0x80 /* #S1_FIR RTS bit in IIRC3R Off */
#define ERDVI_ON 0x01 /* #S1_FIR ERDVI bit in IRIER On */
#define ERDVI_OFF 0xFE /* #S1_FIR ERDVI bit in IRIER Off */
#define ETHREI_ON 0x02 /* #S1_FIR ETHREI bit in IRIER On */
#define ETHREI_OFF 0xFD /* #S1_FIR ETHREI bit in IRIER Off */
#define EMSI_ON 0x08 /* #S1_FIR EMSI bit in IRIER On */
#define EMSI_OFF 0xF7 /* #S1_FIR EMSI bit in IRIER Off */
/* End of Additions -- Naresh Gupta
*/
/* Eight bit registers - FIR and UART compatible
* these names are compatible with the original 16550 driver
* however, they are all on word boundaries
*/
#define RX_BUF_REG_OFFSET 0x0000 /* Receive Buffer Register */
#define INT_ENABLE_REG_OFFSET 0x0001 /* Interrupt Enable Register */
#define INT_ID_REG_OFFSET 0x0002 /* Interrupt ID Register */
#define LINE_CTRL_REG_OFFSET 0x0003 /* Line Control Register */
#define MODEM_CTRL_REG_OFFSET 0x0004 /* Modem Control Register */
#define LINE_STATUS_REG_OFFSET 0x0005 /* Line Status Register */
#define MODEM_STATUS_REG_OFFSET 0x0006 /* Modem Status Register */
#define SCRATCH_REG_OFFSET 0x0007 /* Scratch Register */
#define CC_16550_REG_STRIDE 2 /* each register is spaced 2 bytes apart */
#define UART_REGSIZE 0x10
/*----------------------------------------------------------------------------
* PCMCIA
* The PCMCIA also needs to share a few defines with the HAL, so they are listed
* here.
*/
/* Card Status Change (PCC0CSCR) Reg */
#define PCMCIA_SCR_GEN_CD_INT 0x80 /* Generate a CD interrupt */
#define PCMCIA_SCR_IREQ_INT_REQ 0x20 /* IREQ Int has occurred */
#define PCMCIA_SCR_STSCH_INT_REQ 0x10 /* STSCH Int has occurred */
#define PCMCIA_SCR_CD_INT_REQ 0x08 /* CD Int occurred */
#define PCMCIA_SCR_RDY_INT_REQ 0x04 /* RDY Int occurred */
#define PCMCIA_SCR_BW_INT_REQ 0x02 /* Batt warning int occurred */
#define PCMCIA_SCR_BE_INT_REQ 0x01 /* Batt dead int occurred */
/*----------------------------------------------------------------------------/
/* Port control module */
#define CC_PORT_REGBASE (SYSTEM_ASIC_REGS_BASE+ASIC_PORT_OFFSET)
#define CC_PORT_REGSIZE 0x0050
#define CC_GPACR_OFFSET 0x0000
#define CC_GPBCR_OFFSET 0x0002
#define CC_GPCCR_OFFSET 0x0004
#define CC_GPDCR_OFFSET 0x0006
#define CC_GPECR_OFFSET 0x0008 // **tjn
#define CC_GPADR_OFFSET 0x0010
#define CC_GPBDR_OFFSET 0x0012
#define CC_GPCDR_OFFSET 0x0014
#define CC_GPDDR_OFFSET 0x0016
#define CC_GPEDR_OFFSET 0x0018 // **tjn
#define CC_GPAICR_OFFSET 0x0020
#define CC_GPBICR_OFFSET 0x0022
#define CC_GPCICR_OFFSET 0x0024
#define CC_GPDICR_OFFSET 0x0026
#define CC_GPEICR_OFFSET 0x0028
#define CC_GPAISR_OFFSET 0x0040
#define CC_GPBISR_OFFSET 0x0042
#define CC_GPCISR_OFFSET 0x0044
#define CC_GPDISR_OFFSET 0x0046
#define CC_GPEISR_OFFSET 0x0048
/****** Value of GPACR ******/
#define CC_PA7_MASK 0x3FFF
#define CC_PA7_FUNC_OUTPUT 0x0000
#define CC_PA7_OUTPUT 0x4000
#define CC_PA7_CMOS_ON_INPUT 0x8000
#define CC_PA7_CMOS_OFF_INPUT 0xC000
#define CC_PA6_MASK 0xCFFF
#define CC_PA6_FUNC_OUTPUT 0x0000
#define CC_PA6_OUTPUT 0x1000
#define CC_PA6_CMOS_ON_INPUT 0x2000
#define CC_PA6_CMOS_OFF_INPUT 0x3000
#define CC_PA5_MASK 0xF3FF
#define CC_PA5_FUNC_OUTPUT 0x0000
#define CC_PA5_OUTPUT 0x0400
#define CC_PA5_CMOS_ON_INPUT 0x0800
#define CC_PA5_CMOS_OFF_INPUT 0x0C00
#define CC_PA4_MASK 0xFCFF
#define CC_PA4_FUNC_OUTPUT 0x0000
#define CC_PA4_OUTPUT 0x0100
#define CC_PA4_CMOS_ON_INPUT 0x0200
#define CC_PA4_CMOS_OFF_INPUT 0x0300
#define CC_PA3_MASK 0xFF3F
#define CC_PA3_FUNC_OUTPUT 0x0000
#define CC_PA3_OUTPUT 0x0040
#define CC_PA3_CMOS_ON_INPUT 0x0080
#define CC_PA3_CMOS_OFF_INPUT 0x00C0
#define CC_PA2_MASK 0xFFCF
#define CC_PA2_FUNC_OUTPUT 0x0000
#define CC_PA2_OUTPUT 0x0010
#define CC_PA2_CMOS_ON_INPUT 0x0020
#define CC_PA2_CMOS_OFF_INPUT 0x0030
#define CC_PA1_MASK 0xFFF3
#define CC_PA1_FUNC_OUTPUT 0x0000
#define CC_PA1_OUTPUT 0x0004
#define CC_PA1_CMOS_ON_INPUT 0x0008
#define CC_PA1_CMOS_OFF_INPUT 0x000C
#define CC_PA0_MASK 0xFFFC
#define CC_PA0_FUNC_OUTPUT 0x0000
#define CC_PA0_OUTPUT 0x0001
#define CC_PA0_CMOS_ON_INPUT 0x0002
#define CC_PA0_CMOS_OFF_INPUT 0x0003
/****** Value of GPBCR ******/
#define CC_PB7_MASK 0x3FFF
#define CC_PB7_FUNC_OUTPUT 0x0000
#define CC_PB7_OUTPUT 0x4000
#define CC_PB7_CMOS_ON_INPUT 0x8000
#define CC_PB7_CMOS_OFF_INPUT 0xC000
#define CC_PB6_MASK 0xCFFF
#define CC_PB6_FUNC_OUTPUT 0x0000
#define CC_PB6_OUTPUT 0x1000
#define CC_PB6_CMOS_ON_INPUT 0x2000
#define CC_PB6_CMOS_OFF_INPUT 0x3000
#define CC_PB5_MASK 0xF3FF
#define CC_PB5_FUNC_OUTPUT 0x0000
#define CC_PB5_OUTPUT 0x0400
#define CC_PB5_CMOS_ON_INPUT 0x0800
#define CC_PB5_CMOS_OFF_INPUT 0x0C00
#define CC_PB4_MASK 0xFCFF
#define CC_PB4_FUNC_OUTPUT 0x0000
#define CC_PB4_OUTPUT 0x0100
#define CC_PB4_CMOS_ON_INPUT 0x0200
#define CC_PB4_CMOS_OFF_INPUT 0x0300
#define CC_PB3_MASK 0xFF3F
#define CC_PB3_FUNC_OUTPUT 0x0000
#define CC_PB3_OUTPUT 0x0040
#define CC_PB3_CMOS_ON_INPUT 0x0080
#define CC_PB3_CMOS_OFF_INPUT 0x00C0
#define CC_PB2_MASK 0xFFCF
#define CC_PB2_FUNC_OUTPUT 0x0000
#define CC_PB2_OUTPUT 0x0010
#define CC_PB2_CMOS_ON_INPUT 0x0020
#define CC_PB2_CMOS_OFF_INPUT 0x0030
#define CC_PB1_MASK 0xFFF3
#define CC_PB1_FUNC_OUTPUT 0x0000
#define CC_PB1_OUTPUT 0x0004
#define CC_PB1_CMOS_ON_INPUT 0x0008
#define CC_PB1_CMOS_OFF_INPUT 0x000C
#define CC_PB0_MASK 0xFFFC
#define CC_PB0_FUNC_OUTPUT 0x0000
#define CC_PB0_OUTPUT 0x0001
#define CC_PB0_CMOS_ON_INPUT 0x0002
#define CC_PB0_CMOS_OFF_INPUT 0x0003
/****** Value of GPCCR ******/
#define CC_PC7_MASK 0x3FFF
#define CC_PC7_FUNC_OUTPUT 0x0000
#define CC_PC7_OUTPUT 0x4000
#define CC_PC7_CMOS_ON_INPUT 0x8000
#define CC_PC7_CMOS_OFF_INPUT 0xC000
#define CC_PC6_MASK 0xCFFF
#define CC_PC6_FUNC_OUTPUT 0x0000
#define CC_PC6_OUTPUT 0x1000
#define CC_PC6_CMOS_ON_INPUT 0x2000
#define CC_PC6_CMOS_OFF_INPUT 0x3000
#define CC_PC5_MASK 0xF3FF
#define CC_PC5_FUNC_OUTPUT 0x0000
#define CC_PC5_OUTPUT 0x0400
#define CC_PC5_CMOS_ON_INPUT 0x0800
#define CC_PC5_CMOS_OFF_INPUT 0x0C00
#define CC_PC4_MASK 0xFCFF
#define CC_PC4_FUNC_OUTPUT 0x0000
#define CC_PC4_OUTPUT 0x0100
#define CC_PC4_CMOS_ON_INPUT 0x0200
#define CC_PC4_CMOS_OFF_INPUT 0x0300
#define CC_PC3_MASK 0xFF3F
#define CC_PC3_FUNC_OUTPUT 0x0000
#define CC_PC3_OUTPUT 0x0040
#define CC_PC3_CMOS_ON_INPUT 0x0080
#define CC_PC3_CMOS_OFF_INPUT 0x00C0
#define CC_PC2_MASK 0xFFCF
#define CC_PC2_FUNC_OUTPUT 0x0000
#define CC_PC2_OUTPUT 0x0010
#define CC_PC2_CMOS_ON_INPUT 0x0020
#define CC_PC2_CMOS_OFF_INPUT 0x0030
#define CC_PC1_MASK 0xFFF3
#define CC_PC1_FUNC_OUTPUT 0x0000
#define CC_PC1_OUTPUT 0x0004
#define CC_PC1_CMOS_ON_INPUT 0x0008
#define CC_PC1_CMOS_OFF_INPUT 0x000C
#define CC_PC0_MASK 0xFFFC
#define CC_PC0_FUNC_OUTPUT 0x0000
#define CC_PC0_OUTPUT 0x0001
#define CC_PC0_CMOS_ON_INPUT 0x0002
#define CC_PC0_CMOS_OFF_INPUT 0x0003
/****** Value of GPDCR ******/
#define CC_PD7_MASK 0x3FFF
#define CC_PD7_FUNC_OUTPUT 0x0000
#define CC_PD7_OUTPUT 0x4000
#define CC_PD7_CMOS_ON_INPUT 0x8000
#define CC_PD7_CMOS_OFF_INPUT 0xC000
#define CC_PD6_MASK 0xCFFF
#define CC_PD6_FUNC_OUTPUT 0x0000
#define CC_PD6_OUTPUT 0x1000
#define CC_PD6_CMOS_ON_INPUT 0x2000
#define CC_PD6_CMOS_OFF_INPUT 0x3000
#define CC_PD5_MASK 0xF3FF
#define CC_PD5_FUNC_OUTPUT 0x0000
#define CC_PD5_OUTPUT 0x0400
#define CC_PD5_CMOS_ON_INPUT 0x0800
#define CC_PD5_CMOS_OFF_INPUT 0x0C00
#define CC_PD4_MASK 0xFCFF
#define CC_PD4_FUNC_OUTPUT 0x0000
#define CC_PD4_OUTPUT 0x0100
#define CC_PD4_CMOS_ON_INPUT 0x0200
#define CC_PD4_CMOS_OFF_INPUT 0x0300
#define CC_PD3_MASK 0xFF3F
#define CC_PD3_FUNC_OUTPUT 0x0000
#define CC_PD3_OUTPUT 0x0040
#define CC_PD3_CMOS_ON_INPUT 0x0080
#define CC_PD3_CMOS_OFF_INPUT 0x00C0
#define CC_PD2_MASK 0xFFCF
#define CC_PD2_FUNC_OUTPUT 0x0000
#define CC_PD2_OUTPUT 0x0010
#define CC_PD2_CMOS_ON_INPUT 0x0020
#define CC_PD2_CMOS_OFF_INPUT 0x0030
#define CC_PD1_MASK 0xFFF3
#define CC_PD1_FUNC_OUTPUT 0x0000
#define CC_PD1_OUTPUT 0x0004
#define CC_PD1_CMOS_ON_INPUT 0x0008
#define CC_PD1_CMOS_OFF_INPUT 0x000C
#define CC_PD0_MASK 0xFFFC
#define CC_PD0_FUNC_OUTPUT 0x0000
#define CC_PD0_OUTPUT 0x0001
#define CC_PD0_CMOS_ON_INPUT 0x0002
#define CC_PD0_CMOS_OFF_INPUT 0x0003
/* Bits for the STCN6550 AFE master clock select */
#define CC_GPACR_AFE_CLOCK_CONTROL_MASK 0xFFF0
#define CC_GPACR_AFE_CLOCK_CONTROL_SELECT 0x0005
#define CC_GPADR_AFE_CLOCK_MASK 0xFC
#define CC_GPADR_AFE_MODEM_CLOCK 0x03
#define CC_GPADR_AFE_SLOW_CLOCK 0x01
#define CC_GPADR_AFE_FAST_CLOCK 0x02
#define CC_GPADR_AFE_NO_CLOCK 0x00
#define FIR_CFG_OFFSET 0x01E0 /* FIR Configuration Register */
#define CC_FIR_CFG (UART_REGBASE + 0x01E0) // cut 5
//#define CC_FIR_CFG (UART_REGBASE + 0x0120) // cut 3
/* FIR Configuration bit definitions */
#define FIR_CFG_CLR1 0xFD
#define FIR_CFG_EN02 0x05
#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?