4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
8 * The initial developer of the original code is David A. Hinds
9 * <dahinds@users.sourceforge.net>. Portions created by David A. Hinds
10 * are Copyright (C) 1999 David A. Hinds. All Rights Reserved.
12 * (C) 1999 David A. Hinds
19 #include <linux/interrupt.h>
22 /* ModifyConfiguration */
23 typedef struct modconf_t {
25 u_int Vcc, Vpp1, Vpp2;
28 /* Attributes for ModifyConfiguration */
29 #define CONF_IRQ_CHANGE_VALID 0x0100
30 #define CONF_VCC_CHANGE_VALID 0x0200
31 #define CONF_VPP1_CHANGE_VALID 0x0400
32 #define CONF_VPP2_CHANGE_VALID 0x0800
33 #define CONF_IO_CHANGE_WIDTH 0x1000
35 /* For RequestConfiguration */
36 typedef struct config_req_t {
38 u_int Vpp; /* both Vpp1 and Vpp2 */
41 u_char Status, Pin, Copy, ExtStatus;
46 /* Attributes for RequestConfiguration */
47 #define CONF_ENABLE_IRQ 0x01
48 #define CONF_ENABLE_DMA 0x02
49 #define CONF_ENABLE_SPKR 0x04
50 #define CONF_ENABLE_PULSE_IRQ 0x08
51 #define CONF_VALID_CLIENT 0x100
54 #define INT_MEMORY 0x01
55 #define INT_MEMORY_AND_IO 0x02
56 #define INT_CARDBUS 0x04
57 #define INT_ZOOMED_VIDEO 0x08
59 /* Configuration registers present */
60 #define PRESENT_OPTION 0x001
61 #define PRESENT_STATUS 0x002
62 #define PRESENT_PIN_REPLACE 0x004
63 #define PRESENT_COPY 0x008
64 #define PRESENT_EXT_STATUS 0x010
65 #define PRESENT_IOBASE_0 0x020
66 #define PRESENT_IOBASE_1 0x040
67 #define PRESENT_IOBASE_2 0x080
68 #define PRESENT_IOBASE_3 0x100
69 #define PRESENT_IOSIZE 0x200
71 /* For RequestWindow */
72 typedef struct win_req_t {
79 /* Attributes for RequestWindow */
80 #define WIN_MEMORY_TYPE_CM 0x00 /* default */
81 #define WIN_MEMORY_TYPE_AM 0x20 /* MAP_ATTRIB */
82 #define WIN_DATA_WIDTH_8 0x00 /* default */
83 #define WIN_DATA_WIDTH_16 0x02 /* MAP_16BIT */
84 #define WIN_ENABLE 0x01 /* MAP_ACTIVE */
85 #define WIN_USE_WAIT 0x40 /* MAP_USE_WAIT */
87 #define WIN_FLAGS_MAP 0x63 /* MAP_ATTRIB | MAP_16BIT | MAP_ACTIVE |
89 #define WIN_FLAGS_REQ 0x1c /* mapping to socket->win[i]:
95 #endif /* _LINUX_CS_H */