aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pcmcia
diff options
context:
space:
mode:
authorDominik Brodowski <linux@dominikbrodowski.net>2010-07-29 10:33:23 -0400
committerDominik Brodowski <linux@dominikbrodowski.net>2010-09-29 11:20:22 -0400
commit37979e1546a790c44adbc7f27a85569944480ebc (patch)
tree18499b4d2890409c1cbe49cc1af97b57f4a2c906 /drivers/pcmcia
parentfc301101034c06bf56a7f71bf682c48909e401a4 (diff)
pcmcia: simplify IntType
IntType was only set to INT_MEMORY (driver pcmciamtd) or INT_MEMORY_AND_IO (all other drivers). As this flags seems to relate to ioport access, make it conditional to the driver having requested IO port access. There are two drivers which do not request IO ports, but did set INT_MEMORY_AND_IO: ray_cs and b43. For those, we consistently only set INT_MEMORY in future. 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 'drivers/pcmcia')
-rw-r--r--drivers/pcmcia/cs_internal.h1
-rw-r--r--drivers/pcmcia/pcmcia_resource.c10
2 files changed, 1 insertions, 10 deletions
diff --git a/drivers/pcmcia/cs_internal.h b/drivers/pcmcia/cs_internal.h
index 7ef464d40e91..a0c5adb37b5f 100644
--- a/drivers/pcmcia/cs_internal.h
+++ b/drivers/pcmcia/cs_internal.h
@@ -34,7 +34,6 @@ typedef struct config_t {
34 struct kref ref; 34 struct kref ref;
35 unsigned int state; 35 unsigned int state;
36 unsigned int Attributes; 36 unsigned int Attributes;
37 unsigned int IntType;
38 unsigned int ConfigBase; 37 unsigned int ConfigBase;
39 unsigned char Option; 38 unsigned char Option;
40 unsigned int CardValues; 39 unsigned int CardValues;
diff --git a/drivers/pcmcia/pcmcia_resource.c b/drivers/pcmcia/pcmcia_resource.c
index 8834bb415d38..6210e1c2b432 100644
--- a/drivers/pcmcia/pcmcia_resource.c
+++ b/drivers/pcmcia/pcmcia_resource.c
@@ -447,11 +447,6 @@ int pcmcia_request_configuration(struct pcmcia_device *p_dev,
447 if (!(s->state & SOCKET_PRESENT)) 447 if (!(s->state & SOCKET_PRESENT))
448 return -ENODEV; 448 return -ENODEV;
449 449
450 if (req->IntType & INT_CARDBUS) {
451 dev_dbg(&p_dev->dev, "IntType may not be INT_CARDBUS\n");
452 return -EINVAL;
453 }
454
455 mutex_lock(&s->ops_mutex); 450 mutex_lock(&s->ops_mutex);
456 c = p_dev->function_config; 451 c = p_dev->function_config;
457 if (c->state & CONFIG_LOCKED) { 452 if (c->state & CONFIG_LOCKED) {
@@ -470,12 +465,9 @@ int pcmcia_request_configuration(struct pcmcia_device *p_dev,
470 } 465 }
471 466
472 /* Pick memory or I/O card, DMA mode, interrupt */ 467 /* Pick memory or I/O card, DMA mode, interrupt */
473 c->IntType = req->IntType;
474 c->Attributes = req->Attributes; 468 c->Attributes = req->Attributes;
475 if (req->IntType & INT_MEMORY_AND_IO) 469 if (p_dev->_io)
476 s->socket.flags |= SS_IOCARD; 470 s->socket.flags |= SS_IOCARD;
477 if (req->IntType & INT_ZOOMED_VIDEO)
478 s->socket.flags |= SS_ZVCARD | SS_IOCARD;
479 if (req->Attributes & CONF_ENABLE_DMA) 471 if (req->Attributes & CONF_ENABLE_DMA)
480 s->socket.flags |= SS_DMA_MODE; 472 s->socket.flags |= SS_DMA_MODE;
481 if (req->Attributes & CONF_ENABLE_SPKR) { 473 if (req->Attributes & CONF_ENABLE_SPKR) {