aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJonathan Nieder <jrnieder@gmail.com>2012-01-07 02:11:27 -0500
committerMauro Carvalho Chehab <mchehab@redhat.com>2012-01-10 19:46:14 -0500
commitd07b901f9dc22977c2c04f320a9cef19e5298e7e (patch)
tree0f63c671c433658d8c4c7d77ae8ce5c99b92afc1
parent7a6f6c29d264cdd2fe0eb3d923217eed5f0ad134 (diff)
[media] af9005, af9015: use symbolic names for USB id table indices
The af9005_properties and af9015_properties tables make use of USB ids from the USB id tables with hardcoded indices, as in "&af9015_usb_table[30]". Adding new entries before the end breaks such references, so everyone has had to carefully tiptoe to only add entries at the end of the list. In the spirit of "dw2102: use symbolic names for dw2102_table indices", use C99-style initializers with symbolic names for each index to avoid this. In the new regime, properties tables referring to the USB ids have names like "&af9015_usb_table[CINERGY_T_STICK_RC]" that do not change meaning when items in the USB id table are reordered. Encouraged-by: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Acked-by: Luca Olivetti <luca@ventoso.org> Acked-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r--drivers/media/dvb/dvb-usb/af9005.c23
-rw-r--r--drivers/media/dvb/dvb-usb/af9015.c316
2 files changed, 252 insertions, 87 deletions
diff --git a/drivers/media/dvb/dvb-usb/af9005.c b/drivers/media/dvb/dvb-usb/af9005.c
index bd51a764351b..5d5e32f4e99d 100644
--- a/drivers/media/dvb/dvb-usb/af9005.c
+++ b/drivers/media/dvb/dvb-usb/af9005.c
@@ -977,11 +977,20 @@ static int af9005_usb_probe(struct usb_interface *intf,
977 THIS_MODULE, NULL, adapter_nr); 977 THIS_MODULE, NULL, adapter_nr);
978} 978}
979 979
980enum af9005_usb_table_entry {
981 AFATECH_AF9005,
982 TERRATEC_AF9005,
983 ANSONIC_AF9005,
984};
985
980static struct usb_device_id af9005_usb_table[] = { 986static struct usb_device_id af9005_usb_table[] = {
981 {USB_DEVICE(USB_VID_AFATECH, USB_PID_AFATECH_AF9005)}, 987 [AFATECH_AF9005] = {USB_DEVICE(USB_VID_AFATECH,
982 {USB_DEVICE(USB_VID_TERRATEC, USB_PID_TERRATEC_CINERGY_T_USB_XE)}, 988 USB_PID_AFATECH_AF9005)},
983 {USB_DEVICE(USB_VID_ANSONIC, USB_PID_ANSONIC_DVBT_USB)}, 989 [TERRATEC_AF9005] = {USB_DEVICE(USB_VID_TERRATEC,
984 {0}, 990 USB_PID_TERRATEC_CINERGY_T_USB_XE)},
991 [ANSONIC_AF9005] = {USB_DEVICE(USB_VID_ANSONIC,
992 USB_PID_ANSONIC_DVBT_USB)},
993 { }
985}; 994};
986 995
987MODULE_DEVICE_TABLE(usb, af9005_usb_table); 996MODULE_DEVICE_TABLE(usb, af9005_usb_table);
@@ -1041,15 +1050,15 @@ static struct dvb_usb_device_properties af9005_properties = {
1041 .num_device_descs = 3, 1050 .num_device_descs = 3,
1042 .devices = { 1051 .devices = {
1043 {.name = "Afatech DVB-T USB1.1 stick", 1052 {.name = "Afatech DVB-T USB1.1 stick",
1044 .cold_ids = {&af9005_usb_table[0], NULL}, 1053 .cold_ids = {&af9005_usb_table[AFATECH_AF9005], NULL},
1045 .warm_ids = {NULL}, 1054 .warm_ids = {NULL},
1046 }, 1055 },
1047 {.name = "TerraTec Cinergy T USB XE", 1056 {.name = "TerraTec Cinergy T USB XE",
1048 .cold_ids = {&af9005_usb_table[1], NULL}, 1057 .cold_ids = {&af9005_usb_table[TERRATEC_AF9005], NULL},
1049 .warm_ids = {NULL}, 1058 .warm_ids = {NULL},
1050 }, 1059 },
1051 {.name = "Ansonic DVB-T USB1.1 stick", 1060 {.name = "Ansonic DVB-T USB1.1 stick",
1052 .cold_ids = {&af9005_usb_table[2], NULL}, 1061 .cold_ids = {&af9005_usb_table[ANSONIC_AF9005], NULL},
1053 .warm_ids = {NULL}, 1062 .warm_ids = {NULL},
1054 }, 1063 },
1055 {NULL}, 1064 {NULL},
diff --git a/drivers/media/dvb/dvb-usb/af9015.c b/drivers/media/dvb/dvb-usb/af9015.c
index 7959053d54ed..e755d7637c22 100644
--- a/drivers/media/dvb/dvb-usb/af9015.c
+++ b/drivers/media/dvb/dvb-usb/af9015.c
@@ -1343,49 +1343,112 @@ static int af9015_tuner_attach(struct dvb_usb_adapter *adap)
1343 return ret; 1343 return ret;
1344} 1344}
1345 1345
1346enum af9015_usb_table_entry {
1347 AFATECH_9015,
1348 AFATECH_9016,
1349 WINFAST_DTV_GOLD,
1350 PINNACLE_PCTV_71E,
1351 KWORLD_PLUSTV_399U,
1352 TINYTWIN,
1353 AZUREWAVE_TU700,
1354 TERRATEC_AF9015,
1355 KWORLD_PLUSTV_PC160,
1356 AVERTV_VOLAR_X,
1357 XTENSIONS_380U,
1358 MSI_DIGIVOX_DUO,
1359 AVERTV_VOLAR_X_REV2,
1360 TELESTAR_STARSTICK_2,
1361 AVERMEDIA_A309_USB,
1362 MSI_DIGIVOX_MINI_III,
1363 KWORLD_E396,
1364 KWORLD_E39B,
1365 KWORLD_E395,
1366 TREKSTOR_DVBT,
1367 AVERTV_A850,
1368 AVERTV_A805,
1369 CONCEPTRONIC_CTVDIGRCU,
1370 KWORLD_MC810,
1371 GENIUS_TVGO_DVB_T03,
1372 KWORLD_399U_2,
1373 KWORLD_PC160_T,
1374 SVEON_STV20,
1375 TINYTWIN_2,
1376 WINFAST_DTV2000DS,
1377 KWORLD_UB383_T,
1378 KWORLD_E39A,
1379 AVERMEDIA_A815M,
1380 CINERGY_T_STICK_RC,
1381 CINERGY_T_DUAL_RC,
1382 AVERTV_A850T,
1383 TINYTWIN_3,
1384 SVEON_STV22,
1385};
1386
1346static struct usb_device_id af9015_usb_table[] = { 1387static struct usb_device_id af9015_usb_table[] = {
1347/* 0 */{USB_DEVICE(USB_VID_AFATECH, USB_PID_AFATECH_AF9015_9015)}, 1388 [AFATECH_9015] =
1348 {USB_DEVICE(USB_VID_AFATECH, USB_PID_AFATECH_AF9015_9016)}, 1389 {USB_DEVICE(USB_VID_AFATECH, USB_PID_AFATECH_AF9015_9015)},
1349 {USB_DEVICE(USB_VID_LEADTEK, USB_PID_WINFAST_DTV_DONGLE_GOLD)}, 1390 [AFATECH_9016] =
1350 {USB_DEVICE(USB_VID_PINNACLE, USB_PID_PINNACLE_PCTV71E)}, 1391 {USB_DEVICE(USB_VID_AFATECH, USB_PID_AFATECH_AF9015_9016)},
1351 {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_KWORLD_399U)}, 1392 [WINFAST_DTV_GOLD] =
1352/* 5 */{USB_DEVICE(USB_VID_VISIONPLUS, 1393 {USB_DEVICE(USB_VID_LEADTEK, USB_PID_WINFAST_DTV_DONGLE_GOLD)},
1353 USB_PID_TINYTWIN)}, 1394 [PINNACLE_PCTV_71E] =
1354 {USB_DEVICE(USB_VID_VISIONPLUS, 1395 {USB_DEVICE(USB_VID_PINNACLE, USB_PID_PINNACLE_PCTV71E)},
1355 USB_PID_AZUREWAVE_AD_TU700)}, 1396 [KWORLD_PLUSTV_399U] =
1356 {USB_DEVICE(USB_VID_TERRATEC, USB_PID_TERRATEC_CINERGY_T_USB_XE_REV2)}, 1397 {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_KWORLD_399U)},
1357 {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_KWORLD_PC160_2T)}, 1398 [TINYTWIN] = {USB_DEVICE(USB_VID_VISIONPLUS, USB_PID_TINYTWIN)},
1358 {USB_DEVICE(USB_VID_AVERMEDIA, USB_PID_AVERMEDIA_VOLAR_X)}, 1399 [AZUREWAVE_TU700] =
1359/* 10 */{USB_DEVICE(USB_VID_XTENSIONS, USB_PID_XTENSIONS_XD_380)}, 1400 {USB_DEVICE(USB_VID_VISIONPLUS, USB_PID_AZUREWAVE_AD_TU700)},
1360 {USB_DEVICE(USB_VID_MSI_2, USB_PID_MSI_DIGIVOX_DUO)}, 1401 [TERRATEC_AF9015] = {USB_DEVICE(USB_VID_TERRATEC,
1361 {USB_DEVICE(USB_VID_AVERMEDIA, USB_PID_AVERMEDIA_VOLAR_X_2)}, 1402 USB_PID_TERRATEC_CINERGY_T_USB_XE_REV2)},
1362 {USB_DEVICE(USB_VID_TELESTAR, USB_PID_TELESTAR_STARSTICK_2)}, 1403 [KWORLD_PLUSTV_PC160] =
1363 {USB_DEVICE(USB_VID_AVERMEDIA, USB_PID_AVERMEDIA_A309)}, 1404 {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_KWORLD_PC160_2T)},
1364/* 15 */{USB_DEVICE(USB_VID_MSI_2, USB_PID_MSI_DIGI_VOX_MINI_III)}, 1405 [AVERTV_VOLAR_X] =
1365 {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_KWORLD_395U)}, 1406 {USB_DEVICE(USB_VID_AVERMEDIA, USB_PID_AVERMEDIA_VOLAR_X)},
1366 {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_KWORLD_395U_2)}, 1407 [XTENSIONS_380U] =
1367 {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_KWORLD_395U_3)}, 1408 {USB_DEVICE(USB_VID_XTENSIONS, USB_PID_XTENSIONS_XD_380)},
1368 {USB_DEVICE(USB_VID_AFATECH, USB_PID_TREKSTOR_DVBT)}, 1409 [MSI_DIGIVOX_DUO] =
1369/* 20 */{USB_DEVICE(USB_VID_AVERMEDIA, USB_PID_AVERMEDIA_A850)}, 1410 {USB_DEVICE(USB_VID_MSI_2, USB_PID_MSI_DIGIVOX_DUO)},
1370 {USB_DEVICE(USB_VID_AVERMEDIA, USB_PID_AVERMEDIA_A805)}, 1411 [AVERTV_VOLAR_X_REV2] =
1371 {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_CONCEPTRONIC_CTVDIGRCU)}, 1412 {USB_DEVICE(USB_VID_AVERMEDIA, USB_PID_AVERMEDIA_VOLAR_X_2)},
1372 {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_KWORLD_MC810)}, 1413 [TELESTAR_STARSTICK_2] =
1373 {USB_DEVICE(USB_VID_KYE, USB_PID_GENIUS_TVGO_DVB_T03)}, 1414 {USB_DEVICE(USB_VID_TELESTAR, USB_PID_TELESTAR_STARSTICK_2)},
1374/* 25 */{USB_DEVICE(USB_VID_KWORLD_2, USB_PID_KWORLD_399U_2)}, 1415 [AVERMEDIA_A309_USB] =
1375 {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_KWORLD_PC160_T)}, 1416 {USB_DEVICE(USB_VID_AVERMEDIA, USB_PID_AVERMEDIA_A309)},
1376 {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_SVEON_STV20)}, 1417 [MSI_DIGIVOX_MINI_III] =
1377 {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_TINYTWIN_2)}, 1418 {USB_DEVICE(USB_VID_MSI_2, USB_PID_MSI_DIGI_VOX_MINI_III)},
1378 {USB_DEVICE(USB_VID_LEADTEK, USB_PID_WINFAST_DTV2000DS)}, 1419 [KWORLD_E396] = {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_KWORLD_395U)},
1379/* 30 */{USB_DEVICE(USB_VID_KWORLD_2, USB_PID_KWORLD_UB383_T)}, 1420 [KWORLD_E39B] = {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_KWORLD_395U_2)},
1380 {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_KWORLD_395U_4)}, 1421 [KWORLD_E395] = {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_KWORLD_395U_3)},
1381 {USB_DEVICE(USB_VID_AVERMEDIA, USB_PID_AVERMEDIA_A815M)}, 1422 [TREKSTOR_DVBT] = {USB_DEVICE(USB_VID_AFATECH, USB_PID_TREKSTOR_DVBT)},
1382 {USB_DEVICE(USB_VID_TERRATEC, USB_PID_TERRATEC_CINERGY_T_STICK_RC)}, 1423 [AVERTV_A850] = {USB_DEVICE(USB_VID_AVERMEDIA, USB_PID_AVERMEDIA_A850)},
1383 {USB_DEVICE(USB_VID_TERRATEC, 1424 [AVERTV_A805] = {USB_DEVICE(USB_VID_AVERMEDIA, USB_PID_AVERMEDIA_A805)},
1384 USB_PID_TERRATEC_CINERGY_T_STICK_DUAL_RC)}, 1425 [CONCEPTRONIC_CTVDIGRCU] =
1385/* 35 */{USB_DEVICE(USB_VID_AVERMEDIA, USB_PID_AVERMEDIA_A850T)}, 1426 {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_CONCEPTRONIC_CTVDIGRCU)},
1386 {USB_DEVICE(USB_VID_GTEK, USB_PID_TINYTWIN_3)}, 1427 [KWORLD_MC810] = {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_KWORLD_MC810)},
1387 {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_SVEON_STV22)}, 1428 [GENIUS_TVGO_DVB_T03] =
1388 {0}, 1429 {USB_DEVICE(USB_VID_KYE, USB_PID_GENIUS_TVGO_DVB_T03)},
1430 [KWORLD_399U_2] = {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_KWORLD_399U_2)},
1431 [KWORLD_PC160_T] =
1432 {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_KWORLD_PC160_T)},
1433 [SVEON_STV20] = {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_SVEON_STV20)},
1434 [TINYTWIN_2] = {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_TINYTWIN_2)},
1435 [WINFAST_DTV2000DS] =
1436 {USB_DEVICE(USB_VID_LEADTEK, USB_PID_WINFAST_DTV2000DS)},
1437 [KWORLD_UB383_T] =
1438 {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_KWORLD_UB383_T)},
1439 [KWORLD_E39A] =
1440 {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_KWORLD_395U_4)},
1441 [AVERMEDIA_A815M] =
1442 {USB_DEVICE(USB_VID_AVERMEDIA, USB_PID_AVERMEDIA_A815M)},
1443 [CINERGY_T_STICK_RC] = {USB_DEVICE(USB_VID_TERRATEC,
1444 USB_PID_TERRATEC_CINERGY_T_STICK_RC)},
1445 [CINERGY_T_DUAL_RC] = {USB_DEVICE(USB_VID_TERRATEC,
1446 USB_PID_TERRATEC_CINERGY_T_STICK_DUAL_RC)},
1447 [AVERTV_A850T] =
1448 {USB_DEVICE(USB_VID_AVERMEDIA, USB_PID_AVERMEDIA_A850T)},
1449 [TINYTWIN_3] = {USB_DEVICE(USB_VID_GTEK, USB_PID_TINYTWIN_3)},
1450 [SVEON_STV22] = {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_SVEON_STV22)},
1451 { }
1389}; 1452};
1390MODULE_DEVICE_TABLE(usb, af9015_usb_table); 1453MODULE_DEVICE_TABLE(usb, af9015_usb_table);
1391 1454
@@ -1460,68 +1523,104 @@ static struct dvb_usb_device_properties af9015_properties[] = {
1460 .devices = { 1523 .devices = {
1461 { 1524 {
1462 .name = "Afatech AF9015 DVB-T USB2.0 stick", 1525 .name = "Afatech AF9015 DVB-T USB2.0 stick",
1463 .cold_ids = {&af9015_usb_table[0], 1526 .cold_ids = {
1464 &af9015_usb_table[1], NULL}, 1527 &af9015_usb_table[AFATECH_9015],
1528 &af9015_usb_table[AFATECH_9016],
1529 NULL
1530 },
1465 .warm_ids = {NULL}, 1531 .warm_ids = {NULL},
1466 }, 1532 },
1467 { 1533 {
1468 .name = "Leadtek WinFast DTV Dongle Gold", 1534 .name = "Leadtek WinFast DTV Dongle Gold",
1469 .cold_ids = {&af9015_usb_table[2], NULL}, 1535 .cold_ids = {
1536 &af9015_usb_table[WINFAST_DTV_GOLD],
1537 NULL
1538 },
1470 .warm_ids = {NULL}, 1539 .warm_ids = {NULL},
1471 }, 1540 },
1472 { 1541 {
1473 .name = "Pinnacle PCTV 71e", 1542 .name = "Pinnacle PCTV 71e",
1474 .cold_ids = {&af9015_usb_table[3], NULL}, 1543 .cold_ids = {
1544 &af9015_usb_table[PINNACLE_PCTV_71E],
1545 NULL
1546 },
1475 .warm_ids = {NULL}, 1547 .warm_ids = {NULL},
1476 }, 1548 },
1477 { 1549 {
1478 .name = "KWorld PlusTV Dual DVB-T Stick " \ 1550 .name = "KWorld PlusTV Dual DVB-T Stick " \
1479 "(DVB-T 399U)", 1551 "(DVB-T 399U)",
1480 .cold_ids = {&af9015_usb_table[4], 1552 .cold_ids = {
1481 &af9015_usb_table[25], NULL}, 1553 &af9015_usb_table[KWORLD_PLUSTV_399U],
1554 &af9015_usb_table[KWORLD_399U_2],
1555 NULL
1556 },
1482 .warm_ids = {NULL}, 1557 .warm_ids = {NULL},
1483 }, 1558 },
1484 { 1559 {
1485 .name = "DigitalNow TinyTwin DVB-T Receiver", 1560 .name = "DigitalNow TinyTwin DVB-T Receiver",
1486 .cold_ids = {&af9015_usb_table[5], 1561 .cold_ids = {
1487 &af9015_usb_table[28], 1562 &af9015_usb_table[TINYTWIN],
1488 &af9015_usb_table[36], NULL}, 1563 &af9015_usb_table[TINYTWIN_2],
1564 &af9015_usb_table[TINYTWIN_3],
1565 NULL
1566 },
1489 .warm_ids = {NULL}, 1567 .warm_ids = {NULL},
1490 }, 1568 },
1491 { 1569 {
1492 .name = "TwinHan AzureWave AD-TU700(704J)", 1570 .name = "TwinHan AzureWave AD-TU700(704J)",
1493 .cold_ids = {&af9015_usb_table[6], NULL}, 1571 .cold_ids = {
1572 &af9015_usb_table[AZUREWAVE_TU700],
1573 NULL
1574 },
1494 .warm_ids = {NULL}, 1575 .warm_ids = {NULL},
1495 }, 1576 },
1496 { 1577 {
1497 .name = "TerraTec Cinergy T USB XE", 1578 .name = "TerraTec Cinergy T USB XE",
1498 .cold_ids = {&af9015_usb_table[7], NULL}, 1579 .cold_ids = {
1580 &af9015_usb_table[TERRATEC_AF9015],
1581 NULL
1582 },
1499 .warm_ids = {NULL}, 1583 .warm_ids = {NULL},
1500 }, 1584 },
1501 { 1585 {
1502 .name = "KWorld PlusTV Dual DVB-T PCI " \ 1586 .name = "KWorld PlusTV Dual DVB-T PCI " \
1503 "(DVB-T PC160-2T)", 1587 "(DVB-T PC160-2T)",
1504 .cold_ids = {&af9015_usb_table[8], NULL}, 1588 .cold_ids = {
1589 &af9015_usb_table[KWORLD_PLUSTV_PC160],
1590 NULL
1591 },
1505 .warm_ids = {NULL}, 1592 .warm_ids = {NULL},
1506 }, 1593 },
1507 { 1594 {
1508 .name = "AVerMedia AVerTV DVB-T Volar X", 1595 .name = "AVerMedia AVerTV DVB-T Volar X",
1509 .cold_ids = {&af9015_usb_table[9], NULL}, 1596 .cold_ids = {
1597 &af9015_usb_table[AVERTV_VOLAR_X],
1598 NULL
1599 },
1510 .warm_ids = {NULL}, 1600 .warm_ids = {NULL},
1511 }, 1601 },
1512 { 1602 {
1513 .name = "TerraTec Cinergy T Stick RC", 1603 .name = "TerraTec Cinergy T Stick RC",
1514 .cold_ids = {&af9015_usb_table[33], NULL}, 1604 .cold_ids = {
1605 &af9015_usb_table[CINERGY_T_STICK_RC],
1606 NULL
1607 },
1515 .warm_ids = {NULL}, 1608 .warm_ids = {NULL},
1516 }, 1609 },
1517 { 1610 {
1518 .name = "TerraTec Cinergy T Stick Dual RC", 1611 .name = "TerraTec Cinergy T Stick Dual RC",
1519 .cold_ids = {&af9015_usb_table[34], NULL}, 1612 .cold_ids = {
1613 &af9015_usb_table[CINERGY_T_DUAL_RC],
1614 NULL
1615 },
1520 .warm_ids = {NULL}, 1616 .warm_ids = {NULL},
1521 }, 1617 },
1522 { 1618 {
1523 .name = "AverMedia AVerTV Red HD+ (A850T)", 1619 .name = "AverMedia AVerTV Red HD+ (A850T)",
1524 .cold_ids = {&af9015_usb_table[35], NULL}, 1620 .cold_ids = {
1621 &af9015_usb_table[AVERTV_A850T],
1622 NULL
1623 },
1525 .warm_ids = {NULL}, 1624 .warm_ids = {NULL},
1526 }, 1625 },
1527 } 1626 }
@@ -1594,57 +1693,87 @@ static struct dvb_usb_device_properties af9015_properties[] = {
1594 .devices = { 1693 .devices = {
1595 { 1694 {
1596 .name = "Xtensions XD-380", 1695 .name = "Xtensions XD-380",
1597 .cold_ids = {&af9015_usb_table[10], NULL}, 1696 .cold_ids = {
1697 &af9015_usb_table[XTENSIONS_380U],
1698 NULL
1699 },
1598 .warm_ids = {NULL}, 1700 .warm_ids = {NULL},
1599 }, 1701 },
1600 { 1702 {
1601 .name = "MSI DIGIVOX Duo", 1703 .name = "MSI DIGIVOX Duo",
1602 .cold_ids = {&af9015_usb_table[11], NULL}, 1704 .cold_ids = {
1705 &af9015_usb_table[MSI_DIGIVOX_DUO],
1706 NULL
1707 },
1603 .warm_ids = {NULL}, 1708 .warm_ids = {NULL},
1604 }, 1709 },
1605 { 1710 {
1606 .name = "Fujitsu-Siemens Slim Mobile USB DVB-T", 1711 .name = "Fujitsu-Siemens Slim Mobile USB DVB-T",
1607 .cold_ids = {&af9015_usb_table[12], NULL}, 1712 .cold_ids = {
1713 &af9015_usb_table[AVERTV_VOLAR_X_REV2],
1714 NULL
1715 },
1608 .warm_ids = {NULL}, 1716 .warm_ids = {NULL},
1609 }, 1717 },
1610 { 1718 {
1611 .name = "Telestar Starstick 2", 1719 .name = "Telestar Starstick 2",
1612 .cold_ids = {&af9015_usb_table[13], NULL}, 1720 .cold_ids = {
1721 &af9015_usb_table[TELESTAR_STARSTICK_2],
1722 NULL
1723 },
1613 .warm_ids = {NULL}, 1724 .warm_ids = {NULL},
1614 }, 1725 },
1615 { 1726 {
1616 .name = "AVerMedia A309", 1727 .name = "AVerMedia A309",
1617 .cold_ids = {&af9015_usb_table[14], NULL}, 1728 .cold_ids = {
1729 &af9015_usb_table[AVERMEDIA_A309_USB],
1730 NULL
1731 },
1618 .warm_ids = {NULL}, 1732 .warm_ids = {NULL},
1619 }, 1733 },
1620 { 1734 {
1621 .name = "MSI Digi VOX mini III", 1735 .name = "MSI Digi VOX mini III",
1622 .cold_ids = {&af9015_usb_table[15], NULL}, 1736 .cold_ids = {
1737 &af9015_usb_table[MSI_DIGIVOX_MINI_III],
1738 NULL
1739 },
1623 .warm_ids = {NULL}, 1740 .warm_ids = {NULL},
1624 }, 1741 },
1625 { 1742 {
1626 .name = "KWorld USB DVB-T TV Stick II " \ 1743 .name = "KWorld USB DVB-T TV Stick II " \
1627 "(VS-DVB-T 395U)", 1744 "(VS-DVB-T 395U)",
1628 .cold_ids = {&af9015_usb_table[16], 1745 .cold_ids = {
1629 &af9015_usb_table[17], 1746 &af9015_usb_table[KWORLD_E396],
1630 &af9015_usb_table[18], 1747 &af9015_usb_table[KWORLD_E39B],
1631 &af9015_usb_table[31], NULL}, 1748 &af9015_usb_table[KWORLD_E395],
1749 &af9015_usb_table[KWORLD_E39A],
1750 NULL
1751 },
1632 .warm_ids = {NULL}, 1752 .warm_ids = {NULL},
1633 }, 1753 },
1634 { 1754 {
1635 .name = "TrekStor DVB-T USB Stick", 1755 .name = "TrekStor DVB-T USB Stick",
1636 .cold_ids = {&af9015_usb_table[19], NULL}, 1756 .cold_ids = {
1757 &af9015_usb_table[TREKSTOR_DVBT],
1758 NULL
1759 },
1637 .warm_ids = {NULL}, 1760 .warm_ids = {NULL},
1638 }, 1761 },
1639 { 1762 {
1640 .name = "AverMedia AVerTV Volar Black HD " \ 1763 .name = "AverMedia AVerTV Volar Black HD " \
1641 "(A850)", 1764 "(A850)",
1642 .cold_ids = {&af9015_usb_table[20], NULL}, 1765 .cold_ids = {
1766 &af9015_usb_table[AVERTV_A850],
1767 NULL
1768 },
1643 .warm_ids = {NULL}, 1769 .warm_ids = {NULL},
1644 }, 1770 },
1645 { 1771 {
1646 .name = "Sveon STV22 Dual USB DVB-T Tuner HDTV", 1772 .name = "Sveon STV22 Dual USB DVB-T Tuner HDTV",
1647 .cold_ids = {&af9015_usb_table[37], NULL}, 1773 .cold_ids = {
1774 &af9015_usb_table[SVEON_STV22],
1775 NULL
1776 },
1648 .warm_ids = {NULL}, 1777 .warm_ids = {NULL},
1649 }, 1778 },
1650 } 1779 }
@@ -1717,50 +1846,77 @@ static struct dvb_usb_device_properties af9015_properties[] = {
1717 .devices = { 1846 .devices = {
1718 { 1847 {
1719 .name = "AverMedia AVerTV Volar GPS 805 (A805)", 1848 .name = "AverMedia AVerTV Volar GPS 805 (A805)",
1720 .cold_ids = {&af9015_usb_table[21], NULL}, 1849 .cold_ids = {
1850 &af9015_usb_table[AVERTV_A805],
1851 NULL
1852 },
1721 .warm_ids = {NULL}, 1853 .warm_ids = {NULL},
1722 }, 1854 },
1723 { 1855 {
1724 .name = "Conceptronic USB2.0 DVB-T CTVDIGRCU " \ 1856 .name = "Conceptronic USB2.0 DVB-T CTVDIGRCU " \
1725 "V3.0", 1857 "V3.0",
1726 .cold_ids = {&af9015_usb_table[22], NULL}, 1858 .cold_ids = {
1859 &af9015_usb_table[CONCEPTRONIC_CTVDIGRCU],
1860 NULL
1861 },
1727 .warm_ids = {NULL}, 1862 .warm_ids = {NULL},
1728 }, 1863 },
1729 { 1864 {
1730 .name = "KWorld Digial MC-810", 1865 .name = "KWorld Digial MC-810",
1731 .cold_ids = {&af9015_usb_table[23], NULL}, 1866 .cold_ids = {
1867 &af9015_usb_table[KWORLD_MC810],
1868 NULL
1869 },
1732 .warm_ids = {NULL}, 1870 .warm_ids = {NULL},
1733 }, 1871 },
1734 { 1872 {
1735 .name = "Genius TVGo DVB-T03", 1873 .name = "Genius TVGo DVB-T03",
1736 .cold_ids = {&af9015_usb_table[24], NULL}, 1874 .cold_ids = {
1875 &af9015_usb_table[GENIUS_TVGO_DVB_T03],
1876 NULL
1877 },
1737 .warm_ids = {NULL}, 1878 .warm_ids = {NULL},
1738 }, 1879 },
1739 { 1880 {
1740 .name = "KWorld PlusTV DVB-T PCI Pro Card " \ 1881 .name = "KWorld PlusTV DVB-T PCI Pro Card " \
1741 "(DVB-T PC160-T)", 1882 "(DVB-T PC160-T)",
1742 .cold_ids = {&af9015_usb_table[26], NULL}, 1883 .cold_ids = {
1884 &af9015_usb_table[KWORLD_PC160_T],
1885 NULL
1886 },
1743 .warm_ids = {NULL}, 1887 .warm_ids = {NULL},
1744 }, 1888 },
1745 { 1889 {
1746 .name = "Sveon STV20 Tuner USB DVB-T HDTV", 1890 .name = "Sveon STV20 Tuner USB DVB-T HDTV",
1747 .cold_ids = {&af9015_usb_table[27], NULL}, 1891 .cold_ids = {
1892 &af9015_usb_table[SVEON_STV20],
1893 NULL
1894 },
1748 .warm_ids = {NULL}, 1895 .warm_ids = {NULL},
1749 }, 1896 },
1750 { 1897 {
1751 .name = "Leadtek WinFast DTV2000DS", 1898 .name = "Leadtek WinFast DTV2000DS",
1752 .cold_ids = {&af9015_usb_table[29], NULL}, 1899 .cold_ids = {
1900 &af9015_usb_table[WINFAST_DTV2000DS],
1901 NULL
1902 },
1753 .warm_ids = {NULL}, 1903 .warm_ids = {NULL},
1754 }, 1904 },
1755 { 1905 {
1756 .name = "KWorld USB DVB-T Stick Mobile " \ 1906 .name = "KWorld USB DVB-T Stick Mobile " \
1757 "(UB383-T)", 1907 "(UB383-T)",
1758 .cold_ids = {&af9015_usb_table[30], NULL}, 1908 .cold_ids = {
1909 &af9015_usb_table[KWORLD_UB383_T],
1910 NULL
1911 },
1759 .warm_ids = {NULL}, 1912 .warm_ids = {NULL},
1760 }, 1913 },
1761 { 1914 {
1762 .name = "AverMedia AVerTV Volar M (A815Mac)", 1915 .name = "AverMedia AVerTV Volar M (A815Mac)",
1763 .cold_ids = {&af9015_usb_table[32], NULL}, 1916 .cold_ids = {
1917 &af9015_usb_table[AVERMEDIA_A815M],
1918 NULL
1919 },
1764 .warm_ids = {NULL}, 1920 .warm_ids = {NULL},
1765 }, 1921 },
1766 } 1922 }