aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2010-10-22 11:23:42 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2010-10-22 11:23:42 -0700
commitf5d9d249b9a6884daff513ef08afa43d3f7e085f (patch)
tree507fe2ad8827aa9011bdebcd98970e8563240d8e
parentdb08bf0877f3464fb0c2c37dcdd9f9683192ea26 (diff)
parent36845d09b93ff04b1c26c47f2c278dd779462468 (diff)
Merge branch 'urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6v2.6.36-git3
* 'urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6: pcmcia: fix ni_daq_700 compilation pcmcia: IOCARD is also required for using IRQs
-rw-r--r--drivers/pcmcia/pcmcia_resource.c4
-rw-r--r--drivers/staging/comedi/drivers/ni_daq_700.c1
-rw-r--r--include/pcmcia/ds.h2
3 files changed, 5 insertions, 2 deletions
diff --git a/drivers/pcmcia/pcmcia_resource.c b/drivers/pcmcia/pcmcia_resource.c
index a9af0d784426..0bdda5b3ed55 100644
--- a/drivers/pcmcia/pcmcia_resource.c
+++ b/drivers/pcmcia/pcmcia_resource.c
@@ -514,7 +514,9 @@ int pcmcia_enable_device(struct pcmcia_device *p_dev)
}
/* Pick memory or I/O card, DMA mode, interrupt */
- if (p_dev->_io)
+ if (p_dev->_io || flags & CONF_ENABLE_IRQ)
+ flags |= CONF_ENABLE_IOCARD;
+ if (flags & CONF_ENABLE_IOCARD)
s->socket.flags |= SS_IOCARD;
if (flags & CONF_ENABLE_SPKR) {
s->socket.flags |= SS_SPKR_ENA;
diff --git a/drivers/staging/comedi/drivers/ni_daq_700.c b/drivers/staging/comedi/drivers/ni_daq_700.c
index fc772a8a55c6..6b7372eed90d 100644
--- a/drivers/staging/comedi/drivers/ni_daq_700.c
+++ b/drivers/staging/comedi/drivers/ni_daq_700.c
@@ -496,7 +496,6 @@ static int dio700_pcmcia_config_loop(struct pcmcia_device *p_dev,
static void dio700_config(struct pcmcia_device *link)
{
- win_req_t req;
int ret;
printk(KERN_INFO "ni_daq_700: cs-config\n");
diff --git a/include/pcmcia/ds.h b/include/pcmcia/ds.h
index d830c87ff0a7..8479b66c067b 100644
--- a/include/pcmcia/ds.h
+++ b/include/pcmcia/ds.h
@@ -259,6 +259,8 @@ void pcmcia_disable_device(struct pcmcia_device *p_dev);
#define CONF_ENABLE_SPKR 0x0002
#define CONF_ENABLE_PULSE_IRQ 0x0004
#define CONF_ENABLE_ESR 0x0008
+#define CONF_ENABLE_IOCARD 0x0010 /* auto-enabled if IO resources or IRQ
+ * (CONF_ENABLE_IRQ) in use */
/* flags used by pcmcia_loop_config() autoconfiguration */
#define CONF_AUTO_CHECK_VCC 0x0100 /* check for matching Vcc? */