#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
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;
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__);
}
}
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);