Merge pull request #6960 from keszybz/hwdb-update

Hwdb update and sorting
This commit is contained in:
Lennart Poettering 2017-10-02 17:12:58 +02:00 committed by GitHub
commit fd68e0f58c
17 changed files with 304198 additions and 80578 deletions

7
hwdb/.gitignore vendored
View File

@ -1,8 +1 @@
/20-acpi-vendor.hwdb.base
/acpi_id_registry.html
/ma-large.txt
/ma-medium.txt
/ma-small.txt
/pci.ids
/pnp_id_registry.html
/usb.ids

File diff suppressed because it is too large Load Diff

View File

@ -114,6 +114,9 @@ acpi:IBMX*:
acpi:IDEA*:
ID_VENDOR_FROM_DATABASE=Lenovo Beijing Co. Ltd.
acpi:IHSE*:
ID_VENDOR_FROM_DATABASE=IHSE GmbH
acpi:IMPJ*:
ID_VENDOR_FROM_DATABASE=Impinj
@ -1338,9 +1341,6 @@ acpi:CHO*:
acpi:CHP*:
ID_VENDOR_FROM_DATABASE=CH Products
acpi:CHR*:
ID_VENDOR_FROM_DATABASE=christmann informationstechnik + medien GmbH & Co. KG
acpi:CHS*:
ID_VENDOR_FROM_DATABASE=Agentur Chairos
@ -2736,9 +2736,6 @@ acpi:GFN*:
acpi:GGL*:
ID_VENDOR_FROM_DATABASE=Google Inc.
acpi:GGT*:
ID_VENDOR_FROM_DATABASE=G2TOUCH KOREA
acpi:GIC*:
ID_VENDOR_FROM_DATABASE=General Inst. Corporation
@ -4551,9 +4548,6 @@ acpi:MVM*:
acpi:MVN*:
ID_VENDOR_FROM_DATABASE=Meta Company
acpi:MVR*:
ID_VENDOR_FROM_DATABASE=MediCapture, Inc.
acpi:MVS*:
ID_VENDOR_FROM_DATABASE=Microvision
@ -5265,9 +5259,6 @@ acpi:PNR*:
acpi:PNS*:
ID_VENDOR_FROM_DATABASE=PanaScope
acpi:PNT*:
ID_VENDOR_FROM_DATABASE=HOYA Corporation PENTAX Lifecare Division
acpi:PNX*:
ID_VENDOR_FROM_DATABASE=Phoenix Technologies, Ltd.
@ -6522,9 +6513,6 @@ acpi:TEK*:
acpi:TEL*:
ID_VENDOR_FROM_DATABASE=Promotion and Display Technology Ltd.
acpi:TEN*:
ID_VENDOR_FROM_DATABASE=Tencent
acpi:TER*:
ID_VENDOR_FROM_DATABASE=TerraTec Electronic GmbH

View File

