Module Name: src Committed By: chs Date: Sun Sep 23 01:08:18 UTC 2012
Modified Files: src/sys/dev/usb: if_atu.c if_atureg.h if_rum.c if_zyd.c moscom.c Log Message: add a bunch of devices. from openbsd. To generate a diff of this commit: cvs rdiff -u -r1.43 -r1.44 src/sys/dev/usb/if_atu.c cvs rdiff -u -r1.9 -r1.10 src/sys/dev/usb/if_atureg.h cvs rdiff -u -r1.42 -r1.43 src/sys/dev/usb/if_rum.c cvs rdiff -u -r1.30 -r1.31 src/sys/dev/usb/if_zyd.c cvs rdiff -u -r1.7 -r1.8 src/sys/dev/usb/moscom.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/dev/usb/if_atu.c diff -u src/sys/dev/usb/if_atu.c:1.43 src/sys/dev/usb/if_atu.c:1.44 --- src/sys/dev/usb/if_atu.c:1.43 Fri Dec 23 00:51:43 2011 +++ src/sys/dev/usb/if_atu.c Sun Sep 23 01:08:17 2012 @@ -1,4 +1,4 @@ -/* $NetBSD: if_atu.c,v 1.43 2011/12/23 00:51:43 jakllsch Exp $ */ +/* $NetBSD: if_atu.c,v 1.44 2012/09/23 01:08:17 chs Exp $ */ /* $OpenBSD: if_atu.c,v 1.48 2004/12/30 01:53:21 dlg Exp $ */ /* * Copyright (c) 2003, 2004 @@ -48,7 +48,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: if_atu.c,v 1.43 2011/12/23 00:51:43 jakllsch Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_atu.c,v 1.44 2012/09/23 01:08:17 chs Exp $"); #include <sys/param.h> @@ -111,38 +111,106 @@ int atudebug = 1; * Various supported device vendors/products/radio type. */ struct atu_type atu_devs[] = { - { USB_VENDOR_ATMEL, USB_PRODUCT_ATMEL_BW002, + { USB_VENDOR_3COM, USB_PRODUCT_3COM_3CRSHEW696, RadioRFMD, ATU_NO_QUIRK }, - { USB_VENDOR_BELKIN, USB_PRODUCT_BELKIN_F5D6050, + { USB_VENDOR_ABOCOM, USB_PRODUCT_ABOCOM_BWU613, RadioRFMD, ATU_NO_QUIRK }, - { USB_VENDOR_ATMEL, USB_PRODUCT_ATMEL_AT76C503A, + { USB_VENDOR_ACCTON, USB_PRODUCT_ACCTON_2664W, + AT76C503_rfmd_acc, ATU_NO_QUIRK }, + { USB_VENDOR_ACERP, USB_PRODUCT_ACERP_AWL300, RadioIntersil, ATU_NO_QUIRK }, - { USB_VENDOR_LEXAR, USB_PRODUCT_LEXAR_2662WAR, + { USB_VENDOR_ACERP, USB_PRODUCT_ACERP_AWL400, RadioRFMD, ATU_NO_QUIRK }, - /* Belkin F5D6050 */ - { USB_VENDOR_SMC3, USB_PRODUCT_SMC3_2662WUSB, + { USB_VENDOR_ACTIONTEC, USB_PRODUCT_ACTIONTEC_UAT1, RadioRFMD, ATU_NO_QUIRK }, - { USB_VENDOR_LINKSYS2, USB_PRODUCT_LINKSYS2_WUSB11, + { USB_VENDOR_ADDTRON, USB_PRODUCT_ADDTRON_AWU120, + RadioIntersil, ATU_NO_QUIRK }, + { USB_VENDOR_AINCOMM, USB_PRODUCT_AINCOMM_AWU2000B, + RadioRFMD2958, ATU_NO_QUIRK }, + { USB_VENDOR_ASKEY, USB_PRODUCT_ASKEY_VOYAGER1010, + RadioIntersil, ATU_NO_QUIRK }, + { USB_VENDOR_ASKEY, USB_PRODUCT_ASKEY_WLL013I, + RadioIntersil, ATU_NO_QUIRK }, + { USB_VENDOR_ASKEY, USB_PRODUCT_ASKEY_WLL013, RadioRFMD, ATU_NO_QUIRK }, - { USB_VENDOR_LINKSYS3, USB_PRODUCT_LINKSYS3_WUSB11V28, + { USB_VENDOR_ATMEL, USB_PRODUCT_ATMEL_AT76C503I1, + RadioIntersil, ATU_NO_QUIRK }, + { USB_VENDOR_ATMEL, USB_PRODUCT_ATMEL_AT76C503I2, + AT76C503_i3863, ATU_NO_QUIRK }, + { USB_VENDOR_ATMEL, USB_PRODUCT_ATMEL_AT76C503RFMD, + RadioRFMD, ATU_NO_QUIRK }, + { USB_VENDOR_ATMEL, USB_PRODUCT_ATMEL_AT76C505RFMD, + AT76C505_rfmd, ATU_NO_QUIRK }, + { USB_VENDOR_ATMEL, USB_PRODUCT_ATMEL_AT76C505RFMD2958, RadioRFMD2958, ATU_NO_QUIRK }, - { USB_VENDOR_NETGEAR2, USB_PRODUCT_NETGEAR2_MA101B, + { USB_VENDOR_ATMEL, USB_PRODUCT_ATMEL_AT76C505A, /* SMC2662 V.4 */ + RadioRFMD2958_SMC, ATU_QUIRK_NO_REMAP | ATU_QUIRK_FW_DELAY }, + { USB_VENDOR_ATMEL, USB_PRODUCT_ATMEL_AT76C505AS, /* quirk? */ + RadioRFMD2958_SMC, ATU_QUIRK_NO_REMAP | ATU_QUIRK_FW_DELAY }, + { USB_VENDOR_ATMEL, USB_PRODUCT_ATMEL_WN210, RadioRFMD, ATU_NO_QUIRK }, - { USB_VENDOR_ACERP, USB_PRODUCT_ACERP_AWL400, + { USB_VENDOR_BELKIN, USB_PRODUCT_BELKIN_F5D6050, RadioRFMD, ATU_NO_QUIRK }, - { USB_VENDOR_ATMEL, USB_PRODUCT_ATMEL_WL1130, + { USB_VENDOR_CONCEPTRONIC, USB_PRODUCT_CONCEPTRONIC_C11U, + RadioIntersil, ATU_NO_QUIRK }, + { USB_VENDOR_CONCEPTRONIC, USB_PRODUCT_CONCEPTRONIC_WL210, + RadioIntersil, ATU_NO_QUIRK }, + { USB_VENDOR_COMPAQ, USB_PRODUCT_COMPAQ_IPAQWLAN, + RadioRFMD, ATU_NO_QUIRK }, + { USB_VENDOR_COREGA, USB_PRODUCT_COREGA_WLUSB_11_STICK, RadioRFMD2958, ATU_NO_QUIRK }, - { USB_VENDOR_AINCOMM, USB_PRODUCT_AINCOMM_AWU2000B, + { USB_VENDOR_DICKSMITH, USB_PRODUCT_DICKSMITH_CHUSB611G, + RadioRFMD2958, ATU_NO_QUIRK }, + { USB_VENDOR_DICKSMITH, USB_PRODUCT_DICKSMITH_WL200U, + RadioRFMD, ATU_NO_QUIRK }, + { USB_VENDOR_DICKSMITH, USB_PRODUCT_DICKSMITH_WL240U, RadioRFMD2958, ATU_NO_QUIRK }, - /* SMC2662 V.4 */ - { USB_VENDOR_ATMEL, USB_PRODUCT_ATMEL_AT76C505A, + { USB_VENDOR_DICKSMITH, USB_PRODUCT_DICKSMITH_XH1153, + RadioRFMD, ATU_NO_QUIRK }, + { USB_VENDOR_DLINK, USB_PRODUCT_DLINK_DWL120E, + RadioRFMD, ATU_NO_QUIRK }, + { USB_VENDOR_GIGABYTE, USB_PRODUCT_GIGABYTE_GNWLBM101, + RadioRFMD, ATU_NO_QUIRK }, + { USB_VENDOR_GIGASET, USB_PRODUCT_GIGASET_WLAN, /* quirk? */ RadioRFMD2958_SMC, ATU_QUIRK_NO_REMAP | ATU_QUIRK_FW_DELAY }, - { USB_VENDOR_ACERP, USB_PRODUCT_ACERP_AWL300, + { USB_VENDOR_HP, USB_PRODUCT_HP_HN210W, + RadioIntersil, ATU_NO_QUIRK }, + { USB_VENDOR_INTEL, USB_PRODUCT_INTEL_AP310, RadioIntersil, ATU_NO_QUIRK }, + { USB_VENDOR_IODATA, USB_PRODUCT_IODATA_USBWNB11A, + RadioIntersil, ATU_NO_QUIRK }, + { USB_VENDOR_LEXAR, USB_PRODUCT_LEXAR_2662WAR, + RadioRFMD, ATU_NO_QUIRK }, + { USB_VENDOR_LINKSYS, USB_PRODUCT_LINKSYS_WUSB11, + RadioIntersil, ATU_NO_QUIRK }, + { USB_VENDOR_LINKSYS2, USB_PRODUCT_LINKSYS2_WUSB11, + RadioRFMD, ATU_NO_QUIRK }, + { USB_VENDOR_LINKSYS2, USB_PRODUCT_LINKSYS2_NWU11B, + RadioRFMD, ATU_NO_QUIRK }, + { USB_VENDOR_LINKSYS3, USB_PRODUCT_LINKSYS3_WUSB11V28, + RadioRFMD2958, ATU_NO_QUIRK }, + { USB_VENDOR_MSI, USB_PRODUCT_MSI_WLAN, + RadioRFMD2958, ATU_NO_QUIRK }, + { USB_VENDOR_NETGEAR2, USB_PRODUCT_NETGEAR2_MA101, + RadioIntersil, ATU_NO_QUIRK }, + { USB_VENDOR_NETGEAR2, USB_PRODUCT_NETGEAR2_MA101B, + RadioRFMD, ATU_NO_QUIRK }, { USB_VENDOR_OQO, USB_PRODUCT_OQO_WIFI01, RadioRFMD2958_SMC, ATU_QUIRK_NO_REMAP | ATU_QUIRK_FW_DELAY }, + { USB_VENDOR_PLANEX2, USB_PRODUCT_PLANEX2_GW_US11S, + RadioRFMD, ATU_NO_QUIRK }, + { USB_VENDOR_SAMSUNG, USB_PRODUCT_SAMSUNG_SWL2100W, + AT76C503_i3863, ATU_NO_QUIRK }, + { USB_VENDOR_SIEMENS2, USB_PRODUCT_SIEMENS2_WLL013, + RadioRFMD, ATU_NO_QUIRK }, { USB_VENDOR_SMC3, USB_PRODUCT_SMC3_2662WV1, RadioIntersil, ATU_NO_QUIRK }, + { USB_VENDOR_SMC3, USB_PRODUCT_SMC3_2662WV2, + AT76C503_rfmd_acc, ATU_NO_QUIRK }, + { USB_VENDOR_TEKRAM, USB_PRODUCT_TEKRAM_U300C, + RadioIntersil, ATU_NO_QUIRK }, + { USB_VENDOR_ZCOM, USB_PRODUCT_ZCOM_M4Y750, + RadioIntersil, ATU_NO_QUIRK }, }; struct atu_radfirm { @@ -989,6 +1057,8 @@ atu_get_card_config(struct atu_softc *sc case RadioRFMD: case RadioRFMD2958: case RadioRFMD2958_SMC: + case AT76C503_rfmd_acc: + case AT76C505_rfmd: err = atu_usb_request(sc, UT_READ_VENDOR_INTERFACE, 0x33, 0x0a02, 0x0000, sizeof(rfmd_conf), (u_int8_t *)&rfmd_conf); @@ -1001,6 +1071,7 @@ atu_get_card_config(struct atu_softc *sc break; case RadioIntersil: + case AT76C503_i3863: err = atu_usb_request(sc, UT_READ_VENDOR_INTERFACE, 0x33, 0x0902, 0x0000, sizeof(intersil_conf), (u_int8_t *)&intersil_conf); Index: src/sys/dev/usb/if_atureg.h diff -u src/sys/dev/usb/if_atureg.h:1.9 src/sys/dev/usb/if_atureg.h:1.10 --- src/sys/dev/usb/if_atureg.h:1.9 Fri Aug 24 09:01:23 2012 +++ src/sys/dev/usb/if_atureg.h Sun Sep 23 01:08:17 2012 @@ -1,4 +1,4 @@ -/* $NetBSD: if_atureg.h,v 1.9 2012/08/24 09:01:23 msaitoh Exp $ */ +/* $NetBSD: if_atureg.h,v 1.10 2012/09/23 01:08:17 chs Exp $ */ /* $OpenBSD: if_atureg.h,v 1.21 2004/12/23 13:19:38 dlg Exp $ */ /* * Copyright (c) 2003 @@ -91,7 +91,10 @@ enum atu_radio_type { RadioRFMD = 0, RadioRFMD2958, RadioRFMD2958_SMC, - RadioIntersil + RadioIntersil, + AT76C503_i3863, + AT76C503_rfmd_acc, + AT76C505_rfmd }; struct atu_type { Index: src/sys/dev/usb/if_rum.c diff -u src/sys/dev/usb/if_rum.c:1.42 src/sys/dev/usb/if_rum.c:1.43 --- src/sys/dev/usb/if_rum.c:1.42 Fri Jun 1 12:38:25 2012 +++ src/sys/dev/usb/if_rum.c Sun Sep 23 01:08:17 2012 @@ -1,5 +1,5 @@ /* $OpenBSD: if_rum.c,v 1.40 2006/09/18 16:20:20 damien Exp $ */ -/* $NetBSD: if_rum.c,v 1.42 2012/06/01 12:38:25 nonaka Exp $ */ +/* $NetBSD: if_rum.c,v 1.43 2012/09/23 01:08:17 chs Exp $ */ /*- * Copyright (c) 2005-2007 Damien Bergamini <damien.bergam...@free.fr> @@ -24,7 +24,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: if_rum.c,v 1.42 2012/06/01 12:38:25 nonaka Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_rum.c,v 1.43 2012/09/23 01:08:17 chs Exp $"); #include <sys/param.h> @@ -96,9 +96,12 @@ static const struct usb_devno rum_devs[] { USB_VENDOR_ASUSTEK, USB_PRODUCT_ASUSTEK_WL167G_3 }, { USB_VENDOR_BELKIN, USB_PRODUCT_BELKIN_F5D7050A }, { USB_VENDOR_BELKIN, USB_PRODUCT_BELKIN_F5D9050V3 }, + { USB_VENDOR_BELKIN, USB_PRODUCT_BELKIN_F5D9050C }, + { USB_VENDOR_CISCOLINKSYS, USB_PRODUCT_CISCOLINKSYS_WUSB200 }, { USB_VENDOR_CISCOLINKSYS, USB_PRODUCT_CISCOLINKSYS_WUSB54GC }, { USB_VENDOR_CISCOLINKSYS, USB_PRODUCT_CISCOLINKSYS_WUSB54GR }, { USB_VENDOR_CONCEPTRONIC, USB_PRODUCT_CONCEPTRONIC_C54RU2 }, + { USB_VENDOR_CONCEPTRONIC, USB_PRODUCT_CONCEPTRONIC_RT2573 }, { USB_VENDOR_COREGA, USB_PRODUCT_COREGA_CGWLUSB2GL }, { USB_VENDOR_COREGA, USB_PRODUCT_COREGA_CGWLUSB2GPX }, { USB_VENDOR_DICKSMITH, USB_PRODUCT_DICKSMITH_CWD854F }, @@ -107,6 +110,8 @@ static const struct usb_devno rum_devs[] { USB_VENDOR_DLINK2, USB_PRODUCT_DLINK2_WUA1340 }, { USB_VENDOR_DLINK2, USB_PRODUCT_DLINK2_DWA110 }, { USB_VENDOR_DLINK2, USB_PRODUCT_DLINK2_DWA111 }, + { USB_VENDOR_EDIMAX, USB_PRODUCT_EDIMAX_EW7318 }, + { USB_VENDOR_EDIMAX, USB_PRODUCT_EDIMAX_EW7618 }, { USB_VENDOR_GIGABYTE, USB_PRODUCT_GIGABYTE_GNWB01GS }, { USB_VENDOR_GIGABYTE, USB_PRODUCT_GIGABYTE_GNWI05GS }, { USB_VENDOR_GIGASET, USB_PRODUCT_GIGASET_RT2573 }, @@ -116,6 +121,7 @@ static const struct usb_devno rum_devs[] { USB_VENDOR_HUAWEI3COM, USB_PRODUCT_HUAWEI3COM_RT2573 }, { USB_VENDOR_MELCO, USB_PRODUCT_MELCO_G54HP }, { USB_VENDOR_MELCO, USB_PRODUCT_MELCO_SG54HP }, + { USB_VENDOR_MELCO, USB_PRODUCT_MELCO_SG54HG }, { USB_VENDOR_MELCO, USB_PRODUCT_MELCO_WLIUCG }, { USB_VENDOR_MSI, USB_PRODUCT_MSI_RT2573 }, { USB_VENDOR_MSI, USB_PRODUCT_MSI_RT2573_2 }, @@ -132,7 +138,9 @@ static const struct usb_devno rum_devs[] { USB_VENDOR_RALINK, USB_PRODUCT_RALINK_RT2671 }, { USB_VENDOR_SITECOMEU, USB_PRODUCT_SITECOMEU_WL113R2 }, { USB_VENDOR_SITECOMEU, USB_PRODUCT_SITECOMEU_WL172 }, - { USB_VENDOR_SURECOM, USB_PRODUCT_SURECOM_RT2573 } + { USB_VENDOR_SPARKLAN, USB_PRODUCT_SPARKLAN_RT2573 }, + { USB_VENDOR_SURECOM, USB_PRODUCT_SURECOM_RT2573 }, + { USB_VENDOR_ZYXEL, USB_PRODUCT_ZYXEL_RT2573 } }; static int rum_attachhook(void *); Index: src/sys/dev/usb/if_zyd.c diff -u src/sys/dev/usb/if_zyd.c:1.30 src/sys/dev/usb/if_zyd.c:1.31 --- src/sys/dev/usb/if_zyd.c:1.30 Thu Mar 15 18:39:21 2012 +++ src/sys/dev/usb/if_zyd.c Sun Sep 23 01:08:17 2012 @@ -1,5 +1,5 @@ /* $OpenBSD: if_zyd.c,v 1.52 2007/02/11 00:08:04 jsg Exp $ */ -/* $NetBSD: if_zyd.c,v 1.30 2012/03/15 18:39:21 bouyer Exp $ */ +/* $NetBSD: if_zyd.c,v 1.31 2012/09/23 01:08:17 chs Exp $ */ /*- * Copyright (c) 2006 by Damien Bergamini <damien.bergam...@free.fr> @@ -22,7 +22,7 @@ * ZyDAS ZD1211/ZD1211B USB WLAN driver. */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: if_zyd.c,v 1.30 2012/03/15 18:39:21 bouyer Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_zyd.c,v 1.31 2012/09/23 01:08:17 chs Exp $"); #include <sys/param.h> @@ -98,6 +98,7 @@ static const struct zyd_type { ZYD_ZD1211_DEV(ASUSTEK, WL159G), ZYD_ZD1211_DEV(CYBERTAN, TG54USB), ZYD_ZD1211_DEV(DRAYTEK, VIGOR550), + ZYD_ZD1211_DEV(PLANEX2, GWUS54GD), ZYD_ZD1211_DEV(PLANEX2, GWUS54GZL), ZYD_ZD1211_DEV(PLANEX3, GWUS54GZ), ZYD_ZD1211_DEV(PLANEX3, GWUS54MINI), @@ -117,33 +118,39 @@ static const struct zyd_type { ZYD_ZD1211_DEV(ZYDAS, ZD1211), ZYD_ZD1211_DEV(ZYXEL, AG225H), ZYD_ZD1211_DEV(ZYXEL, ZYAIRG220), + ZYD_ZD1211_DEV(ZYXEL, G200V2), ZYD_ZD1211B_DEV(ACCTON, SMCWUSBG), + ZYD_ZD1211B_DEV(ACCTON, WN4501H_LF_IR), + ZYD_ZD1211B_DEV(ACCTON, WUS201), ZYD_ZD1211B_DEV(ACCTON, ZD1211B), ZYD_ZD1211B_DEV(ASUSTEK, A9T_WIFI), ZYD_ZD1211B_DEV(BELKIN, F5D7050C), ZYD_ZD1211B_DEV(BELKIN, ZD1211B), + ZYD_ZD1211B_DEV(BEWAN, BWIFI_USB54AR), ZYD_ZD1211B_DEV(CISCOLINKSYS, WUSBF54G), ZYD_ZD1211B_DEV(CYBERTAN, ZD1211B), ZYD_ZD1211B_DEV(FIBERLINE, WL430U), ZYD_ZD1211B_DEV(MELCO, KG54L), ZYD_ZD1211B_DEV(PHILIPS, SNU5600), + ZYD_ZD1211B_DEV(PHILIPS, SNU5630NS05), + ZYD_ZD1211B_DEV(PLANEX2, GWUS54GXS), ZYD_ZD1211B_DEV(SAGEM, XG76NA), + ZYD_ZD1211B_DEV(SITECOMEU, WL603), ZYD_ZD1211B_DEV(SITECOMEU, ZD1211B), + ZYD_ZD1211B_DEV(SONY, IFU_WLM2), ZYD_ZD1211B_DEV(UMEDIA, TEW429UBC1), -#if 0 /* Shall we needs? */ ZYD_ZD1211B_DEV(UNKNOWN1, ZD1211B_1), ZYD_ZD1211B_DEV(UNKNOWN1, ZD1211B_2), ZYD_ZD1211B_DEV(UNKNOWN2, ZD1211B), ZYD_ZD1211B_DEV(UNKNOWN3, ZD1211B), -#endif ZYD_ZD1211B_DEV(USR, USR5423), ZYD_ZD1211B_DEV(VTECH, ZD1211B), ZYD_ZD1211B_DEV(ZCOM, ZD1211B), ZYD_ZD1211B_DEV(ZYDAS, ZD1211B), + ZYD_ZD1211B_DEV(ZYDAS, ZD1211B_2), ZYD_ZD1211B_DEV(ZYXEL, M202), ZYD_ZD1211B_DEV(ZYXEL, G220V2), - ZYD_ZD1211B_DEV(PLANEX2, GWUS54GXS), }; #define zyd_lookup(v, p) \ ((const struct zyd_type *)usb_lookup(zyd_devs, v, p)) Index: src/sys/dev/usb/moscom.c diff -u src/sys/dev/usb/moscom.c:1.7 src/sys/dev/usb/moscom.c:1.8 --- src/sys/dev/usb/moscom.c:1.7 Fri Dec 23 00:51:44 2011 +++ src/sys/dev/usb/moscom.c Sun Sep 23 01:08:17 2012 @@ -1,4 +1,4 @@ -/* $NetBSD: moscom.c,v 1.7 2011/12/23 00:51:44 jakllsch Exp $ */ +/* $NetBSD: moscom.c,v 1.8 2012/09/23 01:08:17 chs Exp $ */ /* $OpenBSD: moscom.c,v 1.11 2007/10/11 18:33:14 deraadt Exp $ */ /* @@ -18,7 +18,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: moscom.c,v 1.7 2011/12/23 00:51:44 jakllsch Exp $"); +__KERNEL_RCSID(0, "$NetBSD: moscom.c,v 1.8 2012/09/23 01:08:17 chs Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -168,7 +168,8 @@ struct ucom_methods moscom_methods = { static const struct usb_devno moscom_devs[] = { { USB_VENDOR_MOSCHIP, USB_PRODUCT_MOSCHIP_MCS7703 }, - { USB_VENDOR_MOSCHIP, USB_PRODUCT_MOSCHIP_MCS7840 } + { USB_VENDOR_MOSCHIP, USB_PRODUCT_MOSCHIP_MCS7840 }, + { USB_VENDOR_ATEN, USB_PRODUCT_ATEN_UC2324 } }; #define moscom_lookup(v, p) usb_lookup(moscom_devs, v, p)