]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - sound/isa/cmi8330.c
Merge tag 'armsoc-dt64' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
[karo-tx-linux.git] / sound / isa / cmi8330.c
index 270b9659ef7f703790a65531fc0205ddfead3c3a..dfedfd85f205460095ad09b1f0086c8f25925ea9 100644 (file)
@@ -514,14 +514,15 @@ static int snd_cmi8330_resume(struct snd_card *card)
 
 #define PFX    "cmi8330: "
 
-static int snd_cmi8330_card_new(int dev, struct snd_card **cardp)
+static int snd_cmi8330_card_new(struct device *pdev, int dev,
+                               struct snd_card **cardp)
 {
        struct snd_card *card;
        struct snd_cmi8330 *acard;
        int err;
 
-       err = snd_card_create(index[dev], id[dev], THIS_MODULE,
-                             sizeof(struct snd_cmi8330), &card);
+       err = snd_card_new(pdev, index[dev], id[dev], THIS_MODULE,
+                          sizeof(struct snd_cmi8330), &card);
        if (err < 0) {
                snd_printk(KERN_ERR PFX "could not get a new card\n");
                return err;
@@ -635,10 +636,9 @@ static int snd_cmi8330_isa_probe(struct device *pdev,
        struct snd_card *card;
        int err;
 
-       err = snd_cmi8330_card_new(dev, &card);
+       err = snd_cmi8330_card_new(pdev, dev, &card);
        if (err < 0)
                return err;
-       snd_card_set_dev(card, pdev);
        if ((err = snd_cmi8330_probe(card, dev)) < 0) {
                snd_card_free(card);
                return err;
@@ -698,7 +698,7 @@ static int snd_cmi8330_pnp_detect(struct pnp_card_link *pcard,
        if (dev >= SNDRV_CARDS)
                return -ENODEV;
                               
-       res = snd_cmi8330_card_new(dev, &card);
+       res = snd_cmi8330_card_new(&pcard->card->dev, dev, &card);
        if (res < 0)
                return res;
        if ((res = snd_cmi8330_pnp(dev, card->private_data, pcard, pid)) < 0) {
@@ -706,7 +706,6 @@ static int snd_cmi8330_pnp_detect(struct pnp_card_link *pcard,
                snd_card_free(card);
                return res;
        }
-       snd_card_set_dev(card, &pcard->card->dev);
        if ((res = snd_cmi8330_probe(card, dev)) < 0) {
                snd_card_free(card);
                return res;