@ -1,492 +1,493 @@
--- 20-acpi-vendor.hwdb.base 2016-06-10 12:40:38.143970821 +0200
+++ 20-acpi-vendor.hwdb 2016-06-10 12:43:40.557054147 +0200
--- 20-acpi-vendor.hwdb.base 2017-09-28 13:48:25.370636463 +0200
+++ 20-acpi-vendor.hwdb 2017-09-28 13:48:25.375636571 +0200
@@ -3,6 +3,8 @@
# Data imported from:
# http://www.uefi.org/uefi-pnp-export
# http://www.uefi.org/uefi-acpi-export
+#
+# With various additions from other sources
acpi:3NOD*:
ID_VENDOR_FROM_DATABASE=Shenzhen three Connaught Information Technology Co., Ltd. (3nod Group)
@@ -10,9 +12,6 @@
acpi:3GVR*:
ID_VENDOR_FROM_DATABASE=VR Technology Holdings Limited
@@ -16,9 +18,6 @@
acpi:AAVA*:
ID_VENDOR_FROM_DATABASE=Aava Mobile Oy
-acpi:ACPI*:
- ID_VENDOR_FROM_DATABASE=Intel Corporation
-
acpi:AMDI*:
ID_VENDOR_FROM_DATABASE=AMD
@@ -217,6 +216,9 @@
@@ -244,6 +243,9 @@
acpi:AAA*:
ID_VENDOR_FROM_DATABASE=Avolites Ltd
+acpi:AAC*:
+ ID_VENDOR_FROM_DATABASE=AcerView
+
acpi:AAE*:
ID_VENDOR_FROM_DATABASE=Anatek Electronics Inc.
@@ -241,6 +243,9 @@
@@ -271,6 +273,9 @@
acpi:ABO*:
ID_VENDOR_FROM_DATABASE=D-Link Systems Inc
+acpi:ABP*:
+ ID_VENDOR_FROM_DATABASE=Advansys
+
acpi:ABS*:
ID_VENDOR_FROM_DATABASE=Abaco Systems, Inc.
@@ -286,7 +291,7 @@
@@ -316,7 +321,7 @@
acpi:ACO*:
ID_VENDOR_FROM_DATABASE=Allion Computer Inc.
-acpi:ACP*:
+acpi:ACP[0-9A-F]*:
ID_VENDOR_FROM_DATABASE=Aspen Tech Inc
acpi:ACR*:
@@ -556,6 +561,9 @@
@@ -586,6 +591,9 @@
acpi:AMT*:
ID_VENDOR_FROM_DATABASE=AMT International Industry
+acpi:AMW*:
+ ID_VENDOR_FROM_DATABASE=AMW
+
acpi:AMX*:
ID_VENDOR_FROM_DATABASE=AMX LLC
@@ -604,6 +612,9 @@
@@ -634,6 +642,9 @@
acpi:AOA*:
ID_VENDOR_FROM_DATABASE=AOpen Inc.
+acpi:AOC*:
+ ID_VENDOR_FROM_DATABASE=AOC
+
acpi:AOE*:
ID_VENDOR_FROM_DATABASE=Advanced Optics Electronics, Inc.
@@ -613,6 +624,9 @@
@@ -643,6 +654,9 @@
acpi:AOT*:
ID_VENDOR_FROM_DATABASE=Alcatel
+acpi:APA*:
+ ID_VENDOR_FROM_DATABASE=Adaptec
+
acpi:APC*:
ID_VENDOR_FROM_DATABASE=American Power Conversion
@@ -788,7 +802,7 @@
@@ -818,7 +832,7 @@
ID_VENDOR_FROM_DATABASE=Alps Electric Inc
acpi:AUO*:
- ID_VENDOR_FROM_DATABASE=DO NOT USE - AUO
+ ID_VENDOR_FROM_DATABASE=AU Optronics
acpi:AUR*:
ID_VENDOR_FROM_DATABASE=Aureal Semiconductor
@@ -862,6 +876,9 @@
acpi:AXC*:
ID_VENDOR_FROM_DATABASE=AXIOMTEK CO., LTD.
@@ -895,6 +909,9 @@
acpi:AXE*:
ID_VENDOR_FROM_DATABASE=Axell Corporation
+acpi:AXE*:
+ ID_VENDOR_FROM_DATABASE=D-Link Systems Inc
+
acpi:AXI*:
ID_VENDOR_FROM_DATABASE=American Magnetics
@@ -1003,6 +1020,9 @@
@@ -1039,6 +1056,9 @@
acpi:BML*:
ID_VENDOR_FROM_DATABASE=BIOMED Lab
+acpi:BMM*:
+ ID_VENDOR_FROM_DATABASE=BMM
+
acpi:BMS*:
ID_VENDOR_FROM_DATABASE=BIOMEDISYS
@@ -1015,6 +1035,9 @@
@@ -1051,6 +1071,9 @@
acpi:BNO*:
ID_VENDOR_FROM_DATABASE=Bang & Olufsen
+acpi:BNQ*:
+ ID_VENDOR_FROM_DATABASE=BenQ Corporation
+
acpi:BNS*:
ID_VENDOR_FROM_DATABASE=Boulder Nonlinear Systems
@@ -1255,6 +1278,9 @@
@@ -1291,6 +1314,9 @@
acpi:CHA*:
ID_VENDOR_FROM_DATABASE=Chase Research PLC
+acpi:CHC*:
+ ID_VENDOR_FROM_DATABASE=Chic Technology Corp.
+
acpi:CHD*:
ID_VENDOR_FROM_DATABASE=ChangHong Electric Co.,Ltd
@@ -1402,6 +1428,9 @@
@@ -1438,6 +1464,9 @@
acpi:COD*:
ID_VENDOR_FROM_DATABASE=CODAN Pty. Ltd.
+acpi:COG*:
+ ID_VENDOR_FROM_DATABASE=Cogent
+
acpi:COI*:
ID_VENDOR_FROM_DATABASE=Codec Inc.
@@ -1805,7 +1834,7 @@
@@ -1841,7 +1870,7 @@
ID_VENDOR_FROM_DATABASE=Dragon Information Technology
acpi:DJE*:
- ID_VENDOR_FROM_DATABASE=Capstone Visua lProduct Development
+ ID_VENDOR_FROM_DATABASE=Capstone Visual Product Development
acpi:DJP*:
ID_VENDOR_FROM_DATABASE=Maygay Machines, Ltd
@@ -2119,6 +2148,9 @@
@@ -2161,6 +2190,9 @@
acpi:EIC*:
ID_VENDOR_FROM_DATABASE=Eicon Technology Corporation
+acpi:EIZ*:
+ ID_VENDOR_FROM_DATABASE=Eizo
+
acpi:EKA*:
ID_VENDOR_FROM_DATABASE=MagTek Inc.
@@ -2377,6 +2409,9 @@
@@ -2419,6 +2451,9 @@
acpi:FCG*:
ID_VENDOR_FROM_DATABASE=First International Computer Ltd
+acpi:FCM*:
+ ID_VENDOR_FROM_DATABASE=Funai
+
acpi:FCS*:
ID_VENDOR_FROM_DATABASE=Focus Enhancements, Inc.
@@ -2839,6 +2874,9 @@
@@ -2884,6 +2919,9 @@
acpi:HEC*:
ID_VENDOR_FROM_DATABASE=Hisense Electric Co., Ltd.
+acpi:HEI*:
+ ID_VENDOR_FROM_DATABASE=Hyundai
+
acpi:HEL*:
ID_VENDOR_FROM_DATABASE=Hitachi Micro Systems Europe Ltd
@@ -2968,6 +3006,9 @@
@@ -3013,6 +3051,9 @@
acpi:HSD*:
ID_VENDOR_FROM_DATABASE=HannStar Display Corp
+acpi:HSL*:
+ ID_VENDOR_FROM_DATABASE=Hansol
+
acpi:HSM*:
ID_VENDOR_FROM_DATABASE=AT&T Microelectronics
@@ -3082,6 +3123,9 @@
@@ -3133,6 +3174,9 @@
acpi:ICI*:
ID_VENDOR_FROM_DATABASE=Infotek Communication Inc
+acpi:ICL*:
+ ID_VENDOR_FROM_DATABASE=Fujitsu ICL
+
acpi:ICM*:
ID_VENDOR_FROM_DATABASE=Intracom SA
@@ -3175,6 +3219,9 @@
@@ -3226,6 +3270,9 @@
acpi:IKE*:
ID_VENDOR_FROM_DATABASE=Ikegami Tsushinki Co. Ltd.
+acpi:IKN*:
+ ID_VENDOR_FROM_DATABASE=IKON
+
acpi:IKS*:
ID_VENDOR_FROM_DATABASE=Ikos Systems Inc
@@ -3217,6 +3264,9 @@
@@ -3268,6 +3315,9 @@
acpi:IMT*:
ID_VENDOR_FROM_DATABASE=Inmax Technology Corporation
+acpi:IMS*:
+ ID_VENDOR_FROM_DATABASE=Integrated Micro Solution Inc.
+
acpi:INA*:
ID_VENDOR_FROM_DATABASE=Inventec Corporation
@@ -3712,6 +3762,9 @@
@@ -3769,6 +3819,9 @@
acpi:LAN*:
ID_VENDOR_FROM_DATABASE=Sodeman Lancom Inc
+acpi:LAP*:
+ ID_VENDOR_FROM_DATABASE=BenQ
+
acpi:LAS*:
ID_VENDOR_FROM_DATABASE=LASAT Comm. A/S
@@ -3757,6 +3810,9 @@
@@ -3814,6 +3867,9 @@
acpi:LED*:
ID_VENDOR_FROM_DATABASE=Long Engineering Design Inc
+acpi:LED*:
+ ID_VENDOR_FROM_DATABASE=LeafNet
+
acpi:LEG*:
ID_VENDOR_FROM_DATABASE=Legerity, Inc
@@ -3772,6 +3828,9 @@
@@ -3829,6 +3885,9 @@
acpi:LGC*:
ID_VENDOR_FROM_DATABASE=Logic Ltd
+acpi:LGD*:
+ ID_VENDOR_FROM_DATABASE=LG Display
+
acpi:LGI*:
ID_VENDOR_FROM_DATABASE=Logitech Inc
@@ -3823,6 +3882,9 @@
@@ -3880,6 +3939,9 @@
acpi:LND*:
ID_VENDOR_FROM_DATABASE=Land Computer Company Ltd
+acpi:LNE*:
+ ID_VENDOR_FROM_DATABASE=Linksys
+
acpi:LNK*:
ID_VENDOR_FROM_DATABASE=Link Tech Inc
@@ -3857,7 +3919,7 @@
@@ -3914,7 +3976,7 @@
ID_VENDOR_FROM_DATABASE=Design Technology
acpi:LPL*:
- ID_VENDOR_FROM_DATABASE=DO NOT USE - LPL
+ ID_VENDOR_FROM_DATABASE=LG Philips
acpi:LSC*:
ID_VENDOR_FROM_DATABASE=LifeSize Communications
@@ -4027,6 +4089,9 @@
@@ -4084,6 +4146,9 @@
acpi:MCX*:
ID_VENDOR_FROM_DATABASE=Millson Custom Solutions Inc.
+acpi:MCY*:
+ ID_VENDOR_FROM_DATABASE=Microdyne
+
acpi:MDA*:
ID_VENDOR_FROM_DATABASE=Media4 Inc
@@ -4252,6 +4317,9 @@
@@ -4312,6 +4377,9 @@
acpi:MOM*:
ID_VENDOR_FROM_DATABASE=Momentum Data Systems
+acpi:MON*:
+ ID_VENDOR_FROM_DATABASE=Daewoo
+
acpi:MOS*:
ID_VENDOR_FROM_DATABASE=Moses Corporation
@@ -4474,6 +4542,9 @@
@@ -4534,6 +4602,9 @@
acpi:NAL*:
ID_VENDOR_FROM_DATABASE=Network Alchemy
+acpi:NAN*:
+ ID_VENDOR_FROM_DATABASE=Nanao
+
acpi:NAT*:
ID_VENDOR_FROM_DATABASE=NaturalPoint Inc.
@@ -4969,6 +5040,9 @@
@@ -5032,6 +5103,9 @@
acpi:PCX*:
ID_VENDOR_FROM_DATABASE=PC Xperten
+acpi:PDC*:
+ ID_VENDOR_FROM_DATABASE=Polaroid
+
acpi:PDM*:
ID_VENDOR_FROM_DATABASE=Psion Dacom Plc.
@@ -5032,9 +5106,6 @@
@@ -5095,9 +5169,6 @@
acpi:PHE*:
ID_VENDOR_FROM_DATABASE=Philips Medical Systems Boeblingen GmbH
-acpi:PHI*:
- ID_VENDOR_FROM_DATABASE=DO NOT USE - PHI
-
acpi:PHL*:
ID_VENDOR_FROM_DATABASE=Philips Consumer Electronics Company
@@ -5116,9 +5187,6 @@
@@ -5182,9 +5253,6 @@
acpi:PNL*:
ID_VENDOR_FROM_DATABASE=Panelview, Inc.
-acpi:PNP*:
- ID_VENDOR_FROM_DATABASE=Microsoft
-
acpi:PNR*:
ID_VENDOR_FROM_DATABASE=Planar Systems, Inc.
@@ -5248,15 +5316,9 @@
@@ -5314,15 +5382,9 @@
acpi:PTS*:
ID_VENDOR_FROM_DATABASE=Plain Tree Systems Inc
-acpi:PTW*:
- ID_VENDOR_FROM_DATABASE=DO NOT USE - PTW
-
acpi:PUL*:
ID_VENDOR_FROM_DATABASE=Pulse-Eight Ltd
-acpi:PVC*:
- ID_VENDOR_FROM_DATABASE=DO NOT USE - PVC
-
acpi:PVG*:
ID_VENDOR_FROM_DATABASE=Proview Global Co., Ltd
@@ -5560,9 +5622,6 @@
@@ -5629,9 +5691,6 @@
acpi:RTI*:
ID_VENDOR_FROM_DATABASE=Rancho Tech Inc
-acpi:RTK*:
- ID_VENDOR_FROM_DATABASE=DO NOT USE - RTK
-
acpi:RTL*:
ID_VENDOR_FROM_DATABASE=Realtek Semiconductor Company Ltd
@@ -5725,9 +5784,6 @@
@@ -5794,9 +5853,6 @@
acpi:SEE*:
ID_VENDOR_FROM_DATABASE=SeeColor Corporation
-acpi:SEG*:
- ID_VENDOR_FROM_DATABASE=DO NOT USE - SEG
-
acpi:SEI*:
ID_VENDOR_FROM_DATABASE=Seitz & Associates Inc
@@ -6178,6 +6234,9 @@
@@ -6247,6 +6303,9 @@
acpi:SVD*:
ID_VENDOR_FROM_DATABASE=SVD Computer
+acpi:SVE*:
+ ID_VENDOR_FROM_DATABASE=SVEC
+
acpi:SVI*:
ID_VENDOR_FROM_DATABASE=Sun Microsystems
@@ -6259,6 +6318,9 @@
@@ -6328,6 +6387,9 @@
acpi:SZM*:
ID_VENDOR_FROM_DATABASE=Shenzhen MTC Co., Ltd
+acpi:SZV*:
+ ID_VENDOR_FROM_DATABASE=OvisLink
+
acpi:TAA*:
ID_VENDOR_FROM_DATABASE=Tandberg
@@ -6343,6 +6405,9 @@
acpi:TDD*:
ID_VENDOR_FROM_DATABASE=Tandberg Data Display AS
@@ -6418,6 +6480,9 @@
acpi:TDG*:
ID_VENDOR_FROM_DATABASE=Six15 Technologies
+acpi:TDK*:
+ ID_VENDOR_FROM_DATABASE=TDK USA Corporation
+
acpi:TDM*:
ID_VENDOR_FROM_DATABASE=Tandem Computer Europe Inc
@@ -6379,6 +6444,9 @@
@@ -6454,6 +6519,9 @@
acpi:TET*:
ID_VENDOR_FROM_DATABASE=TETRADYNE CO., LTD.
+acpi:TEX*:
+ ID_VENDOR_FROM_DATABASE=Texas Instruments
+
acpi:TEZ*:
ID_VENDOR_FROM_DATABASE=Tech Source Inc.
@@ -6490,9 +6558,6 @@
@@ -6568,9 +6636,6 @@
acpi:TNC*:
ID_VENDOR_FROM_DATABASE=TNC Industrial Company Ltd
-acpi:TNJ*:
- ID_VENDOR_FROM_DATABASE=DO NOT USE - TNJ
-
acpi:TNM*:
ID_VENDOR_FROM_DATABASE=TECNIMAGEN SA
@@ -6787,14 +6852,14 @@
@@ -6874,14 +6939,14 @@
acpi:UNC*:
ID_VENDOR_FROM_DATABASE=Unisys Corporation
-acpi:UND*:
- ID_VENDOR_FROM_DATABASE=DO NOT USE - UND
+acpi:UND*
+ ID_VENDOR_FROM_DATABASE=Unisys Corporation
-acpi:UNE*:
- ID_VENDOR_FROM_DATABASE=DO NOT USE - UNE
+acpi:UNE*
+ ID_VENDOR_FROM_DATABASE=Unisys Corporation
-acpi:UNF*:
- ID_VENDOR_FROM_DATABASE=DO NOT USE - UNF
+acpi:UNF*
+ ID_VENDOR_FROM_DATABASE=Unisys Corporation
acpi:UNI*:
ID_VENDOR_FROM_DATABASE=Uniform Industry Corp.
@@ -6829,6 +6894,9 @@
@@ -6916,6 +6981,9 @@
acpi:USA*:
ID_VENDOR_FROM_DATABASE=Utimaco Safeware AG
+acpi:USC*:
+ ID_VENDOR_FROM_DATABASE=UltraStor
+
acpi:USD*:
ID_VENDOR_FROM_DATABASE=U.S. Digital Corporation
@@ -7057,9 +7125,6 @@
@@ -7144,9 +7212,6 @@
acpi:WAL*:
ID_VENDOR_FROM_DATABASE=Wave Access
-acpi:WAN*:
- ID_VENDOR_FROM_DATABASE=DO NOT USE - WAN
-
acpi:WAV*:
ID_VENDOR_FROM_DATABASE=Wavephore
@@ -7178,7 +7243,7 @@
@@ -7265,7 +7330,7 @@
ID_VENDOR_FROM_DATABASE=Woxter Technology Co. Ltd
acpi:WYS*:
- ID_VENDOR_FROM_DATABASE=Myse Technology
+ ID_VENDOR_FROM_DATABASE=Wyse Technology
acpi:WYT*:
ID_VENDOR_FROM_DATABASE=Wooyoung Image & Information Co.,Ltd.
@@ -7192,9 +7257,6 @@
@@ -7279,9 +7344,6 @@
acpi:XDM*:
ID_VENDOR_FROM_DATABASE=XDM Ltd.
-acpi:XER*:
- ID_VENDOR_FROM_DATABASE=DO NOT USE - XER
-
acpi:XFG*:
ID_VENDOR_FROM_DATABASE=Jan Strapko - FOTO
@@ -7222,9 +7284,6 @@
@@ -7309,9 +7371,6 @@
acpi:XNT*:
ID_VENDOR_FROM_DATABASE=XN Technologies, Inc.
-acpi:XOC*:
- ID_VENDOR_FROM_DATABASE=DO NOT USE - XOC
-
acpi:XQU*:
ID_VENDOR_FROM_DATABASE=SHANGHAI SVA-DAV ELECTRONICS CO., LTD
@@ -7291,6 +7350,9 @@
@@ -7378,6 +7437,9 @@
acpi:ZBX*:
ID_VENDOR_FROM_DATABASE=Zebax Technologies
+acpi:ZCM*:
+ ID_VENDOR_FROM_DATABASE=Zenith
+
acpi:ZCT*:
ID_VENDOR_FROM_DATABASE=ZeitControl cardsystems GmbH

