media: dvb-usb: nova-t-usb2: use an enum for the device number
authorMauro Carvalho Chehab <mchehab@kernel.org>
Mon, 28 Mar 2022 20:41:28 +0000 (22:41 +0200)
committerMauro Carvalho Chehab <mchehab@kernel.org>
Mon, 18 Apr 2022 05:36:44 +0000 (07:36 +0200)
The device number is currently a value that needs to be the same
on two separate tables, but the code doesn't actually enforce it,
leading to errors as boards get added or removed.

Fix it by using an enum.

Link: https://lore.kernel.org/linux-media/58f1a356b7b75bbefef3aa07cd99896c446df32f.1648499509.git.mchehab@kernel.org
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
drivers/media/usb/dvb-usb/nova-t-usb2.c
include/media/dvb-usb-ids.h

index 9c0eb0d..4782d07 100644 (file)
@@ -160,11 +160,17 @@ static int nova_t_probe(struct usb_interface *intf,
 }
 
 /* do not change the order of the ID table */
-static struct usb_device_id nova_t_table [] = {
-/* 00 */       { USB_DEVICE(USB_VID_HAUPPAUGE,     USB_PID_WINTV_NOVA_T_USB2_COLD) },
-/* 01 */       { USB_DEVICE(USB_VID_HAUPPAUGE,     USB_PID_WINTV_NOVA_T_USB2_WARM) },
-                       { }             /* Terminating entry */
+enum {
+       HAUPPAUGE_WINTV_NOVA_T_USB2_COLD,
+       HAUPPAUGE_WINTV_NOVA_T_USB2_WARM,
 };
+
+static struct usb_device_id nova_t_table[] = {
+       DVB_USB_DEV(HAUPPAUGE, HAUPPAUGE_WINTV_NOVA_T_USB2_COLD),
+       DVB_USB_DEV(HAUPPAUGE, HAUPPAUGE_WINTV_NOVA_T_USB2_WARM),
+       { }
+};
+
 MODULE_DEVICE_TABLE(usb, nova_t_table);
 
 static struct dvb_usb_device_properties nova_t_properties = {
@@ -221,8 +227,8 @@ static struct dvb_usb_device_properties nova_t_properties = {
        .num_device_descs = 1,
        .devices = {
                {   "Hauppauge WinTV-NOVA-T usb2",
-                       { &nova_t_table[0], NULL },
-                       { &nova_t_table[1], NULL },
+                       { &nova_t_table[HAUPPAUGE_WINTV_NOVA_T_USB2_COLD], NULL },
+                       { &nova_t_table[HAUPPAUGE_WINTV_NOVA_T_USB2_WARM], NULL },
                },
                { NULL },
        }
index 10d73c1..cc1df63 100644 (file)
 #define USB_PID_HAUPPAUGE_NOVA_T_STICK_3               0x7070
 #define USB_PID_HAUPPAUGE_TIGER_ATSC                   0xb200
 #define USB_PID_HAUPPAUGE_TIGER_ATSC_B210              0xb210
+#define USB_PID_HAUPPAUGE_WINTV_NOVA_T_USB2_COLD       0x9300
+#define USB_PID_HAUPPAUGE_WINTV_NOVA_T_USB2_WARM       0x9301
 #define USB_PID_INTEL_CE9500                           0x9500
 #define USB_PID_ITETECH_IT9135                         0x9135
 #define USB_PID_ITETECH_IT9135_9005                    0x9005
 #define USB_PID_WINFAST_DTV_DONGLE_STK7700P            0x6f00
 #define USB_PID_WINFAST_DTV_DONGLE_STK7700P_2          0x6f01
 #define USB_PID_WINFAST_DTV_DONGLE_WARM                0x6026
-#define USB_PID_WINTV_NOVA_T_USB2_COLD                 0x9300
-#define USB_PID_WINTV_NOVA_T_USB2_WARM                 0x9301
 #define USB_PID_WINTV_SOLOHD                           0x0264
 #define USB_PID_WINTV_SOLOHD_2                         0x8268
 #define USB_PID_XBOX_ONE_TUNER                         0x02d5