Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 169116
b: refs/heads/master
c: 7c5af6f
h: refs/heads/master
v: v3
  • Loading branch information
Dominik Brodowski committed Nov 9, 2009
1 parent 2b2b295 commit c6a4ae9
Show file tree
Hide file tree
Showing 3 changed files with 25 additions and 19 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 9ec0bf41b5030ccc691049754ed1398cad5e953e
refs/heads/master: 7c5af6ffd69bb2bb3c86b374153627529d67598c
21 changes: 12 additions & 9 deletions trunk/sound/pcmcia/pdaudiocf/pdaudiocf.c
Original file line number Diff line number Diff line change
Expand Up @@ -217,29 +217,32 @@ static void snd_pdacf_detach(struct pcmcia_device *link)
* configuration callback
*/

#define CS_CHECK(fn, ret) \
do { last_fn = (fn); if ((last_ret = (ret)) != 0) goto cs_failed; } while (0)

static int pdacf_config(struct pcmcia_device *link)
{
struct snd_pdacf *pdacf = link->priv;
int last_fn, last_ret;
int ret;

snd_printdd(KERN_DEBUG "pdacf_config called\n");
link->conf.ConfigIndex = 0x5;

CS_CHECK(RequestIO, pcmcia_request_io(link, &link->io));
CS_CHECK(RequestIRQ, pcmcia_request_irq(link, &link->irq));
CS_CHECK(RequestConfiguration, pcmcia_request_configuration(link, &link->conf));
ret = pcmcia_request_io(link, &link->io);
if (ret)
goto failed;

ret = pcmcia_request_irq(link, &link->irq);
if (ret)
goto failed;

ret = pcmcia_request_configuration(link, &link->conf);
if (ret)
goto failed;

if (snd_pdacf_assign_resources(pdacf, link->io.BasePort1, link->irq.AssignedIRQ) < 0)
goto failed;

link->dev_node = &pdacf->node;
return 0;

cs_failed:
cs_error(link, last_fn, last_ret);
failed:
pcmcia_disable_device(link);
return -ENODEV;
Expand Down
21 changes: 12 additions & 9 deletions trunk/sound/pcmcia/vx/vxpocket.c
Original file line number Diff line number Diff line change
Expand Up @@ -213,14 +213,11 @@ static int snd_vxpocket_assign_resources(struct vx_core *chip, int port, int irq
* configuration callback
*/

#define CS_CHECK(fn, ret) \
do { last_fn = (fn); if ((last_ret = (ret)) != 0) goto cs_failed; } while (0)

static int vxpocket_config(struct pcmcia_device *link)
{
struct vx_core *chip = link->priv;
struct snd_vxpocket *vxp = (struct snd_vxpocket *)chip;
int last_fn, last_ret;
int ret;

snd_printdd(KERN_DEBUG "vxpocket_config called\n");

Expand All @@ -235,9 +232,17 @@ static int vxpocket_config(struct pcmcia_device *link)
strcpy(chip->card->driver, vxp440_hw.name);
}

CS_CHECK(RequestIO, pcmcia_request_io(link, &link->io));
CS_CHECK(RequestIRQ, pcmcia_request_irq(link, &link->irq));
CS_CHECK(RequestConfiguration, pcmcia_request_configuration(link, &link->conf));
ret = pcmcia_request_io(link, &link->io);
if (ret)
goto failed;

ret = pcmcia_request_irq(link, &link->irq);
if (ret)
goto failed;

ret = pcmcia_request_configuration(link, &link->conf);
if (ret)
goto failed;

chip->dev = &handle_to_dev(link);
snd_card_set_dev(chip->card, chip->dev);
Expand All @@ -248,8 +253,6 @@ static int vxpocket_config(struct pcmcia_device *link)
link->dev_node = &vxp->node;
return 0;

cs_failed:
cs_error(link, last_fn, last_ret);
failed:
pcmcia_disable_device(link);
return -ENODEV;
Expand Down

0 comments on commit c6a4ae9

Please sign in to comment.