File diff suppressed because it is too large Load Diff

View File

@ -80,9 +80,6 @@ sdio:c*v02D0*
sdio:c*v02D0d044B*
ID_MODEL_FROM_DATABASE=Nintendo Wii WLAN daughter card
sdio:c*v02D0dA887*
ID_MODEL_FROM_DATABASE=BCM43143 WLAN card
sdio:c*v02D0d4324*
ID_MODEL_FROM_DATABASE=BCM43241 WLAN card
@ -95,21 +92,24 @@ sdio:c*v02D0d4330*
sdio:c*v02D0d4334*
ID_MODEL_FROM_DATABASE=BCM4334 WLAN card
sdio:c*v02D0d4335*
ID_MODEL_FROM_DATABASE=BCM4335/BCM4339 WLAN card
sdio:c*v02D0d4354*
ID_MODEL_FROM_DATABASE=BCM4354 WLAN card
sdio:c*v02D0dA887*
ID_MODEL_FROM_DATABASE=BCM43143 WLAN card
sdio:c*v02D0dA94C*
ID_MODEL_FROM_DATABASE=BCM43340 WLAN card
sdio:c*v02D0dA94D*
ID_MODEL_FROM_DATABASE=BCM43341 WLAN card
sdio:c*v02D0d4335*
ID_MODEL_FROM_DATABASE=BCM4335/BCM4339 WLAN card
sdio:c*v02D0dA962*
ID_MODEL_FROM_DATABASE=BCM43362 WLAN card
sdio:c*v02D0d4354*
ID_MODEL_FROM_DATABASE=BCM4354 WLAN card
sdio:c*v02DB*
ID_VENDOR_FROM_DATABASE=SyChip Inc.
@ -146,12 +146,12 @@ sdio:c*v02DFd9129*
sdio:c*v02DFd912A*
ID_MODEL_FROM_DATABASE=SD8797 BT
sdio:c*v02DFd912E*
ID_MODEL_FROM_DATABASE=SD8897 BT
sdio:c*v02DFd912D*
ID_MODEL_FROM_DATABASE=SD8897 WLAN
sdio:c*v02DFd912E*
ID_MODEL_FROM_DATABASE=SD8897 BT
sdio:c*v02FE*
ID_VENDOR_FROM_DATABASE=Spectec Computer Co., Ltd

View File

