summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/media/dvb/siano/smsusb.c27
1 files changed, 20 insertions, 7 deletions
diff --git a/drivers/media/dvb/siano/smsusb.c b/drivers/media/dvb/siano/smsusb.c
index 02528f12ecf0..ca9bb36544c0 100644
--- a/drivers/media/dvb/siano/smsusb.c
+++ b/drivers/media/dvb/siano/smsusb.c
@@ -32,6 +32,14 @@
#define MAX_BUFFERS 50
#define MAX_URBS 10
+/* TO DO: move these to a header file */
+#define USB_VID_SIANO 0x187f
+
+#define USB_PID_STELLAR 0x0100
+#define USB_PID_NOVA_A 0x0200
+#define USB_PID_NOVA_B 0x0201
+#define USB_PID_VEGA 0x0300
+
typedef struct _smsusb_device smsusb_device_t;
typedef struct _smsusb_urb
@@ -302,7 +310,8 @@ int smsusb_init_device(struct usb_interface *intf)
dev->udev = interface_to_usbdev(intf);
switch (dev->udev->descriptor.idProduct) {
- case 0x100:
+
+ case USB_PID_STELLAR:
dev->buffer_size = USB1_BUFFER_SIZE;
params.setmode_handler = smsusb1_setmode;
@@ -311,13 +320,17 @@ int smsusb_init_device(struct usb_interface *intf)
printk(KERN_INFO "%s stellar device found\n", __func__ );
break;
default:
- if (dev->udev->descriptor.idProduct == 0x200) {
+ switch (dev->udev->descriptor.idProduct) {
+ case USB_PID_NOVA_A:
params.device_type = SMS_NOVA_A0;
printk(KERN_INFO "%s nova A0 found\n", __func__ );
- } else if (dev->udev->descriptor.idProduct == 0x201) {
+ break;
+ default:
+ case USB_PID_NOVA_B:
params.device_type = SMS_NOVA_B0;
printk(KERN_INFO "%s nova B0 found\n", __func__);
- } else {
+ break;
+ case USB_PID_VEGA:
params.device_type = SMS_VEGA;
printk(KERN_INFO "%s Vega found\n", __func__);
}
@@ -421,9 +434,9 @@ void smsusb_disconnect(struct usb_interface *intf)
}
static struct usb_device_id smsusb_id_table [] = {
- { USB_DEVICE(0x187F, 0x0010) },
- { USB_DEVICE(0x187F, 0x0100) },
- { USB_DEVICE(0x187F, 0x0200) },
+ { USB_DEVICE(USB_VID_SIANO, 0x0010) },
+ { USB_DEVICE(USB_VID_SIANO, USB_PID_STELLAR) },
+ { USB_DEVICE(USB_VID_SIANO, USB_PID_NOVA_A) },
{ } /* Terminating entry */
};
MODULE_DEVICE_TABLE (usb, smsusb_id_table);
OpenPOWER on IntegriCloud