ALSA: line6: Pass driver name to line6_probe()
Provide a unique name for each driver instead of using "line6usb" for
all of them. This will allow for different configurations based on the
driver type.
Signed-off-by: Chris Rorvick <chris@rorvick.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
diff --git a/sound/usb/line6/driver.c b/sound/usb/line6/driver.c
index e2a2603..626b0c3 100644
--- a/sound/usb/line6/driver.c
+++ b/sound/usb/line6/driver.c
@@ -480,6 +480,7 @@
*/
int line6_probe(struct usb_interface *interface,
const struct usb_device_id *id,
+ const char *driver_name,
const struct line6_properties *properties,
int (*private_init)(struct usb_line6 *, const struct usb_device_id *id),
size_t data_size)
@@ -511,7 +512,7 @@
line6->ifcdev = &interface->dev;
strcpy(card->id, properties->id);
- strcpy(card->driver, DRIVER_NAME);
+ strcpy(card->driver, driver_name);
strcpy(card->shortname, properties->name);
sprintf(card->longname, "Line 6 %s at USB %s", properties->name,
dev_name(line6->ifcdev));
diff --git a/sound/usb/line6/driver.h b/sound/usb/line6/driver.h
index 2276b78..92a662a 100644
--- a/sound/usb/line6/driver.h
+++ b/sound/usb/line6/driver.h
@@ -18,8 +18,6 @@
#include "midi.h"
-#define DRIVER_NAME "line6usb"
-
#define USB_INTERVALS_PER_SECOND 1000
/* Fallback USB interval and max packet size values */
@@ -168,6 +166,7 @@
int line6_probe(struct usb_interface *interface,
const struct usb_device_id *id,
+ const char *driver_name,
const struct line6_properties *properties,
int (*private_init)(struct usb_line6 *, const struct usb_device_id *id),
size_t data_size);
diff --git a/sound/usb/line6/pod.c b/sound/usb/line6/pod.c
index feec707..09017bc 100644
--- a/sound/usb/line6/pod.c
+++ b/sound/usb/line6/pod.c
@@ -561,7 +561,7 @@
static int pod_probe(struct usb_interface *interface,
const struct usb_device_id *id)
{
- return line6_probe(interface, id,
+ return line6_probe(interface, id, "Line6-POD",
&pod_properties_table[id->driver_info],
pod_init, sizeof(struct usb_line6_pod));
}
diff --git a/sound/usb/line6/podhd.c b/sound/usb/line6/podhd.c
index 9c3c744..63dcaef 100644
--- a/sound/usb/line6/podhd.c
+++ b/sound/usb/line6/podhd.c
@@ -169,7 +169,7 @@
static int podhd_probe(struct usb_interface *interface,
const struct usb_device_id *id)
{
- return line6_probe(interface, id,
+ return line6_probe(interface, id, "Line6-PODHD",
&podhd_properties_table[id->driver_info],
podhd_init, sizeof(struct usb_line6));
}
diff --git a/sound/usb/line6/toneport.c b/sound/usb/line6/toneport.c
index 2420d2f..1a0a485 100644
--- a/sound/usb/line6/toneport.c
+++ b/sound/usb/line6/toneport.c
@@ -557,7 +557,7 @@
static int toneport_probe(struct usb_interface *interface,
const struct usb_device_id *id)
{
- return line6_probe(interface, id,
+ return line6_probe(interface, id, "Line6-TonePort",
&toneport_properties_table[id->driver_info],
toneport_init, sizeof(struct usb_line6_toneport));
}
diff --git a/sound/usb/line6/variax.c b/sound/usb/line6/variax.c
index b1c1de6..ddc23dd 100644
--- a/sound/usb/line6/variax.c
+++ b/sound/usb/line6/variax.c
@@ -283,7 +283,7 @@
static int variax_probe(struct usb_interface *interface,
const struct usb_device_id *id)
{
- return line6_probe(interface, id,
+ return line6_probe(interface, id, "Line6-Variax",
&variax_properties_table[id->driver_info],
variax_init, sizeof(struct usb_line6_variax));
}