@ -92,9 +92,6 @@ usb:v02AD*
usb:v02ADp138C*
ID_MODEL_FROM_DATABASE=PVR Mass Storage
usb:v0300*
ID_VENDOR_FROM_DATABASE=MM300 eBook Reader
usb:v0324*
ID_VENDOR_FROM_DATABASE=OCZ Technology Inc
@ -410,6 +407,9 @@ usb:v03EBp7617*
usb:v03EBp7800*
ID_MODEL_FROM_DATABASE=Mini Album
usb:v03EBp800C*
ID_MODEL_FROM_DATABASE=Airspy HF+
usb:v03EBpFF07*
ID_MODEL_FROM_DATABASE=Tux Droid fish dongle
@ -4667,6 +4667,9 @@ usb:v0424p2640*
usb:v0424p2660*
ID_MODEL_FROM_DATABASE=Hub
usb:v0424p4041*
ID_MODEL_FROM_DATABASE=Hub and media card controller
usb:v0424p4060*
ID_MODEL_FROM_DATABASE=Ultra Fast Media Reader
@ -5537,6 +5540,9 @@ usb:v044FpB653*
usb:v044FpB654*
ID_MODEL_FROM_DATABASE=Ferrari GT Force Feedback Wheel
usb:v044FpB678*
ID_MODEL_FROM_DATABASE=T.Flight Rudder Pedals
usb:v044FpB687*
ID_MODEL_FROM_DATABASE=TWCS Throttle
@ -6947,6 +6953,9 @@ usb:v045Ep07F8*
usb:v045Ep07FD*
ID_MODEL_FROM_DATABASE=Nano Transceiver 1.1
usb:v045Ep0A00*
ID_MODEL_FROM_DATABASE=Lumia 950 Dual SIM (RM-1118)
usb:v045Ep930A*
ID_MODEL_FROM_DATABASE=ISOUSB.SYS Intel 82930 Isochronous IO Test Board
@ -7364,6 +7373,9 @@ usb:v046Dp0843*
usb:v046Dp0850*
ID_MODEL_FROM_DATABASE=QuickCam Web
usb:v046Dp085C*
ID_MODEL_FROM_DATABASE=C922 Pro Stream Webcam
usb:v046Dp0870*
ID_MODEL_FROM_DATABASE=QuickCam Express
@ -14165,6 +14177,9 @@ usb:v04D9pA050*
usb:v04D9pA055*
ID_MODEL_FROM_DATABASE=Keyboard
usb:v04D9pA09F*
ID_MODEL_FROM_DATABASE=E-Signal LUOM G10 Mechanical Gaming Mouse
usb:v04D9pA100*
ID_MODEL_FROM_DATABASE=Mouse [HV-MS735]
@ -15704,6 +15719,9 @@ usb:v04F2pB3EB*
usb:v04F2pB3F6*
ID_MODEL_FROM_DATABASE=HD WebCam (Acer)
usb:v04F2pB3FD*
ID_MODEL_FROM_DATABASE=HD WebCam (Asus N-series)
usb:v04F2pB40E*
ID_MODEL_FROM_DATABASE=HP Truevision HD camera
@ -17243,6 +17261,9 @@ usb:v04F9p2002*
usb:v04F9p2004*
ID_MODEL_FROM_DATABASE=PT-2300/2310 p-Touch Laber Printer
usb:v04F9p2007*
ID_MODEL_FROM_DATABASE=PT-2420PC P-touch Label Printer
usb:v04F9p2015*
ID_MODEL_FROM_DATABASE=QL-500 P-touch label printer
@ -19481,6 +19502,9 @@ usb:v0566p3004*
usb:v0566p3107*
ID_MODEL_FROM_DATABASE=Keyboard
usb:v0566p4006*
ID_MODEL_FROM_DATABASE=FID 638 Mouse (Sun Microsystems)
usb:v0567*
ID_VENDOR_FROM_DATABASE=Xyratex International, Ltd
@ -20441,6 +20465,9 @@ usb:v057Ep0305*
usb:v057Ep0306*
ID_MODEL_FROM_DATABASE=Wii Remote Controller RVL-003
usb:v057Ep0337*
ID_MODEL_FROM_DATABASE=Wii U GameCube Controller Adapter
usb:v057Ep2006*
ID_MODEL_FROM_DATABASE=Joy-Con L
@ -21821,6 +21848,9 @@ usb:v059Fp1061*
usb:v059Fp1064*
ID_MODEL_FROM_DATABASE=Rugged 16 and 32 GB
usb:v059Fp106B*
ID_MODEL_FROM_DATABASE=Rugged Mini HDD
usb:v059Fp106D*
ID_MODEL_FROM_DATABASE=Porsche Design Mobile Drive
@ -21848,6 +21878,21 @@ usb:v05A3*
usb:v05A3p8388*
ID_MODEL_FROM_DATABASE=Marvell 88W8388 802.11a/b/g WLAN
usb:v05A3p9230*
ID_MODEL_FROM_DATABASE=Camera
usb:v05A3p9320*
ID_MODEL_FROM_DATABASE=Camera
usb:v05A3p9331*
ID_MODEL_FROM_DATABASE=Camera
usb:v05A3p9422*
ID_MODEL_FROM_DATABASE=Camera
usb:v05A3p9520*
ID_MODEL_FROM_DATABASE=Camera
usb:v05A4*
ID_VENDOR_FROM_DATABASE=Ortek Technology, Inc.
@ -23351,6 +23396,9 @@ usb:v05DAp3022*
usb:v05DAp3023*
ID_MODEL_FROM_DATABASE=USB1200II Scanner
usb:v05DAp3025*
ID_MODEL_FROM_DATABASE=ScanMaker S460
usb:v05DAp30C1*
ID_MODEL_FROM_DATABASE=USB600 Scanner
@ -23693,6 +23741,9 @@ usb:v05DCpA81D*
usb:v05DCpA833*
ID_MODEL_FROM_DATABASE=JumpDrive S23 64GB
usb:v05DCpA838*
ID_MODEL_FROM_DATABASE=JumpDrive Tough
usb:v05DCpB002*
ID_MODEL_FROM_DATABASE=USB CF Reader
@ -24275,6 +24326,9 @@ usb:v0603p00F2*
usb:v0603p6871*
ID_MODEL_FROM_DATABASE=Mouse
usb:v0603p8611*
ID_MODEL_FROM_DATABASE=NTK96550 based camera
usb:v0604*
ID_VENDOR_FROM_DATABASE=Jean Co., Ltd
@ -29285,6 +29339,9 @@ usb:v07B4p0118*
usb:v07B4p0125*
ID_MODEL_FROM_DATABASE=Tough TG-1 Camera
usb:v07B4p0126*
ID_MODEL_FROM_DATABASE=VR340/D750 Digital Camera
usb:v07B4p0184*
ID_MODEL_FROM_DATABASE=P-S100 port
@ -33401,6 +33458,9 @@ usb:v0951p168A*
usb:v0951p168C*
ID_MODEL_FROM_DATABASE=DT Elite 3.0
usb:v0951p16B3*
ID_MODEL_FROM_DATABASE=HyperX Savage
usb:v0954*
ID_VENDOR_FROM_DATABASE=RPM Systems Corp.
@ -35531,6 +35591,9 @@ usb:v0ACDp0810*
usb:v0ACDp2030*
ID_MODEL_FROM_DATABASE=ValueMag Magnetic Stripe Reader
usb:v0ACDp3710*
ID_MODEL_FROM_DATABASE=ViVOpay Kiosk III
usb:v0ACE*
ID_VENDOR_FROM_DATABASE=ZyDAS
@ -38618,6 +38681,9 @@ usb:v0C45p7402*
usb:v0C45p7403*
ID_MODEL_FROM_DATABASE=Foot Switch
usb:v0C45p7404*
ID_MODEL_FROM_DATABASE=Foot switch FS1-P
usb:v0C45p8000*
ID_MODEL_FROM_DATABASE=DC31VC
@ -40226,6 +40292,9 @@ usb:v0D8Cp000D*
usb:v0D8Cp000E*
ID_MODEL_FROM_DATABASE=Audio Adapter (Planet UP-100, Genius G-Talk)
usb:v0D8Cp0014*
ID_MODEL_FROM_DATABASE=Audio Adapter (Unitek Y-247A)
usb:v0D8Cp001F*
ID_MODEL_FROM_DATABASE=CM108 Audio Controller
@ -41204,6 +41273,15 @@ usb:v0E0Fp0005*
usb:v0E0Fp0006*
ID_MODEL_FROM_DATABASE=Virtual Keyboard
usb:v0E0Fp8001*
ID_MODEL_FROM_DATABASE=Root Hub
usb:v0E0Fp8002*
ID_MODEL_FROM_DATABASE=Root Hub
usb:v0E0Fp8003*
ID_MODEL_FROM_DATABASE=Root Hub
usb:v0E0FpF80A*
ID_MODEL_FROM_DATABASE=Smoker FX2
@ -46157,6 +46235,9 @@ usb:v12D1p14D1*
usb:v12D1p14DB*
ID_MODEL_FROM_DATABASE=E353/E3131
usb:v12D1p14DC*
ID_MODEL_FROM_DATABASE=E33372 LTE/UMTS/GSM HiLink Modem/Networkcard
usb:v12D1p14F1*
ID_MODEL_FROM_DATABASE=Gobi 3000 HSPA+ Modem
@ -46187,6 +46268,12 @@ usb:v12D1p155A*
usb:v12D1p1575*
ID_MODEL_FROM_DATABASE=K5150 LTE modem
usb:v12D1p15BB*
ID_MODEL_FROM_DATABASE=ME936 LTE/HSDPA+ 4G modem
usb:v12D1p15C1*
ID_MODEL_FROM_DATABASE=ME906s LTE M.2 Module
usb:v12D1p15CA*
ID_MODEL_FROM_DATABASE=E3131 3G/UMTS/HSPA+ Modem (Mass Storage Mode)
@ -46397,6 +46484,9 @@ usb:v131Dp0158*
usb:v1325*
ID_VENDOR_FROM_DATABASE=ams AG
usb:v1325p4002*
ID_MODEL_FROM_DATABASE=I2C Dongle
usb:v132A*
ID_VENDOR_FROM_DATABASE=Envara Inc.
@ -46523,14 +46613,26 @@ usb:v1342p0304*
usb:v1343*
ID_VENDOR_FROM_DATABASE=Citizen Systems
usb:v1343p0002*
ID_MODEL_FROM_DATABASE=CW-01
usb:v1343p0003*
ID_MODEL_FROM_DATABASE=CX / DNP DS40
usb:v1343p0004*
ID_MODEL_FROM_DATABASE=CX-W / DNP DS80
ID_MODEL_FROM_DATABASE=CX-W / DNP DS80 / Mitsubishi CP3800
usb:v1343p0005*
ID_MODEL_FROM_DATABASE=CY / DNP DSRX
ID_MODEL_FROM_DATABASE=CY / DNP DSRX1
usb:v1343p0006*
ID_MODEL_FROM_DATABASE=CW-02
usb:v1343p0007*
ID_MODEL_FROM_DATABASE=DNP DS80DX
usb:v1343p0008*
ID_MODEL_FROM_DATABASE=CX2 / DNP DS620
usb:v1345*
ID_VENDOR_FROM_DATABASE=Sino Lite Technology Corp.
@ -46580,6 +46682,15 @@ usb:v1347p0413*
usb:v1347p0414*
ID_MODEL_FROM_DATABASE=G1-1400 CCD
usb:v1347p0415*
ID_MODEL_FROM_DATABASE=G1-1200 CCD
usb:v1347p04B0*
ID_MODEL_FROM_DATABASE=Gx CCD-B CCD
usb:v1347p04B1*
ID_MODEL_FROM_DATABASE=Gx CCD-BI CCD
usb:v1348*
ID_VENDOR_FROM_DATABASE=Katsuragawa Electric Co., Ltd.
@ -46643,6 +46754,9 @@ usb:v136B*
usb:v136E*
ID_VENDOR_FROM_DATABASE=Andor Technology Ltd.
usb:v136Ep0012*
ID_MODEL_FROM_DATABASE=iXon Ultra CCD
usb:v136Ep0014*
ID_MODEL_FROM_DATABASE=Zyla 5.5 sCMOS camera
@ -46685,6 +46799,12 @@ usb:v1371p9401*
usb:v1376*
ID_VENDOR_FROM_DATABASE=Vimtron Electronics Co., Ltd.
usb:v1377*
ID_VENDOR_FROM_DATABASE=Sennheiser electronic GmbH & Co. KG
usb:v1377p4000*
ID_MODEL_FROM_DATABASE=HDVD800
usb:v137B*
ID_VENDOR_FROM_DATABASE=SCAPS GmbH
@ -46733,8 +46853,11 @@ usb:v138Ap0010*
usb:v138Ap0011*
ID_MODEL_FROM_DATABASE=VFS5011 Fingerprint Reader
usb:v138Ap0015*
ID_MODEL_FROM_DATABASE=VFS 5011 fingerprint sensor
usb:v138Ap0017*
ID_MODEL_FROM_DATABASE=Fingerprint Reader
ID_MODEL_FROM_DATABASE=VFS 5011 fingerprint sensor
usb:v138Ap0018*
ID_MODEL_FROM_DATABASE=Fingerprint scanner
@ -46751,11 +46874,17 @@ usb:v138Ap003F*
usb:v138Ap0050*
ID_MODEL_FROM_DATABASE=Swipe Fingerprint Sensor
usb:v138Ap0090*
ID_MODEL_FROM_DATABASE=VFS7500 Touch Fingerprint Sensor
usb:v138Ap0091*
ID_MODEL_FROM_DATABASE=VFS7552 Touch Fingerprint Sensor
usb:v138E*
ID_VENDOR_FROM_DATABASE=Jungo LTD
usb:v138Ep9000*
ID_MODEL_FROM_DATABASE=Raisonance S.A. STM32 ARM evaluation board
ID_MODEL_FROM_DATABASE=Raisonance S.A. STM32 ARM evaluation board / RLink dongle
usb:v1390*
ID_VENDOR_FROM_DATABASE=TOMTOM B.V.
@ -46769,6 +46898,9 @@ usb:v1390p5454*
usb:v1390p7474*
ID_MODEL_FROM_DATABASE=GPS Sport Watch [Runner, Multi-Sport]
usb:v1390pA001*
ID_MODEL_FROM_DATABASE=Bandit Action Camera Batt-Stick
usb:v1391*
ID_VENDOR_FROM_DATABASE=IdealTEK, Inc.
@ -46778,6 +46910,12 @@ usb:v1391p1000*
usb:v1395*
ID_VENDOR_FROM_DATABASE=Sennheiser Communications
usb:v1395p0025*
ID_MODEL_FROM_DATABASE=Headset [PC 8]
usb:v1395p0046*
ID_MODEL_FROM_DATABASE=PXC 550
usb:v1395p3556*
ID_MODEL_FROM_DATABASE=USB Headset
@ -46880,6 +47018,12 @@ usb:v13B1p003E*
usb:v13B1p003F*
ID_MODEL_FROM_DATABASE=WUSB6300 802.11a/b/g/n/ac Wireless Adapter [Realtek RTL8812AU]
usb:v13B1p0041*
ID_MODEL_FROM_DATABASE=Gigabit Ethernet Adapter
usb:v13B1p0042*
ID_MODEL_FROM_DATABASE=WUSB6100M 802.11a/b/g/n/ac Wireless Adapter
usb:v13B1p13B1*
ID_MODEL_FROM_DATABASE=WUSB200: Wireless-G Business Network Adapter with Rangebooster
@ -47031,11 +47175,14 @@ usb:v13D3p3244*
ID_MODEL_FROM_DATABASE=DTV-DVB UDTT 7047Z-USB 2.0 DVB-T Driver
usb:v13D3p3247*
ID_MODEL_FROM_DATABASE=802.11 n/g/b Wireless LAN Adapter
ID_MODEL_FROM_DATABASE=AW-NU222 802.11bgn Wireless Module [Ralink RT2770+RT2720]
usb:v13D3p3249*
ID_MODEL_FROM_DATABASE=Internal Bluetooth
usb:v13D3p3250*
ID_MODEL_FROM_DATABASE=Broadcom Bluetooth 2.1
usb:v13D3p3262*
ID_MODEL_FROM_DATABASE=802.11 n/g/b Wireless LAN USB Adapter
@ -47060,6 +47207,9 @@ usb:v13D3p3306*
usb:v13D3p3315*
ID_MODEL_FROM_DATABASE=Bluetooth module
usb:v13D3p3327*
ID_MODEL_FROM_DATABASE=AW-NU137 802.11bgn Wireless Module [Atheros AR9271]
usb:v13D3p3362*
ID_MODEL_FROM_DATABASE=Atheros AR3012 Bluetooth 4.0 Adapter
@ -47096,6 +47246,9 @@ usb:v13D3p5126*
usb:v13D3p5130*
ID_MODEL_FROM_DATABASE=Integrated Webcam
usb:v13D3p5134*
ID_MODEL_FROM_DATABASE=Integrated Webcam
usb:v13D3p5702*
ID_MODEL_FROM_DATABASE=UVC VGA Webcam
@ -47117,6 +47270,9 @@ usb:v13D7*
usb:v13D7p0001*
ID_MODEL_FROM_DATABASE=T5 PATA forensic bridge
usb:v13D7p000C*
ID_MODEL_FROM_DATABASE=T8-R2 forensic bridge
usb:v13DC*
ID_VENDOR_FROM_DATABASE=ALEREON, INC.
@ -47168,6 +47324,9 @@ usb:v13FDp0840*
usb:v13FDp0841*
ID_MODEL_FROM_DATABASE=Samsung SE-T084M DVD-RW
usb:v13FDp0940*
ID_MODEL_FROM_DATABASE=ASUS SBW-06D2X-U
usb:v13FDp1040*
ID_MODEL_FROM_DATABASE=INIC-1511L PATA Bridge
@ -47189,6 +47348,15 @@ usb:v13FDp1840*
usb:v13FDp1E40*
ID_MODEL_FROM_DATABASE=INIC-1610P SATA bridge
usb:v13FDp2040*
ID_MODEL_FROM_DATABASE=Samsung Writemaster external DVD writer
usb:v13FDp3940*
ID_MODEL_FROM_DATABASE=external DVD burner ECD819-SU3
usb:v13FDp3E40*
ID_MODEL_FROM_DATABASE=ZALMAN ZM-VE350
usb:v13FE*
ID_VENDOR_FROM_DATABASE=Kingston Technology Company Inc.
@ -47240,6 +47408,9 @@ usb:v13FEp5000*
usb:v13FEp5100*
ID_MODEL_FROM_DATABASE=Flash Drive
usb:v13FEp5200*
ID_MODEL_FROM_DATABASE=DataTraveler R3.0
usb:v1400*
ID_VENDOR_FROM_DATABASE=Axxion Group Corp.
@ -47252,6 +47423,9 @@ usb:v1403*
usb:v1403p0001*
ID_MODEL_FROM_DATABASE=Digital Photo Frame
usb:v1403p0003*
ID_MODEL_FROM_DATABASE=Digital Photo Frame (DPF-1104)
usb:v1409*
ID_VENDOR_FROM_DATABASE=IDS Imaging Development Systems GmbH
@ -47342,6 +47516,78 @@ usb:v1421*
usb:v1421p0605*
ID_MODEL_FROM_DATABASE=Sentech Camera
usb:v1424*
ID_VENDOR_FROM_DATABASE=Posnet Polska S.A.
usb:v1424p1001*
ID_MODEL_FROM_DATABASE=Temo
usb:v1424p1002*
ID_MODEL_FROM_DATABASE=Thermal
usb:v1424p1003*
ID_MODEL_FROM_DATABASE=Neo
usb:v1424p1004*
ID_MODEL_FROM_DATABASE=Combo DF
usb:v1424p1005*
ID_MODEL_FROM_DATABASE=Thermal-A
usb:v1424p1006*
ID_MODEL_FROM_DATABASE=Thermal FV
usb:v1424p1007*
ID_MODEL_FROM_DATABASE=Bingo HS
usb:v1424p1008*
ID_MODEL_FROM_DATABASE=Thermal HS FV
usb:v1424p1009*
ID_MODEL_FROM_DATABASE=Thermal FV EJ
usb:v1424p100A*
ID_MODEL_FROM_DATABASE=Thermal HD
usb:v1424p100B*
ID_MODEL_FROM_DATABASE=Thermal
usb:v1424p100C*
ID_MODEL_FROM_DATABASE=Neo
usb:v1424p100D*
ID_MODEL_FROM_DATABASE=Ergo
usb:v1424p100E*
ID_MODEL_FROM_DATABASE=Trio
usb:v1424p1010*
ID_MODEL_FROM_DATABASE=Thermal HS FV EJ
usb:v1424p1011*
ID_MODEL_FROM_DATABASE=Neo EJ
usb:v1424p1012*
ID_MODEL_FROM_DATABASE=Thermal-A
usb:v1424p1013*
ID_MODEL_FROM_DATABASE=Thermal-A EJ
usb:v1424p1014*
ID_MODEL_FROM_DATABASE=Mobile
usb:v1424p1015*
ID_MODEL_FROM_DATABASE=Temo HS
usb:v1424p1016*
ID_MODEL_FROM_DATABASE=Mobile HS
usb:v1424p1017*
ID_MODEL_FROM_DATABASE=TH230+ FV EJ
usb:v1424p1018*
ID_MODEL_FROM_DATABASE=4610-1NR FV EJ
usb:v1429*
ID_VENDOR_FROM_DATABASE=Vega Technologies Industrial (Austria) Co.
@ -47423,6 +47669,48 @@ usb:v1446p6A73*
usb:v1446p6A78*
ID_MODEL_FROM_DATABASE=DYMO Endicia 75lb Digital Scale
usb:v1451*
ID_VENDOR_FROM_DATABASE=Force Dimension
usb:v1451p0301*
ID_MODEL_FROM_DATABASE=haptic device
usb:v1451p0302*
ID_MODEL_FROM_DATABASE=haptic device
usb:v1451p0400*
ID_MODEL_FROM_DATABASE=haptic device
usb:v1451p0401*
ID_MODEL_FROM_DATABASE=delta.x haptic device
usb:v1451p0402*
ID_MODEL_FROM_DATABASE=omega.x haptic device
usb:v1451p0403*
ID_MODEL_FROM_DATABASE=sigma.x haptic device
usb:v1451p0404*
ID_MODEL_FROM_DATABASE=haptic controller
usb:v1451p0405*
ID_MODEL_FROM_DATABASE=dedicated haptic device
usb:v1451p0406*
ID_MODEL_FROM_DATABASE=dedicated haptic device
usb:v1451p0407*
ID_MODEL_FROM_DATABASE=dedicated haptic device
usb:v1451p0408*
ID_MODEL_FROM_DATABASE=dedicated haptic device
usb:v1452*
ID_VENDOR_FROM_DATABASE=Dai Nippon Printing, Inc
usb:v1452p8B01*
ID_MODEL_FROM_DATABASE=DS620
usb:v1453*
ID_VENDOR_FROM_DATABASE=Radio Shack
@ -47475,7 +47763,7 @@ usb:v145F*
ID_VENDOR_FROM_DATABASE=Trust
usb:v145Fp0106*
ID_MODEL_FROM_DATABASE=Trust K56 V92 USB Modem
ID_MODEL_FROM_DATABASE=K56 V92 Modem
usb:v145Fp013D*
ID_MODEL_FROM_DATABASE=PC Camera (SN9C201 + OV7660)
@ -47672,6 +47960,9 @@ usb:v148Fp7601*
usb:v148Fp760B*
ID_MODEL_FROM_DATABASE=MT7601U Wireless Adapter
usb:v148Fp761A*
ID_MODEL_FROM_DATABASE=MT7610U ("Archer T2U" 2.4G+5G WLAN Adapter
usb:v148Fp9020*
ID_MODEL_FROM_DATABASE=RT2500USB Wireless Adapter
@ -47684,6 +47975,9 @@ usb:v1491*
usb:v1491p0020*
ID_MODEL_FROM_DATABASE=FS81 Fingerprint Scanner Module
usb:v1491p0088*
ID_MODEL_FROM_DATABASE=Fingerprint Scanner Model FS88
usb:v1493*
ID_VENDOR_FROM_DATABASE=Suunto
@ -47819,6 +48113,9 @@ usb:v14C2p0350*
usb:v14C8*
ID_VENDOR_FROM_DATABASE=Zytronic
usb:v14C8p0005*
ID_MODEL_FROM_DATABASE=Touchscreen Controller
usb:v14CD*
ID_VENDOR_FROM_DATABASE=Super Top
@ -47858,6 +48155,12 @@ usb:v14CDp8123*
usb:v14CDp8125*
ID_MODEL_FROM_DATABASE=SD MMC Reader
usb:v14CDp8601*
ID_MODEL_FROM_DATABASE=4-Port hub
usb:v14CDp8608*
ID_MODEL_FROM_DATABASE=Hub [Super Top]
usb:v14D8*
ID_VENDOR_FROM_DATABASE=JAMER INDUSTRIES CO., LTD.
@ -48092,12 +48395,24 @@ usb:v152D*
usb:v152Dp0539*
ID_MODEL_FROM_DATABASE=JMS539/567 SuperSpeed SATA II/III 3.0G/6.0G Bridge
usb:v152Dp0551*
ID_MODEL_FROM_DATABASE=JMS551 SuperSpeed two ports SATA 3Gb/s bridge
usb:v152Dp0561*
ID_MODEL_FROM_DATABASE=JMS551 - Sharkoon SATA QuickPort Duo
usb:v152Dp0567*
ID_MODEL_FROM_DATABASE=JMS567 SATA 6Gb/s bridge
usb:v152Dp0578*
ID_MODEL_FROM_DATABASE=JMS567 SATA 6Gb/s bridge
usb:v152Dp0770*
ID_MODEL_FROM_DATABASE=Alienware Integrated Webcam
usb:v152Dp1561*
ID_MODEL_FROM_DATABASE=JMS561U two ports SATA 6Gb/s bridge
usb:v152Dp2329*
ID_MODEL_FROM_DATABASE=JM20329 SATA Bridge
@ -48120,16 +48435,19 @@ usb:v152Dp2352*
ID_MODEL_FROM_DATABASE=ATA/ATAPI Bridge
usb:v152Dp2509*
ID_MODEL_FROM_DATABASE=JMS539 SuperSpeed SATA II 3.0G Bridge
ID_MODEL_FROM_DATABASE=JMS539, JMS551 SATA 3Gb/s bridge
usb:v152Dp2551*
ID_MODEL_FROM_DATABASE=JMS551 SATA 3Gb/s bridge
usb:v152Dp2561*
ID_MODEL_FROM_DATABASE=CEB-2235S-U3 external RAID box
usb:v152Dp2566*
ID_MODEL_FROM_DATABASE=JMS566 SATA 3Gb/s bridge
usb:v152Dp2590*
ID_MODEL_FROM_DATABASE=Seatay ATA/ATAPI Bridge
ID_MODEL_FROM_DATABASE=JMS567 SATA 6Gb/s bridge
usb:v152Dp3562*
ID_MODEL_FROM_DATABASE=JMS567 SATA 6Gb/s bridge
@ -48174,14 +48492,35 @@ usb:v1532p001C*
ID_MODEL_FROM_DATABASE=RZ01-0036 Optical Gaming Mouse [Abyssus]
usb:v1532p0024*
ID_MODEL_FROM_DATABASE=Razer Mamba
ID_MODEL_FROM_DATABASE=Mamba
usb:v1532p002E*
ID_MODEL_FROM_DATABASE=RZ01-0058 Gaming Mouse [Naga]
usb:v1532p002F*
ID_MODEL_FROM_DATABASE=Imperator 2012
usb:v1532p0036*
ID_MODEL_FROM_DATABASE=RZ01-0075, Gaming Mouse [Naga Hex]
usb:v1532p0042*
ID_MODEL_FROM_DATABASE=Abyssus 2014
usb:v1532p0043*
ID_MODEL_FROM_DATABASE=DeathAdder Chroma
usb:v1532p0044*
ID_MODEL_FROM_DATABASE=Mamba Chroma (Wired)
usb:v1532p0045*
ID_MODEL_FROM_DATABASE=Mamba Chroma (Wireless)
usb:v1532p0046*
ID_MODEL_FROM_DATABASE=Mamba 2015 Tournament Edition [RZ01-01370100-R3]
usb:v1532p0048*
ID_MODEL_FROM_DATABASE=Orochi (Wired)
usb:v1532p0101*
ID_MODEL_FROM_DATABASE=Copperhead Mouse
@ -48191,12 +48530,51 @@ usb:v1532p0102*
usb:v1532p0109*
ID_MODEL_FROM_DATABASE=Lycosa Keyboard
usb:v1532p010D*
ID_MODEL_FROM_DATABASE=BlackWidow Ultimate 2012
usb:v1532p0113*
ID_MODEL_FROM_DATABASE=RZ07-0074 Gaming Keypad [Orbweaver]
usb:v1532p0118*
ID_MODEL_FROM_DATABASE=RZ03-0080, Gaming Keyboard [Deathstalker]
usb:v1532p011A*
ID_MODEL_FROM_DATABASE=BlackWidow Ultimate 2013
usb:v1532p011B*
ID_MODEL_FROM_DATABASE=BlackWidow Classic
usb:v1532p0203*
ID_MODEL_FROM_DATABASE=BlackWidow Chroma
usb:v1532p0205*
ID_MODEL_FROM_DATABASE=Blade Stealth
usb:v1532p0208*
ID_MODEL_FROM_DATABASE=Tartarus
usb:v1532p0209*
ID_MODEL_FROM_DATABASE=BlackWidow Tournament Edition Chroma
usb:v1532p0214*
ID_MODEL_FROM_DATABASE=BlackWidow Ultimate 2016
usb:v1532p0216*
ID_MODEL_FROM_DATABASE=BlackWidow X Chroma
usb:v1532p021A*
ID_MODEL_FROM_DATABASE=BlackWidow X Tournament Edition Chroma
usb:v1532p0220*
ID_MODEL_FROM_DATABASE=Blade Stealth (2016)
usb:v1532p0300*
ID_MODEL_FROM_DATABASE=RZ06-0063 Motion Sensing Controllers [Hydra]
usb:v1532p0C00*
ID_MODEL_FROM_DATABASE=Firefly
usb:v153B*
ID_VENDOR_FROM_DATABASE=TerraTec Electronic GmbH
@ -48209,8 +48587,23 @@ usb:v153Bp1182*
usb:v1546*
ID_VENDOR_FROM_DATABASE=U-Blox AG
usb:v1546p01A4*
ID_MODEL_FROM_DATABASE=Antaris 4
usb:v1546p01A5*
ID_MODEL_FROM_DATABASE=NL-402U
ID_MODEL_FROM_DATABASE=[u-blox 5]
usb:v1546p01A6*
ID_MODEL_FROM_DATABASE=[u-blox 6]
usb:v1546p01A7*
ID_MODEL_FROM_DATABASE=[u-blox 7]
usb:v1546p01A8*
ID_MODEL_FROM_DATABASE=[u-blox 8]
usb:v1546p1102*
ID_MODEL_FROM_DATABASE=LISA-U2
usb:v1547*
ID_VENDOR_FROM_DATABASE=SG Intec Ltd & Co KG
@ -48650,6 +49043,9 @@ usb:v15F4p0001*
usb:v15F4p0025*
ID_MODEL_FROM_DATABASE=HanfTek UMT-010 USB2.0 DVB-T (warm)
usb:v15F4p0135*
ID_MODEL_FROM_DATABASE=Astrometa T2hybrid
usb:v1604*
ID_VENDOR_FROM_DATABASE=Tascam
@ -48671,6 +49067,12 @@ usb:v1604p8006*
usb:v1604p8007*
ID_MODEL_FROM_DATABASE=US-122 Audio/Midi Interface
usb:v1605*
ID_VENDOR_FROM_DATABASE=ACCES I/O Products, Inc.
usb:v1605p0001*
ID_MODEL_FROM_DATABASE=DIO-32 (No Firmware Yet)
usb:v1606*
ID_VENDOR_FROM_DATABASE=Umax
@ -48986,6 +49388,12 @@ usb:v1617p2002*
usb:v1619*
ID_VENDOR_FROM_DATABASE=L & K Precision Technology Co., Ltd.
usb:v161C*
ID_VENDOR_FROM_DATABASE=Digitech Systems
usb:v161Cp0002*
ID_MODEL_FROM_DATABASE=DTC-02U [Digi Touch Controller]
usb:v1621*
ID_VENDOR_FROM_DATABASE=Wionics Research
@ -49133,6 +49541,12 @@ usb:v165C*
usb:v165Cp0002*
ID_MODEL_FROM_DATABASE=Serial Adapter
usb:v165Cp0006*
ID_MODEL_FROM_DATABASE=FT232 [ICS adapter HS]
usb:v165Cp0008*
ID_MODEL_FROM_DATABASE=FT232 [Dual adapter HS]
usb:v1660*
ID_VENDOR_FROM_DATABASE=Creatix Polymedia GmbH
@ -49257,7 +49671,16 @@ usb:v1681p0001*
ID_MODEL_FROM_DATABASE=Tuner's Dashboard
usb:v1681p0002*
ID_MODEL_FROM_DATABASE=Tubachron
ID_MODEL_FROM_DATABASE=DocuBrain(R) Tubachron
usb:v1681p0003*
ID_MODEL_FROM_DATABASE=DocuBrain(R) I2C
usb:v1681p0004*
ID_MODEL_FROM_DATABASE=DocuBrain(R) WWVB Receiver
usb:v1681p0005*
ID_MODEL_FROM_DATABASE=DocuBrain(R) WWVB Transmitter
usb:v1682*
ID_VENDOR_FROM_DATABASE=Maxwise Production Enterprise Ltd.
@ -49637,6 +50060,9 @@ usb:v16CC*
usb:v16D0*
ID_VENDOR_FROM_DATABASE=MCS
usb:v16D0p0436*
ID_MODEL_FROM_DATABASE=Xylanta Ltd, XSP Device
usb:v16D0p0498*
ID_MODEL_FROM_DATABASE=Braintechnology USB-LPS
@ -49649,6 +50075,9 @@ usb:v16D0p054B*
usb:v16D0p05BE*
ID_MODEL_FROM_DATABASE=EasyLogic Board
usb:v16D0p06CC*
ID_MODEL_FROM_DATABASE=Trinamic TMCM-3110
usb:v16D0p06F9*
ID_MODEL_FROM_DATABASE=Gabotronics Xminilab
@ -49667,6 +50096,12 @@ usb:v16D0p080A*
usb:v16D0p0870*
ID_MODEL_FROM_DATABASE=Kaufmann Automotive GmbH, RKS+CAN Interface
usb:v16D0p0B03*
ID_MODEL_FROM_DATABASE=AIS Receiver [dAISy]
usb:v16D0p0BD4*
ID_MODEL_FROM_DATABASE=codesrc SCSI2SD
usb:v16D1*
ID_VENDOR_FROM_DATABASE=Suprema Inc.
@ -49757,6 +50192,9 @@ usb:v16DCp0012*
usb:v16DCp0015*
ID_MODEL_FROM_DATABASE=CML Control, Measurement and Data Logging System
usb:v16DE*
ID_VENDOR_FROM_DATABASE=Telemecanique
usb:v16DF*
ID_VENDOR_FROM_DATABASE=King Billion Electronics Co., Ltd.
@ -49889,6 +50327,15 @@ usb:v1737p0078*
usb:v1737p0079*
ID_MODEL_FROM_DATABASE=WUSB600N v2 Dual-Band Wireless-N Network Adapter [Ralink RT3572]
usb:v173A*
ID_VENDOR_FROM_DATABASE=Roche
usb:v173Ap2198*
ID_MODEL_FROM_DATABASE=Accu-Chek Mobile
usb:v173Ap21CA*
ID_MODEL_FROM_DATABASE=ACCU-CHEK Mobile Model U1
usb:v173D*
ID_VENDOR_FROM_DATABASE=QSENN
@ -49952,8 +50399,11 @@ usb:v1748p0101*
usb:v174C*
ID_VENDOR_FROM_DATABASE=ASMedia Technology Inc.
usb:v174Cp07D1*
ID_MODEL_FROM_DATABASE=Transcend ESD400 Portable SSD (USB 3.0)
usb:v174Cp1153*
ID_MODEL_FROM_DATABASE=ASM2115 SATA 6Gb/s bridge
ID_MODEL_FROM_DATABASE=ASM1153 SATA 3Gb/s bridge
usb:v174Cp2074*
ID_MODEL_FROM_DATABASE=ASM1074 High-Speed hub
@ -49965,10 +50415,13 @@ usb:v174Cp5106*
ID_MODEL_FROM_DATABASE=ASM1051 SATA 3Gb/s bridge
usb:v174Cp5136*
ID_MODEL_FROM_DATABASE=ASM1053 SATA 6Gb/s bridge
ID_MODEL_FROM_DATABASE=ASM1053 SATA 3Gb/s bridge
usb:v174Cp51D6*
ID_MODEL_FROM_DATABASE=ASM1051W SATA 3Gb/s bridge
usb:v174Cp55AA*
ID_MODEL_FROM_DATABASE=ASM1051E SATA 6Gb/s bridge, ASM1053E SATA 6Gb/s bridge, ASM1153 SATA 3Gb/s bridge
ID_MODEL_FROM_DATABASE=Name: ASM1051E SATA 6Gb/s bridge, ASM1053E SATA 6Gb/s bridge, ASM1153 SATA 3Gb/s bridge, ASM1153E SATA 6Gb/s bridge
usb:v174F*
ID_VENDOR_FROM_DATABASE=Syntek
@ -53921,6 +54374,15 @@ usb:v1E7Dp2D51*
usb:v1E7Dp30D4*
ID_MODEL_FROM_DATABASE=Arvo Keyboard
usb:v1EA7*
ID_VENDOR_FROM_DATABASE=SHARKOON Technologies GmbH
usb:v1EA7p0066*
ID_MODEL_FROM_DATABASE=[Mediatrack Edge Mini Keyboard]
usb:v1EA7p2007*
ID_MODEL_FROM_DATABASE=SHARK ZONE K30 Illuminated Gaming Keyboard
usb:v1EBB*
ID_VENDOR_FROM_DATABASE=NuCORE Technology, Inc.
@ -55712,6 +56174,18 @@ usb:v2931p0A05*
usb:v2931p0AFE*
ID_MODEL_FROM_DATABASE=Jolla charging only
usb:v2939*
ID_VENDOR_FROM_DATABASE=Zaber Technologies Inc.
usb:v2939p4959*
ID_MODEL_FROM_DATABASE=A-MCB2
usb:v2939p495A*
ID_MODEL_FROM_DATABASE=X-MCB1
usb:v2939p495B*
ID_MODEL_FROM_DATABASE=X-MCB2
usb:v2A03*
ID_VENDOR_FROM_DATABASE=dog hunter AG

View File

@ -0,0 +1,89 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<table>
<thead><tr><th>Company</th><th>ACPI ID</th><th>Approved on Date</th></tr></thead> <tbody> <tr class="odd"><td>Aava Mobile Oy</td><td>AAVA</td><td>04/02/2014</td> </tr>
<tr class="even"><td>AMD</td><td>AMDI</td><td>08/06/2014</td> </tr>
<tr class="odd"><td>Applied Micro Circuits Corporation</td><td>APMC</td><td>11/14/2013</td> </tr>
<tr class="even"><td>Aptina Imaging Corporation</td><td>APTA</td><td>10/28/2013</td> </tr>
<tr class="odd"><td>ARM Ltd.</td><td>ARMH</td><td>08/13/2012</td> </tr>
<tr class="even"><td>ARM Ltd.</td><td>ARML</td><td>02/24/2015</td> </tr>
<tr class="odd"><td>ASUS</td><td>ASUS</td><td>09/13/2012</td> </tr>
<tr class="even"><td>Atmel</td><td>ATML</td><td>11/17/2011</td> </tr>
<tr class="odd"><td>AuthenTec</td><td>AUTH</td><td>06/01/2012</td> </tr>
<tr class="even"><td>Broadcom Corporation</td><td>BRCM</td><td>05/14/2015</td> </tr>
<tr class="odd"><td>Capella Microsystems Inc.</td><td>CPLM</td><td>05/09/2012</td> </tr>
<tr class="even"><td>Dell, Inc.</td><td>DLLK</td><td>04/17/2012</td> </tr>
<tr class="odd"><td>Dell, Inc.</td><td>DELL</td><td>07/26/2012</td> </tr>
<tr class="even"><td>ELAN MICROELECTRONICS CORPORATION</td><td>ELAN</td><td>11/14/2014</td> </tr>
<tr class="odd"><td>Everest Semiconductor Co., Ltd.</td><td>ESSX</td><td>11/17/2014</td> </tr>
<tr class="even"><td>FocalTech Systems Co., Ltd.</td><td>FTSC</td><td>07/23/2013</td> </tr>
<tr class="odd"><td>Freescale, Inc</td><td>FRSC</td><td>01/01/2010</td> </tr>
<tr class="even"><td>Fuzhou Rockchip Electronics Co., Ltd.</td><td>RKCP</td><td>07/20/2015</td> </tr>
<tr class="odd"><td>Google, Inc.</td><td>GOOG</td><td>12/05/2013</td> </tr>
<tr class="even"><td>Hewlett-Packard Company</td><td>HPQC</td><td>11/26/2012</td> </tr>
<tr class="odd"><td>Hewlett Packard Enterprise</td><td>HWPE</td><td>01/15/2015</td> </tr>
<tr class="even"><td>Himax Technologies, Inc.</td><td>HIMX</td><td>03/19/2014</td> </tr>
<tr class="odd"><td>HiSilicon Technologies Co., Ltd.</td><td>HISI</td><td>11/14/2014</td> </tr>
<tr class="even"><td>HP Inc. </td><td>HPIC</td><td>01/15/2015</td> </tr>
<tr class="odd"><td>HTBLuVA Mödling</td><td>HTLM</td><td>02/18/2014</td> </tr>
<tr class="even"><td>IBM</td><td>IBMX</td><td>11/15/2012</td> </tr>
<tr class="odd"><td>Impinj</td><td>IMPJ</td><td>08/14/2012</td> </tr>
<tr class="even"><td>Inphi Corporation</td><td>IPHI</td><td>07/15/2014</td> </tr>
<tr class="odd"><td>Intel Corporation</td><td>ACPI</td><td>11/18/2011</td> </tr>
<tr class="even"><td>Intel Corporation</td><td>INTC</td><td>01/01/2010</td> </tr>
<tr class="odd"><td>Intel Corporation</td><td>INTL</td><td>01/01/2010</td> </tr>
<tr class="even"><td>Invensense, Inc</td><td>INVN</td><td>02/09/2012</td> </tr>
<tr class="odd"><td>IP3 Technology Ltd.</td><td>IP3T</td><td>11/11/2013</td> </tr>
<tr class="even"><td>Kionix, Inc.</td><td>KIOX</td><td>12/23/2013</td> </tr>
<tr class="odd"><td>Lenovo Beijing Co. Ltd.</td><td>IDEA</td><td>05/22/2012</td> </tr>
<tr class="even"><td>Linaro, Ltd.</td><td>LNRO</td><td>11/26/2013</td> </tr>
<tr class="odd"><td>Microsoft Corporation</td><td>MSAY</td><td>03/01/2012</td> </tr>
<tr class="even"><td>Microsoft Corporation</td><td>MSFT</td><td>01/01/2010</td> </tr>
<tr class="odd"><td>Microsoft Corporation</td><td>MSHW</td><td>01/10/2011</td> </tr>
<tr class="even"><td>MIPI Alliance</td><td>MIPI</td><td>04/17/2015</td> </tr>
<tr class="odd"><td>Nuvoton Technology Corporation</td><td>NVTN</td><td>11/14/2014</td> </tr>
<tr class="even"><td>Nvidia</td><td>NVDA</td><td>01/01/2010</td> </tr>
<tr class="odd"><td>OmniVision Technologies, Inc.</td><td>OVTI</td><td>02/26/2014</td> </tr>
<tr class="even"><td>Pegatron Corporation</td><td>PEGA</td><td>08/27/2013</td> </tr>
<tr class="odd"><td>Qualcomm Inc</td><td>QCOM</td><td>01/01/2010</td> </tr>
<tr class="even"><td>REALTEK Semiconductor Corp. </td><td>OBDA</td><td>11/07/2013</td> </tr>
<tr class="odd"><td>Red Hat, Inc.</td><td>QEMU</td><td>07/30/2015</td> </tr>
<tr class="even"><td>Robert Bosch GmbH</td><td>BOSC</td><td>05/16/2014</td> </tr>
<tr class="odd"><td>Rozsnyó, s.r.o.</td><td>RZSN</td><td>03/24/2014</td> </tr>
<tr class="even"><td>Sharp Corporation</td><td>SHRP</td><td>01/27/2015</td> </tr>
<tr class="odd"><td>Shenzhen DSO Microelectronics Co.,Ltd.</td><td>DSUO</td><td>10/10/2013</td> </tr>
<tr class="even"><td>Shenzhen South-Top Computer Co., Ltd.</td><td>ST86</td><td>12/06/2013</td> </tr>
<tr class="odd"><td>Shenzhen three Connaught Information Technology Co., Ltd. (3nod Group)</td><td>3NOD</td><td>09/23/2013</td> </tr>
<tr class="even"><td>Sierra Wireless</td><td>SWEM</td><td>01/22/2013</td> </tr>
<tr class="odd"><td>Sony Corporation</td><td>SONY</td><td>09/12/2012</td> </tr>
<tr class="even"><td>Synaptics Inc</td><td>SYNA</td><td>11/17/2011</td> </tr>
<tr class="odd"><td>Teracue AG</td><td>TCAG</td><td>12/07/2012</td> </tr>
<tr class="even"><td>Texas Instruments</td><td>TXNW</td><td>01/01/2010</td> </tr>
<tr class="odd"><td>The Linux Foundation</td><td>LNUX</td><td>04/04/2014</td> </tr>
<tr class="even"><td>Toshiba Corporation</td><td>TOSB</td><td>07/07/2015</td> </tr>
<tr class="odd"><td>VAIO Corporation</td><td>VAIO</td><td>04/18/2014</td> </tr>
<tr class="even"><td>Validity Sensors, Inc</td><td>VFSI</td><td>06/17/2013</td> </tr>
<tr class="odd"><td>Wacom</td><td>WCOM</td><td>11/17/2011</td> </tr>
<tr class="even"><td>Winsider Seminars &amp; Solutions Inc.</td><td>WSDR</td><td>07/07/2015</td> </tr>
<tr class="odd"><td>Maxim Integrated</td><td>MXIM</td><td>10/16/2015</td> </tr>
<tr class="even"><td>Xiaomi Inc.</td><td>XMCC</td><td>12/08/2015</td> </tr>
<tr class="odd"><td>u-blox AG</td><td>UBLX</td><td>12/08/2015</td> </tr>
<tr class="even"><td>Raydium Semiconductor Corporation</td><td>RAYD</td><td>04/13/2016</td> </tr>
<tr class="odd"><td>Dialog Semiconductor PLC</td><td>DLGS</td><td>04/27/2016</td> </tr>
<tr class="even"><td>OmniPreSense</td><td>OMPS</td><td>05/25/2016</td> </tr>
<tr class="odd"><td>CoreOS, Inc</td><td>CORE</td><td>07/01/2016</td> </tr>
<tr class="even"><td>Microchip Technology Inc</td><td>MCHP</td><td>08/03/2016</td> </tr>
<tr class="odd"><td>Green Hills Software</td><td>GHSW</td><td>08/11/2016</td> </tr>
<tr class="even"><td>AAEON Technology Inc.</td><td>AANT</td><td>09/01/2016</td> </tr>
<tr class="odd"><td>VR Technology Holdings Limited </td><td>3GVR</td><td>01/19/2017</td> </tr>
<tr class="even"><td>Exar Corporation</td><td>EXAR</td><td>02/28/2017</td> </tr>
<tr class="odd"><td>Coreboot Project</td><td>BOOT</td><td>02/28/2017</td> </tr>
<tr class="even"><td>Marvell Technology Group Ltd.</td><td>MRVL</td><td>05/25/2017</td> </tr>
<tr class="odd"><td>IHSE GmbH</td><td>IHSE</td><td>06/22/2017</td> </tr>
</tbody>
</table>
</body>
</html>

365
hwdb/ids_parser.py Executable file
View File

@ -0,0 +1,365 @@
#!/usr/bin/env python3
import re
import sys
from pyparsing import (Word, White, Literal, Regex,
LineEnd, SkipTo,
ZeroOrMore, OneOrMore, Combine, Optional, Suppress,
stringEnd, pythonStyleComment)
EOL = LineEnd().suppress()
NUM1 = Word('0123456789abcdefABCDEF', exact=1)
NUM2 = Word('0123456789abcdefABCDEF', exact=2)
NUM3 = Word('0123456789abcdefABCDEF', exact=3)
NUM4 = Word('0123456789abcdefABCDEF', exact=4)
NUM6 = Word('0123456789abcdefABCDEF', exact=6)
TAB = White('\t', exact=1).suppress()
COMMENTLINE = pythonStyleComment + EOL
EMPTYLINE = LineEnd()
text_eol = lambda name: Regex(r'[^\n]+')(name) + EOL
# text_eol = lambda name: Word(printables + ' ' + '®üäßçõãİó ×²⁶´‐“\u200E\u200B')(name) + EOL
def klass_grammar():
klass_line = Literal('C ').suppress() + NUM2('klass') + text_eol('text')
subclass_line = TAB + NUM2('subclass') + text_eol('text')
protocol_line = TAB + TAB + NUM2('protocol') + text_eol('name')
subclass = (subclass_line('SUBCLASS') -
ZeroOrMore(protocol_line('PROTOCOLS*')
^ COMMENTLINE.suppress()))
klass = (klass_line('KLASS') -
ZeroOrMore(subclass('SUBCLASSES*')
^ COMMENTLINE.suppress()))
return klass
def usb_ids_grammar():
vendor_line = NUM4('vendor') + text_eol('text')
device_line = TAB + NUM4('device') + text_eol('text')
vendor = (vendor_line('VENDOR') +
ZeroOrMore(device_line('VENDOR_DEV*') ^ COMMENTLINE.suppress()))
klass = klass_grammar()
other_line = (Literal('AT ') ^ Literal('HID ') ^ Literal('R ')
^ Literal('PHY ') ^ Literal('BIAS ') ^ Literal('HUT ')
^ Literal('L ') ^ Literal('VT ') ^ Literal('HCC ')) + text_eol('text')
other_group = (other_line - ZeroOrMore(TAB + text_eol('text')))
commentgroup = OneOrMore(COMMENTLINE).suppress() ^ EMPTYLINE.suppress()
grammar = OneOrMore(vendor('VENDORS*') ^ klass('CLASSES*')
^ other_group.suppress() ^ commentgroup) + stringEnd()
grammar.parseWithTabs()
return grammar
def pci_ids_grammar():
vendor_line = NUM4('vendor') + text_eol('text')
device_line = TAB + NUM4('device') + text_eol('text')
subvendor_line = TAB + TAB + NUM4('a') + White(' ') + NUM4('b') + text_eol('name')
device = (device_line('DEVICE') +
ZeroOrMore(subvendor_line('SUBVENDORS*') ^ COMMENTLINE.suppress()))
vendor = (vendor_line('VENDOR') +
ZeroOrMore(device('DEVICES*') ^ COMMENTLINE.suppress()))
klass = klass_grammar()
commentgroup = OneOrMore(COMMENTLINE).suppress() ^ EMPTYLINE.suppress()
grammar = OneOrMore(vendor('VENDORS*') ^ klass('CLASSES*')
^ commentgroup) + stringEnd()
grammar.parseWithTabs()
return grammar
def sdio_ids_grammar():
vendor_line = NUM4('vendor') + text_eol('text')
device_line = TAB + NUM4('device') + text_eol('text')
vendor = (vendor_line('VENDOR') +
ZeroOrMore(device_line('DEVICES*') ^ COMMENTLINE.suppress()))
klass = klass_grammar()
commentgroup = OneOrMore(COMMENTLINE).suppress() ^ EMPTYLINE.suppress()
grammar = OneOrMore(vendor('VENDORS*') ^ klass('CLASSES*') ^ commentgroup) + stringEnd()
grammar.parseWithTabs()
return grammar
def oui_grammar(type):
prefix_line = (Combine(NUM2 - Suppress('-') - NUM2 - Suppress('-') - NUM2)('prefix')
- Literal('(hex)') - text_eol('text'))
if type == 'small':
vendor_line = (NUM3('start') - '000-' - NUM3('end') - 'FFF'
- Literal('(base 16)') - text_eol('text2'))
elif type == 'medium':
vendor_line = (NUM1('start') - '00000-' - NUM1('end') - 'FFFFF'
- Literal('(base 16)') - text_eol('text2'))
else:
assert type == 'large'
vendor_line = (NUM6('start')
- Literal('(base 16)') - text_eol('text2'))
extra_line = TAB - TAB - TAB - TAB - SkipTo(EOL)
vendor = prefix_line + vendor_line + ZeroOrMore(extra_line) + Optional(EMPTYLINE)
grammar = (Literal('OUI') + text_eol('header')
+ text_eol('header') + text_eol('header') + EMPTYLINE
+ OneOrMore(vendor('VENDORS*')) + stringEnd())
grammar.parseWithTabs()
return grammar
def header(file, *sources):
print('''\
# This file is part of systemd.
#
# Data imported from:{}{}'''.format(' ' if len(sources) == 1 else '\n# ',
'\n# '.join(sources)),
file=file)
def add_item(items, key, value):
if key in items:
print(f'Ignoring duplicate entry: {key} = "{items[key]}", "{value}"')
else:
items[key] = value
def usb_vendor_model(p):
items = {}
for vendor_group in p.VENDORS:
vendor = vendor_group.VENDOR.vendor.upper()
text = vendor_group.VENDOR.text.strip()
add_item(items, (vendor,), text)
for vendor_dev in vendor_group.VENDOR_DEV:
device = vendor_dev.device.upper()
text = vendor_dev.text.strip()
add_item(items, (vendor, device), text)
with open('20-usb-vendor-model.hwdb', 'wt') as out:
header(out, 'http://www.linux-usb.org/usb.ids')
for key in sorted(items):
if len(key) == 1:
p, n = 'usb:v{}*', 'VENDOR'
else:
p, n = 'usb:v{}p{}*', 'MODEL',
print('', p.format(*key),
f' ID_{n}_FROM_DATABASE={items[key]}', sep='\n', file=out)
print(f'Wrote {out.name}')
def usb_classes(p):
items = {}
for klass_group in p.CLASSES:
klass = klass_group.KLASS.klass.upper()
text = klass_group.KLASS.text.strip()
if klass != '00' and not re.match(r'(\?|None|Unused)\s*$', text):
add_item(items, (klass,), text)
for subclass_group in klass_group.SUBCLASSES:
subclass = subclass_group.subclass.upper()
text = subclass_group.text.strip()
if subclass != '00' and not re.match(r'(\?|None|Unused)\s*$', text):
add_item(items, (klass, subclass), text)
for protocol_group in subclass_group.PROTOCOLS:
protocol = protocol_group.protocol.upper()
text = protocol_group.name.strip()
if klass != '00' and not re.match(r'(\?|None|Unused)\s*$', text):
add_item(items, (klass, subclass, protocol), text)
with open('20-usb-classes.hwdb', 'wt') as out:
header(out, 'http://www.linux-usb.org/usb.ids')
for key in sorted(items):
if len(key) == 1:
p, n = 'usb:v*p*d*dc{}*', 'CLASS'
elif len(key) == 2:
p, n = 'usb:v*p*d*dc{}dsc{}*', 'SUBCLASS'
else:
p, n = 'usb:v*p*d*dc{}dsc{}dp{}*', 'PROTOCOL'
print('', p.format(*key),
f' ID_USB_{n}_FROM_DATABASE={items[key]}', sep='\n', file=out)
print(f'Wrote {out.name}')
def pci_vendor_model(p):
items = {}
for vendor_group in p.VENDORS:
vendor = vendor_group.VENDOR.vendor.upper()
text = vendor_group.VENDOR.text.strip()
add_item(items, (vendor,), text)
for device_group in vendor_group.DEVICES:
device = device_group.device.upper()
text = device_group.text.strip()
add_item(items, (vendor, device), text)
for subvendor_group in device_group.SUBVENDORS:
sub_vendor = subvendor_group.a.upper()
sub_model = subvendor_group.b.upper()
sub_text = subvendor_group.name.strip()
if sub_text.startswith(text):
sub_text = sub_text[len(text):].lstrip()
if sub_text:
sub_text = f' ({sub_text})'
add_item(items, (vendor, device, sub_vendor, sub_model), text + sub_text)
with open('20-pci-vendor-model.hwdb', 'wt') as out:
header(out, 'http://pci-ids.ucw.cz/v2.2/pci.ids')
for key in sorted(items):
if len(key) == 1:
p, n = 'pci:v0000{}*', 'VENDOR'
elif len(key) == 2:
p, n = 'pci:v0000{}d0000{}*', 'MODEL'
else:
p, n = 'pci:v0000{}d0000{}sv0000{}sd0000{}*', 'MODEL'
print('', p.format(*key),
f' ID_{n}_FROM_DATABASE={items[key]}', sep='\n', file=out)
print(f'Wrote {out.name}')
def pci_classes(p):
items = {}
for klass_group in p.CLASSES:
klass = klass_group.KLASS.klass.upper()
text = klass_group.KLASS.text.strip()
add_item(items, (klass,), text)
for subclass_group in klass_group.SUBCLASSES:
subclass = subclass_group.subclass.upper()
text = subclass_group.text.strip()
add_item(items, (klass, subclass), text)
for protocol_group in subclass_group.PROTOCOLS:
protocol = protocol_group.protocol.upper()
text = protocol_group.name.strip()
add_item(items, (klass, subclass, protocol), text)
with open('20-pci-classes.hwdb', 'wt') as out:
header(out, 'http://pci-ids.ucw.cz/v2.2/pci.ids')
for key in sorted(items):
if len(key) == 1:
p, n = 'pci:v*d*sv*sd*bc{}*', 'CLASS'
elif len(key) == 2:
p, n = 'pci:v*d*sv*sd*bc{}sc{}*', 'SUBCLASS'
else:
p, n = 'pci:v*d*sv*sd*bc{}sc{}i{}*', 'INTERFACE'
print('', p.format(*key),
f' ID_PCI_{n}_FROM_DATABASE={items[key]}', sep='\n', file=out)
print(f'Wrote {out.name}')
def sdio_vendor_model(p):
items = {}
for vendor_group in p.VENDORS:
vendor = vendor_group.VENDOR.vendor.upper()
text = vendor_group.VENDOR.text.strip()
add_item(items, (vendor,), text)
for device_group in vendor_group.DEVICES:
device = device_group.device.upper()
text = device_group.text.strip()
add_item(items, (vendor, device), text)
with open('20-sdio-vendor-model.hwdb', 'wt') as out:
header(out, 'hwdb/sdio.ids')
for key in sorted(items):
if len(key) == 1:
p, n = 'sdio:c*v{}*', 'VENDOR'
else:
p, n = 'sdio:c*v{}d{}*', 'MODEL'
print('', p.format(*key),
f' ID_{n}_FROM_DATABASE={items[key]}', sep='\n', file=out)
print(f'Wrote {out.name}')
def sdio_classes(p):
items = {}
for klass_group in p.CLASSES:
klass = klass_group.KLASS.klass.upper()
text = klass_group.KLASS.text.strip()
add_item(items, klass, text)
with open('20-sdio-classes.hwdb', 'wt') as out:
header(out, 'hwdb/sdio.ids')
for klass in sorted(items):
print(f'',
f'sdio:c{klass}v*d*',
f' ID_SDIO_CLASS_FROM_DATABASE={items[klass]}', sep='\n', file=out)
print(f'Wrote {out.name}')
# MAC Address Block Large/Medium/Small
# Large MA-L 24/24 bit (OUI)
# Medium MA-M 28/20 bit (OUI prefix owned by IEEE)
# Small MA-S 36/12 bit (OUI prefix owned by IEEE)
def oui(p1, p2, p3):
prefixes = set()
items = {}
for p, check in ((p1, False), (p2, False), (p3, True)):
for vendor_group in p.VENDORS:
prefix = vendor_group.prefix.upper()
if check:
if prefix in prefixes:
continue
else:
prefixes.add(prefix)
start = vendor_group.start.upper()
end = vendor_group.end.upper()
if end and start != end:
print(f'{prefix:} {start} != {end}', file=sys.stderr)
text = vendor_group.text.strip()
key = prefix + start if end else prefix
add_item(items, key, text)
with open('20-OUI.hwdb', 'wt') as out:
header(out,
'https://services13.ieee.org/RST/standards-ra-web/rest/assignments/download/?registry=MA-L&format=txt',
'https://services13.ieee.org/RST/standards-ra-web/rest/assignments/download/?registry=MA-M&format=txt',
'https://services13.ieee.org/RST/standards-ra-web/rest/assignments/download/?registry=MA-S&format=txt')
for pattern in sorted(items):
print(f'',
f'OUI:{pattern}*',
f' ID_OUI_FROM_DATABASE={items[pattern]}', sep='\n', file=out)
print(f'Wrote {out.name}')
if __name__ == '__main__':
args = sys.argv[1:]
if not args or 'usb' in args:
p = usb_ids_grammar().parseFile(open('usb.ids'))
usb_vendor_model(p)
usb_classes(p)
if not args or 'pci' in args:
p = pci_ids_grammar().parseFile(open('pci.ids'))
pci_vendor_model(p)
pci_classes(p)
if not args or 'sdio' in args:
p = pci_ids_grammar().parseFile(open('sdio.ids'))
sdio_vendor_model(p)
sdio_classes(p)
if not args or 'oui' in args:
p = oui_grammar('small').parseFile(open('ma-small.txt'))
p2 = oui_grammar('medium').parseFile(open('ma-medium.txt'))
p3 = oui_grammar('large').parseFile(open('ma-large.txt'))
oui(p, p2, p3)

143475
hwdb/ma-large.txt Normal file

File diff suppressed because it is too large Load Diff

10152
hwdb/ma-medium.txt Normal file

File diff suppressed because it is too large Load Diff

13701
hwdb/ma-small.txt Normal file

File diff suppressed because it is too large Load Diff

View File

@ -40,5 +40,5 @@ test('parse-hwdb',
############################################################
run_target(
'update',
'hwdb-update',
command : [hwdb_update_sh, meson.current_source_dir()])

29544
hwdb/pci.ids Normal file

File diff suppressed because it is too large Load Diff

2414
hwdb/pnp_id_registry.html Normal file

File diff suppressed because it is too large Load Diff

21079
hwdb/usb.ids Normal file

File diff suppressed because it is too large Load Diff

View File

@ -2,14 +2,16 @@
cd "$1"
curl -L -o usb.ids 'http://www.linux-usb.org/usb.ids'
curl -L -o pci.ids 'http://pci-ids.ucw.cz/v2.2/pci.ids'
curl -L -o ma-large.txt 'http://standards-oui.ieee.org/oui/oui.txt'
curl -L -o ma-medium.txt 'http://standards-oui.ieee.org/oui28/mam.txt'
curl -L -o ma-small.txt 'http://standards-oui.ieee.org/oui36/oui36.txt'
curl -L -o pnp_id_registry.html 'http://www.uefi.org/uefi-pnp-export'
curl -L -o acpi_id_registry.html 'http://www.uefi.org/uefi-acpi-export'
if [ "$2" != "-n" ]; then
curl -L -o usb.ids 'http://www.linux-usb.org/usb.ids'
curl -L -o pci.ids 'http://pci-ids.ucw.cz/v2.2/pci.ids'
curl -L -o ma-large.txt 'http://standards-oui.ieee.org/oui/oui.txt'
curl -L -o ma-medium.txt 'http://standards-oui.ieee.org/oui28/mam.txt'
curl -L -o ma-small.txt 'http://standards-oui.ieee.org/oui36/oui36.txt'
curl -L -o pnp_id_registry.html 'http://www.uefi.org/uefi-pnp-export'
curl -L -o acpi_id_registry.html 'http://www.uefi.org/uefi-acpi-export'
fi
./ids-update.pl
./acpi-update.py > 20-acpi-vendor.hwdb.base
./acpi-update.py >20-acpi-vendor.hwdb.base
patch -p0 -o- 20-acpi-vendor.hwdb.base <20-acpi-vendor.hwdb.patch >20-acpi-vendor.hwdb
diff -u 20-acpi-vendor.hwdb.base 20-acpi-vendor.hwdb >20-acpi-vendor.hwdb.patch
! diff -u 20-acpi-vendor.hwdb.base 20-acpi-vendor.hwdb >20-acpi-vendor.hwdb.patch