aboutsummaryrefslogtreecommitdiff
path: root/include/pcmcia
diff options
context:
space:
mode:
authorDominik Brodowski <linux@dominikbrodowski.net>2010-07-29 18:35:47 +0200
committerDominik Brodowski <linux@dominikbrodowski.net>2010-09-29 17:20:22 +0200
commit7feabb6412ea23edd298c0fa90e5aa6733eb4a42 (patch)
treebfafe961aeb5449a71fbb389172b3a6c68b56e7c /include/pcmcia
parent37979e1546a790c44adbc7f27a85569944480ebc (diff)
pcmcia: move config_{base,index,regs} to struct pcmcia_device
Several drivers prefer to explicitly set config_{base,index,regs}, formerly known as ConfigBase, ConfigIndex and Present. Instead of passing these values inside config_req_t, store it in struct pcmcia_device. CC: netdev@vger.kernel.org CC: linux-wireless@vger.kernel.org CC: linux-ide@vger.kernel.org CC: linux-usb@vger.kernel.org CC: laforge@gnumonks.org CC: linux-mtd@lists.infradead.org CC: alsa-devel@alsa-project.org CC: linux-serial@vger.kernel.org CC: Jiri Kosina <jkosina@suse.cz> CC: linux-scsi@vger.kernel.org Acked-by: Gustavo F. Padovan <padovan@profusion.mobi> (for drivers/bluetooth) Tested-by: Wolfram Sang <w.sang@pengutronix.de> Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Diffstat (limited to 'include/pcmcia')
-rw-r--r--include/pcmcia/cs.h15
-rw-r--r--include/pcmcia/ds.h14
2 files changed, 14 insertions, 15 deletions
diff --git a/include/pcmcia/cs.h b/include/pcmcia/cs.h
index 674edbc9ebe..47b6092c4ed 100644
--- a/include/pcmcia/cs.h
+++ b/include/pcmcia/cs.h
@@ -22,9 +22,6 @@
/* For RequestConfiguration */
typedef struct config_req_t {
u_int Attributes;
- u_int ConfigBase;
- u_char ConfigIndex;
- u_int Present;
} config_req_t;
/* Attributes for RequestConfiguration */
@@ -35,16 +32,4 @@ typedef struct config_req_t {
#define CONF_ENABLE_ESR 0x10
#define CONF_VALID_CLIENT 0x100
-/* Configuration registers present */
-#define PRESENT_OPTION 0x001
-#define PRESENT_STATUS 0x002
-#define PRESENT_PIN_REPLACE 0x004
-#define PRESENT_COPY 0x008
-#define PRESENT_EXT_STATUS 0x010
-#define PRESENT_IOBASE_0 0x020
-#define PRESENT_IOBASE_1 0x040
-#define PRESENT_IOBASE_2 0x080
-#define PRESENT_IOBASE_3 0x100
-#define PRESENT_IOSIZE 0x200
-
#endif /* _LINUX_CS_H */
diff --git a/include/pcmcia/ds.h b/include/pcmcia/ds.h
index 6137fbc34ab..bc28f96d0b5 100644
--- a/include/pcmcia/ds.h
+++ b/include/pcmcia/ds.h
@@ -97,6 +97,9 @@ struct pcmcia_device {
unsigned int vpp;
unsigned int io_lines; /* number of I/O lines */
+ unsigned int config_base;
+ unsigned int config_index;
+ unsigned int config_regs; /* PRESENT_ flags below */
/* Is the device suspended? */
u16 suspended:1;
@@ -250,6 +253,17 @@ static inline int pcmcia_io_cfg_data_width(unsigned int flags)
0x0c -> 2
0x10 -> 3 */
+/* config_reg{ister}s present for this PCMCIA device */
+#define PRESENT_OPTION 0x001
+#define PRESENT_STATUS 0x002
+#define PRESENT_PIN_REPLACE 0x004
+#define PRESENT_COPY 0x008
+#define PRESENT_EXT_STATUS 0x010
+#define PRESENT_IOBASE_0 0x020
+#define PRESENT_IOBASE_1 0x040
+#define PRESENT_IOBASE_2 0x080
+#define PRESENT_IOBASE_3 0x100
+#define PRESENT_IOSIZE 0x200
#endif /* __KERNEL__ */