]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/commitdiff
Merge branch 'topic/isa-misc' into for-linus
authorTakashi Iwai <tiwai@suse.de>
Mon, 23 Mar 2009 23:36:13 +0000 (00:36 +0100)
committerTakashi Iwai <tiwai@suse.de>
Mon, 23 Mar 2009 23:36:13 +0000 (00:36 +0100)
1  2 
sound/isa/opl3sa2.c

diff --combined sound/isa/opl3sa2.c
index 9c5fce31f06bdb2e61d9b8ce8fcdacba0bbe6f26,3f0b877bc8b585abe170303922a792481184c13f..ef95279da7a3a47a7bcfe5b21674e6c0f063ce7d
@@@ -623,28 -623,25 +623,28 @@@ static void snd_opl3sa2_free(struct snd
  {
        struct snd_opl3sa2 *chip = card->private_data;
        if (chip->irq >= 0)
-               free_irq(chip->irq, (void *)chip);
+               free_irq(chip->irq, card);
        release_and_free_resource(chip->res_port);
  }
  
 -static struct snd_card *snd_opl3sa2_card_new(int dev)
 +static int snd_opl3sa2_card_new(int dev, struct snd_card **cardp)
  {
        struct snd_card *card;
        struct snd_opl3sa2 *chip;
 +      int err;
  
 -      card = snd_card_new(index[dev], id[dev], THIS_MODULE, sizeof(struct snd_opl3sa2));
 -      if (card == NULL)
 -              return NULL;
 +      err = snd_card_create(index[dev], id[dev], THIS_MODULE,
 +                            sizeof(struct snd_opl3sa2), &card);
 +      if (err < 0)
 +              return err;
        strcpy(card->driver, "OPL3SA2");
-       strcpy(card->shortname, "Yamaha OPL3-SA2");
+       strcpy(card->shortname, "Yamaha OPL3-SA");
        chip = card->private_data;
        spin_lock_init(&chip->reg_lock);
        chip->irq = -1;
        card->private_free = snd_opl3sa2_free;
 -      return card;
 +      *cardp = card;
 +      return 0;
  }
  
  static int __devinit snd_opl3sa2_probe(struct snd_card *card, int dev)
@@@ -736,9 -733,9 +736,9 @@@ static int __devinit snd_opl3sa2_pnp_de
        if (dev >= SNDRV_CARDS)
                return -ENODEV;
  
 -      card = snd_opl3sa2_card_new(dev);
 -      if (! card)
 -              return -ENOMEM;
 +      err = snd_opl3sa2_card_new(dev, &card);
 +      if (err < 0)
 +              return err;
        if ((err = snd_opl3sa2_pnp(dev, card->private_data, pdev)) < 0) {
                snd_card_free(card);
                return err;
@@@ -802,9 -799,9 +802,9 @@@ static int __devinit snd_opl3sa2_pnp_cd
        if (dev >= SNDRV_CARDS)
                return -ENODEV;
  
 -      card = snd_opl3sa2_card_new(dev);
 -      if (! card)
 -              return -ENOMEM;
 +      err = snd_opl3sa2_card_new(dev, &card);
 +      if (err < 0)
 +              return err;
        if ((err = snd_opl3sa2_pnp(dev, card->private_data, pdev)) < 0) {
                snd_card_free(card);
                return err;
@@@ -883,9 -880,9 +883,9 @@@ static int __devinit snd_opl3sa2_isa_pr
        struct snd_card *card;
        int err;
  
 -      card = snd_opl3sa2_card_new(dev);
 -      if (! card)
 -              return -ENOMEM;
 +      err = snd_opl3sa2_card_new(dev, &card);
 +      if (err < 0)
 +              return err;
        snd_card_set_dev(card, pdev);
        if ((err = snd_opl3sa2_probe(card, dev)) < 0) {
                snd_card_free(card);