diff options
author | Dominik Brodowski <linux@dominikbrodowski.net> | 2006-03-01 18:09:29 -0500 |
---|---|---|
committer | Dominik Brodowski <linux@dominikbrodowski.net> | 2006-03-31 10:26:33 -0500 |
commit | e2d4096365e06b9a3799afbadc28b4519c0b3526 (patch) | |
tree | 90ec691d71f9c0309048714e359b8ba351b533f7 /sound/pcmcia | |
parent | f6fbe01ac976f3ec618cd5fb71ad9ce2cfa7ab2b (diff) |
[PATCH] pcmcia: use bitfield instead of p_state and state
Instead of the two status values struct pcmcia_device->p_state and state,
use descriptive bitfields. Most value-checking in drivers was invalid, as
the core now only calls the ->remove() (a.k.a. detach) function in case the
attachement _and_ configuration was successful.
Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Diffstat (limited to 'sound/pcmcia')
-rw-r--r-- | sound/pcmcia/pdaudiocf/pdaudiocf.c | 4 | ||||
-rw-r--r-- | sound/pcmcia/vx/vxpocket.c | 5 |
2 files changed, 0 insertions, 9 deletions
diff --git a/sound/pcmcia/pdaudiocf/pdaudiocf.c b/sound/pcmcia/pdaudiocf/pdaudiocf.c index 923b1d0c2f1b..a1333fa236ac 100644 --- a/sound/pcmcia/pdaudiocf/pdaudiocf.c +++ b/sound/pcmcia/pdaudiocf/pdaudiocf.c | |||
@@ -243,9 +243,6 @@ static int pdacf_config(struct pcmcia_device *link) | |||
243 | link->conf.ConfigIndex = 0x5; | 243 | link->conf.ConfigIndex = 0x5; |
244 | kfree(parse); | 244 | kfree(parse); |
245 | 245 | ||
246 | /* Configure card */ | ||
247 | link->state |= DEV_CONFIG; | ||
248 | |||
249 | CS_CHECK(RequestIO, pcmcia_request_io(link, &link->io)); | 246 | CS_CHECK(RequestIO, pcmcia_request_io(link, &link->io)); |
250 | CS_CHECK(RequestIRQ, pcmcia_request_irq(link, &link->irq)); | 247 | CS_CHECK(RequestIRQ, pcmcia_request_irq(link, &link->irq)); |
251 | CS_CHECK(RequestConfiguration, pcmcia_request_configuration(link, &link->conf)); | 248 | CS_CHECK(RequestConfiguration, pcmcia_request_configuration(link, &link->conf)); |
@@ -254,7 +251,6 @@ static int pdacf_config(struct pcmcia_device *link) | |||
254 | goto failed; | 251 | goto failed; |
255 | 252 | ||
256 | link->dev_node = &pdacf->node; | 253 | link->dev_node = &pdacf->node; |
257 | link->state &= ~DEV_CONFIG_PENDING; | ||
258 | return 0; | 254 | return 0; |
259 | 255 | ||
260 | cs_failed: | 256 | cs_failed: |
diff --git a/sound/pcmcia/vx/vxpocket.c b/sound/pcmcia/vx/vxpocket.c index 4004b35e8af5..f5f4a577a441 100644 --- a/sound/pcmcia/vx/vxpocket.c +++ b/sound/pcmcia/vx/vxpocket.c | |||
@@ -249,9 +249,6 @@ static int vxpocket_config(struct pcmcia_device *link) | |||
249 | strcpy(chip->card->driver, vxp440_hw.name); | 249 | strcpy(chip->card->driver, vxp440_hw.name); |
250 | } | 250 | } |
251 | 251 | ||
252 | /* Configure card */ | ||
253 | link->state |= DEV_CONFIG; | ||
254 | |||
255 | CS_CHECK(RequestIO, pcmcia_request_io(link, &link->io)); | 252 | CS_CHECK(RequestIO, pcmcia_request_io(link, &link->io)); |
256 | CS_CHECK(RequestIRQ, pcmcia_request_irq(link, &link->irq)); | 253 | CS_CHECK(RequestIRQ, pcmcia_request_irq(link, &link->irq)); |
257 | CS_CHECK(RequestConfiguration, pcmcia_request_configuration(link, &link->conf)); | 254 | CS_CHECK(RequestConfiguration, pcmcia_request_configuration(link, &link->conf)); |
@@ -263,7 +260,6 @@ static int vxpocket_config(struct pcmcia_device *link) | |||
263 | goto failed; | 260 | goto failed; |
264 | 261 | ||
265 | link->dev_node = &vxp->node; | 262 | link->dev_node = &vxp->node; |
266 | link->state &= ~DEV_CONFIG_PENDING; | ||
267 | kfree(parse); | 263 | kfree(parse); |
268 | return 9; | 264 | return 9; |
269 | 265 | ||
@@ -348,7 +344,6 @@ static int vxpocket_probe(struct pcmcia_device *p_dev) | |||
348 | card_alloc |= 1 << i; | 344 | card_alloc |= 1 << i; |
349 | 345 | ||
350 | vxp->p_dev = p_dev; | 346 | vxp->p_dev = p_dev; |
351 | vxp->p_dev->state |= DEV_PRESENT | DEV_CONFIG_PENDING; | ||
352 | 347 | ||
353 | return vxpocket_config(p_dev); | 348 | return vxpocket_config(p_dev); |
354 | } | 349 | } |