[ALSA] ac97 - make ac97 codec device name unique
authorBjorge Dijkstra <bjorge@gmx.net>
Tue, 16 Aug 2005 15:05:05 +0000 (17:05 +0200)
committerJaroslav Kysela <perex@suse.cz>
Tue, 30 Aug 2005 06:46:34 +0000 (08:46 +0200)
AC97 Codec
The patch fixes the bus_id conflict error when registering two codecs
of the same type (ALSA bug#1334).

Signed-off-by: Bjorge Dijkstra <bjorge@gmx.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/ac97/ac97_codec.c

index 600e053dfd357392393f4d2704a0d7ca184faf2a..5501f4440c9223439f476788ecfe6211052d948b 100644 (file)
@@ -1829,7 +1829,7 @@ static int snd_ac97_dev_register(snd_device_t *device)
        ac97->dev.parent = ac97->bus->card->dev;
        ac97->dev.platform_data = ac97;
        ac97->dev.release = ac97_device_release;
-       strncpy(ac97->dev.bus_id, snd_ac97_get_short_name(ac97), BUS_ID_SIZE);
+       snprintf(ac97->dev.bus_id, BUS_ID_SIZE, "card%d-%d", ac97->bus->card->number, ac97->num);
        if ((err = device_register(&ac97->dev)) < 0) {
                snd_printk(KERN_ERR "Can't register ac97 bus\n");
                ac97->dev.bus = NULL;