⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pcmcia.h

📁 IPcop软路由防火墙 FREE 开源源代码
💻 H
📖 第 1 页 / 共 2 页
字号:
#define I365_VPP1_12V	0x02	/* Vpp2 = 12.0v *//* Flags for I365_INTCTL */#define I365_RING_ENA	0x80#define I365_PC_RESET	0x40#define I365_PC_IOCARD	0x20#define I365_INTR_ENA	0x10#define I365_IRQ_MASK	0x0F/* Flags for I365_CSC and I365_CSCINT*/#define I365_CSC_BVD1	0x01#define I365_CSC_STSCHG	0x01#define I365_CSC_BVD2	0x02#define I365_CSC_READY	0x04#define I365_CSC_DETECT	0x08#define I365_CSC_ANY	0x0F#define I365_CSC_GPI	0x10/* Flags for I365_ADDRWIN */#define I365_ADDR_MEMCS16	0x20#define I365_ENA_IO(map)	(0x40 << (map))#define I365_ENA_MEM(map)	(0x01 << (map))/* Flags for I365_IOCTL */#define I365_IOCTL_MASK(map)	(0x0F << (map<<2))#define I365_IOCTL_WAIT(map)	(0x08 << (map<<2))#define I365_IOCTL_0WS(map)	(0x04 << (map<<2))#define I365_IOCTL_IOCS16(map)	(0x02 << (map<<2))#define I365_IOCTL_16BIT(map)	(0x01 << (map<<2))/* Flags for I365_GENCTL */#define I365_CTL_16DELAY	0x01#define I365_CTL_RESET		0x02#define I365_CTL_GPI_ENA	0x04#define I365_CTL_GPI_CTL	0x08#define I365_CTL_RESUME		0x10#define I365_CTL_SW_IRQ		0x20/* Flags for I365_GBLCTL */#define I365_GBL_PWRDOWN	0x01#define I365_GBL_CSC_LEV	0x02#define I365_GBL_WRBACK		0x04#define I365_GBL_IRQ_0_LEV	0x08#define I365_GBL_IRQ_1_LEV	0x10/* Flags for memory window registers */#define I365_MEM_16BIT	0x8000	/* In memory start high byte */#define I365_MEM_0WS	0x4000#define I365_MEM_WS1	0x8000	/* In memory stop high byte */#define I365_MEM_WS0	0x4000#define I365_MEM_WRPROT	0x8000	/* In offset high byte */#define I365_MEM_REG	0x4000#define I365_REG(slot, reg)	(((slot) << 6) | (reg))/* Default ISA interrupt mask */#define I365_ISA_IRQ_MASK	0xdeb8	/* irq's 3-5,7,9-12,14,15 *//* Device ID's for PCI-to-PCMCIA bridges */#ifndef PCI_VENDOR_ID_INTEL#define PCI_VENDOR_ID_INTEL		0x8086#endif#ifndef PCI_DEVICE_ID_INTEL_82092AA_0#define PCI_DEVICE_ID_INTEL_82092AA_0	0x1221#endif#ifndef PCI_VENDOR_ID_OMEGA#define PCI_VENDOR_ID_OMEGA		0x119b#endif#ifndef PCI_DEVICE_ID_OMEGA_82C092G#define PCI_DEVICE_ID_OMEGA_82C092G	0x1221#endif#ifndef PCI_VENDOR_ID_CIRRUS#define PCI_VENDOR_ID_CIRRUS		0x1013#endif#ifndef PCI_DEVICE_ID_CIRRUS_6729#define PCI_DEVICE_ID_CIRRUS_6729	0x1100#endif#ifndef PCI_DEVICE_ID_CIRRUS_6832#define PCI_DEVICE_ID_CIRRUS_6832	0x1110#endif#define PD67_MISC_CTL_1		0x16	/* Misc control 1 */#define PD67_FIFO_CTL		0x17	/* FIFO control */#define PD67_MISC_CTL_2		0x1E	/* Misc control 2 */#define PD67_CHIP_INFO		0x1f	/* Chip information */#define PD67_ATA_CTL		0x026	/* 6730: ATA control */#define PD67_EXT_INDEX		0x2e	/* Extension index */#define PD67_EXT_DATA		0x2f	/* Extension data */#define pd67_ext_get(s, r) \    (i365_set(s, PD67_EXT_INDEX, r), i365_get(s, PD67_EXT_DATA))#define pd67_ext_set(s, r, v) \    (i365_set(s, PD67_EXT_INDEX, r), i365_set(s, PD67_EXT_DATA, v))/* PD6722 extension registers -- indexed in PD67_EXT_INDEX */#define PD67_DATA_MASK0		0x01	/* Data mask 0 */#define PD67_DATA_MASK1		0x02	/* Data mask 1 */#define PD67_DMA_CTL		0x03	/* DMA control *//* PD6730 extension registers -- indexed in PD67_EXT_INDEX */#define PD67_EXT_CTL_1		0x03	/* Extension control 1 */#define PD67_MEM_PAGE(n)	((n)+5)	/* PCI window bits 31:24 */#define PD67_EXTERN_DATA	0x0a#define PD67_EXT_CTL_2		0x0b#define PD67_MISC_CTL_3		0x25#define PD67_SMB_PWR_CTL	0x26/* I/O window address offset */#define PD67_IO_OFF(w)		(0x36+((w)<<1))/* Timing register sets */#define PD67_TIME_SETUP(n)	(0x3a + 3*(n))#define PD67_TIME_CMD(n)	(0x3b + 3*(n))#define PD67_TIME_RECOV(n)	(0x3c + 3*(n))/* Flags for PD67_MISC_CTL_1 */#define PD67_MC1_5V_DET		0x01	/* 5v detect */#define PD67_MC1_MEDIA_ENA	0x01	/* 6730: Multimedia enable */#define PD67_MC1_VCC_3V		0x02	/* 3.3v Vcc */#define PD67_MC1_PULSE_MGMT	0x04#define PD67_MC1_PULSE_IRQ	0x08#define PD67_MC1_SPKR_ENA	0x10#define PD67_MC1_INPACK_ENA	0x80/* Flags for PD67_FIFO_CTL */#define PD67_FIFO_EMPTY		0x80/* Flags for PD67_MISC_CTL_2 */#define PD67_MC2_FREQ_BYPASS	0x01#define PD67_MC2_DYNAMIC_MODE	0x02#define PD67_MC2_SUSPEND	0x04#define PD67_MC2_5V_CORE	0x08#define PD67_MC2_LED_ENA	0x10	/* IRQ 12 is LED enable */#define PD67_MC2_FAST_PCI	0x10	/* 6729: PCI bus > 25 MHz */#define PD67_MC2_3STATE_BIT7	0x20	/* Floppy change bit */#define PD67_MC2_DMA_MODE	0x40#define PD67_MC2_IRQ15_RI	0x80	/* IRQ 15 is ring enable *//* Flags for PD67_CHIP_INFO */#define PD67_INFO_SLOTS		0x20	/* 0 = 1 slot, 1 = 2 slots */#define PD67_INFO_CHIP_ID	0xc0#define PD67_INFO_REV		0x1c/* Fields in PD67_TIME_* registers */#define PD67_TIME_SCALE		0xc0#define PD67_TIME_SCALE_1	0x00#define PD67_TIME_SCALE_16	0x40#define PD67_TIME_SCALE_256	0x80#define PD67_TIME_SCALE_4096	0xc0#define PD67_TIME_MULT		0x3f/* Fields in PD67_DMA_CTL */#define PD67_DMA_MODE		0xc0#define PD67_DMA_OFF		0x00#define PD67_DMA_DREQ_INPACK	0x40#define PD67_DMA_DREQ_WP	0x80#define PD67_DMA_DREQ_BVD2	0xc0#define PD67_DMA_PULLUP		0x20	/* Disable socket pullups? *//* Fields in PD67_EXT_CTL_1 */#define PD67_EC1_VCC_PWR_LOCK	0x01#define PD67_EC1_AUTO_PWR_CLEAR	0x02#define PD67_EC1_LED_ENA	0x04#define PD67_EC1_INV_CARD_IRQ	0x08#define PD67_EC1_INV_MGMT_IRQ	0x10#define PD67_EC1_PULLUP_CTL	0x20/* Fields in PD67_EXTERN_DATA */#define PD67_EXD_VS1(s)		(0x01 << ((s)<<1))#define PD67_EXD_VS2(s)		(0x02 << ((s)<<1))/* Fields in PD67_EXT_CTL_2 */#define PD67_EC2_GPSTB_TOTEM	0x04#define PD67_EC2_GPSTB_IOR	0x08#define PD67_EC2_GPSTB_IOW	0x10#define PD67_EC2_GPSTB_HIGH	0x20/* Fields in PD67_MISC_CTL_3 */#define PD67_MC3_IRQ_MASK	0x03#define PD67_MC3_IRQ_PCPCI	0x00#define PD67_MC3_IRQ_EXTERN	0x01#define PD67_MC3_IRQ_PCIWAY	0x02#define PD67_MC3_IRQ_PCI	0x03#define PD67_MC3_PWR_MASK	0x0c#define PD67_MC3_PWR_SERIAL	0x00#define PD67_MC3_PWR_TI2202	0x08#define PD67_MC3_PWR_SMB	0x0c/* Register definitions for Cirrus PD6832 PCI-to-CardBus bridge *//* PD6832 extension registers -- indexed in PD67_EXT_INDEX */#define PD68_PCI_SPACE			0x22#define PD68_PCCARD_SPACE		0x23#define PD68_WINDOW_TYPE		0x24#define PD68_EXT_CSC			0x2e#define PD68_MISC_CTL_4			0x2f#define PD68_MISC_CTL_5			0x30#define PD68_MISC_CTL_6			0x31/* Extra flags in PD67_MISC_CTL_3 */#define PD68_MC3_HW_SUSP		0x10#define PD68_MC3_MM_EXPAND		0x40#define PD68_MC3_MM_ARM			0x80/* Bridge Control Register */#define  PD6832_BCR_MGMT_IRQ_ENA	0x0800/* Socket Number Register */#define PD6832_SOCKET_NUMBER		0x004c	/* 8 bit *//* Data structure for tracking vendor-specific state */typedef struct cirrus_state_t {    u_char		misc1;		/* PD67_MISC_CTL_1 */    u_char		misc2;		/* PD67_MISC_CTL_2 */    u_char		ectl1;		/* PD67_EXT_CTL_1 */    u_char		timer[6];	/* PD67_TIME_* */} cirrus_state_t;#define CIRRUS_PCIC_ID \    IS_PD6729, IS_PD6730, IS_PD6832#define CIRRUS_PCIC_INFO \    { "Cirrus PD6729", IS_CIRRUS|IS_PCI, ID(CIRRUS, 6729) },		\    { "Cirrus PD6730", IS_CIRRUS|IS_PCI, PCI_VENDOR_ID_CIRRUS, -1 },	\    { "Cirrus PD6832", IS_CIRRUS|IS_CARDBUS, ID(CIRRUS, 6832) }/* Special bit in I365_IDENT used for Vadem chip detection */#define I365_IDENT_VADEM	0x08/* Special definitions in I365_POWER */#define VG468_VPP2_MASK		0x0c#define VG468_VPP2_5V		0x04#define VG468_VPP2_12V		0x08/* Unique Vadem registers */#define VG469_VSENSE		0x1f	/* Card voltage sense */#define VG469_VSELECT		0x2f	/* Card voltage select */#define VG468_CTL		0x38	/* Control register */#define VG468_TIMER		0x39	/* Timer control */#define VG468_MISC		0x3a	/* Miscellaneous */#define VG468_GPIO_CFG		0x3b	/* GPIO configuration */#define VG469_EXT_MODE		0x3c	/* Extended mode register */#define VG468_SELECT		0x3d	/* Programmable chip select */#define VG468_SELECT_CFG	0x3e	/* Chip select configuration */#define VG468_ATA		0x3f	/* ATA control *//* Flags for VG469_VSENSE */#define VG469_VSENSE_A_VS1	0x01#define VG469_VSENSE_A_VS2	0x02#define VG469_VSENSE_B_VS1	0x04#define VG469_VSENSE_B_VS2	0x08/* Flags for VG469_VSELECT */#define VG469_VSEL_VCC		0x03#define VG469_VSEL_5V		0x00#define VG469_VSEL_3V		0x03#define VG469_VSEL_MAX		0x0c#define VG469_VSEL_EXT_STAT	0x10#define VG469_VSEL_EXT_BUS	0x20#define VG469_VSEL_MIXED	0x40#define VG469_VSEL_ISA		0x80/* Flags for VG468_CTL */#define VG468_CTL_SLOW		0x01	/* 600ns memory timing */#define VG468_CTL_ASYNC		0x02	/* Asynchronous bus clocking */#define VG468_CTL_TSSI		0x08	/* Tri-state some outputs */#define VG468_CTL_DELAY		0x10	/* Card detect debounce */#define VG468_CTL_INPACK	0x20	/* Obey INPACK signal? */#define VG468_CTL_POLARITY	0x40	/* VCCEN polarity */#define VG468_CTL_COMPAT	0x80	/* Compatibility stuff */#define VG469_CTL_WS_COMPAT	0x04	/* Wait state compatibility */#define VG469_CTL_STRETCH	0x10	/* LED stretch *//* Flags for VG468_TIMER */#define VG468_TIMER_ZEROPWR	0x10	/* Zero power control */#define VG468_TIMER_SIGEN	0x20	/* Power up */#define VG468_TIMER_STATUS	0x40	/* Activity timer status */#define VG468_TIMER_RES		0x80	/* Timer resolution */#define VG468_TIMER_MASK	0x0f	/* Activity timer timeout *//* Flags for VG468_MISC */#define VG468_MISC_GPIO		0x04	/* General-purpose IO */#define VG468_MISC_DMAWSB	0x08	/* DMA wait state control */#define VG469_MISC_LEDENA	0x10	/* LED enable */#define VG468_MISC_VADEMREV	0x40	/* Vadem revision control */#define VG468_MISC_UNLOCK	0x80	/* Unique register lock *//* Flags for VG469_EXT_MODE_A */#define VG469_MODE_VPPST	0x03	/* Vpp steering control */#define VG469_MODE_INT_SENSE	0x04	/* Internal voltage sense */#define VG469_MODE_CABLE	0x08#define VG469_MODE_COMPAT	0x10	/* i82365sl B or DF step */#define VG469_MODE_TEST		0x20#define VG469_MODE_RIO		0x40	/* Steer RIO to INTR? *//* Flags for VG469_EXT_MODE_B */#define VG469_MODE_B_3V		0x01	/* 3.3v for socket B *//* Data structure for tracking vendor-specific state */typedef struct vg46x_state_t {    u_char		ctl;		/* VG468_CTL */    u_char		ema;		/* VG468_EXT_MODE_A */} vg46x_state_t;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -