Source
...
Target
...@@ -67,7 +67,7 @@ ...@@ -67,7 +67,7 @@
#define USB_MAX_ENDPOINTS 16 #define USB_MAX_ENDPOINTS 16
#define USB_FRAMES_PER_SECOND 1000 #define USB_FRAMES_PER_SECOND 1000
#define USB_UFRAMES_PER_FRAME 8
/* /*
* The USB records contain some unaligned little-endian word * The USB records contain some unaligned little-endian word
...@@ -227,7 +227,10 @@ typedef struct { ...@@ -227,7 +227,10 @@ typedef struct {
uByte bConfigurationValue; uByte bConfigurationValue;
uByte iConfiguration; uByte iConfiguration;
uByte bmAttributes; uByte bmAttributes;
#define UC_BUS_POWERED 0x80 #define UC_ATTR_MBO 0x80
#ifdef __riscos
#define UC_BUS_POWERED UC_ATTR_MBO /* TODO - remove */
#endif
#define UC_SELF_POWERED 0x40 #define UC_SELF_POWERED 0x40
#define UC_REMOTE_WAKEUP 0x20 #define UC_REMOTE_WAKEUP 0x20
uByte bMaxPower; /* max current in 2 mA units */ uByte bMaxPower; /* max current in 2 mA units */
...@@ -271,6 +274,8 @@ typedef struct { ...@@ -271,6 +274,8 @@ typedef struct {
#define UE_ISO_SYNC 0x0c #define UE_ISO_SYNC 0x0c
#define UE_GET_ISO_TYPE(a) ((a) & UE_ISO_TYPE) #define UE_GET_ISO_TYPE(a) ((a) & UE_ISO_TYPE)
uWord wMaxPacketSize; uWord wMaxPacketSize;
#define UE_GET_TRANS(a) (((a) >> 11) & 0x3)
#define UE_GET_SIZE(a) ((a) & 0x7ff)
uByte bInterval; uByte bInterval;
} UPACKED usb_endpoint_descriptor_t; } UPACKED usb_endpoint_descriptor_t;
#define USB_ENDPOINT_DESCRIPTOR_SIZE 7 #define USB_ENDPOINT_DESCRIPTOR_SIZE 7
......
/* $NetBSD: usb_mem.h,v 1.22 2004/12/21 19:49:56 fvdl Exp $ */ /* $NetBSD: usb_mem.h,v 1.27 2008/06/28 17:42:53 bouyer Exp $ */
/* $FreeBSD: src/sys/dev/usb/usb_mem.h,v 1.9 1999/11/17 22:33:47 n_hibma Exp $ */ /* $FreeBSD: src/sys/dev/usb/usb_mem.h,v 1.9 1999/11/17 22:33:47 n_hibma Exp $ */
/* /*
...@@ -17,13 +17,6 @@ ...@@ -17,13 +17,6 @@
* 2. Redistributions in binary form must reproduce the above copyright * 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the * notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution. * documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the NetBSD
* Foundation, Inc. and its contributors.
* 4. Neither the name of The NetBSD Foundation nor the names of its
* contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
* *
* THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
...@@ -42,35 +35,36 @@ ...@@ -42,35 +35,36 @@
typedef struct usb_dma_block { typedef struct usb_dma_block {
bus_dma_tag_t tag; bus_dma_tag_t tag;
bus_dmamap_t map; bus_dmamap_t map;
caddr_t kaddr; void *kaddr;
bus_dma_segment_t segs[1]; bus_dma_segment_t segs[1];
int nsegs; int nsegs;
size_t size; size_t size;
size_t align; size_t align;
int flags; int flags;
#define USB_DMA_FULLBLOCK 0x0001 #define USB_DMA_FULLBLOCK 0x0001
#define USB_DMA_RESERVE 0x0002 #define USB_DMA_RESERVE 0x0002
LIST_ENTRY(usb_dma_block) next; LIST_ENTRY(usb_dma_block) next;
} usb_dma_block_t; } usb_dma_block_t;
#define DMAADDR(dma, o) ((dma)->block->map->dm_segs[0].ds_addr + (dma)->offs + (o)) #define DMAADDR(dma, o) ((dma)->block->map->dm_segs[0].ds_addr + (dma)->offs + (o))
#define KERNADDR(dma, o) \ #define KERNADDR(dma, o) \
((void *)((char *)((dma)->block->kaddr + (dma)->offs) + (o))) ((void *)((char *)(dma)->block->kaddr + (dma)->offs + (o)))
usbd_status usb_allocmem(usbd_bus_handle,size_t,size_t, usb_dma_t *); usbd_status usb_allocmem(usbd_bus_handle,size_t,size_t, usb_dma_t *);
void usb_freemem(usbd_bus_handle, usb_dma_t *); void usb_freemem(usbd_bus_handle, usb_dma_t *);
void usb_syncmem(usb_dma_t *, bus_addr_t, bus_size_t, int ops);
#ifdef __NetBSD__ #ifdef __NetBSD__
struct extent; struct extent;
struct usb_dma_reserve { struct usb_dma_reserve {
bus_dma_tag_t dtag; bus_dma_tag_t dtag;
bus_dmamap_t map; bus_dmamap_t map;
caddr_t vaddr; void *vaddr;
bus_addr_t paddr; bus_addr_t paddr;
size_t size; size_t size;
struct extent *extent; struct extent *extent;
void *softc; device_t dv;
}; };
#if defined(_KERNEL_OPT) #if defined(_KERNEL_OPT)
...@@ -82,8 +76,8 @@ struct usb_dma_reserve { ...@@ -82,8 +76,8 @@ struct usb_dma_reserve {
#endif #endif
usbd_status usb_reserve_allocm(struct usb_dma_reserve *, usb_dma_t *, usbd_status usb_reserve_allocm(struct usb_dma_reserve *, usb_dma_t *,
u_int32_t); u_int32_t);
int usb_setup_reserve(void *, struct usb_dma_reserve *, bus_dma_tag_t, size_t); int usb_setup_reserve(device_t, struct usb_dma_reserve *, bus_dma_tag_t, size_t);
void usb_reserve_freem(struct usb_dma_reserve *, usb_dma_t *); void usb_reserve_freem(struct usb_dma_reserve *, usb_dma_t *);
#endif #endif
...@@ -91,7 +85,7 @@ void usb_reserve_freem(struct usb_dma_reserve *, usb_dma_t *); ...@@ -91,7 +85,7 @@ void usb_reserve_freem(struct usb_dma_reserve *, usb_dma_t *);
#elif defined(__FreeBSD__) #elif defined(__FreeBSD__)
/* /*
* FreeBSD does not have special functions for dma memory, so let's keep it * FreeBSD does not have special functions for DMA memory, so let's keep it
* simple for now. * simple for now.
*/ */
......
...@@ -20,6 +20,7 @@ ...@@ -20,6 +20,7 @@
#include "errno.h" #include "errno.h"
#include <sys/ioccom.h> #include <sys/ioccom.h>
#include <string.h> #include <string.h>
#include <stdbool.h>
#ifdef USB_DEBUG #ifdef USB_DEBUG
#define UHID_DEBUG 1 #define UHID_DEBUG 1
...@@ -59,6 +60,17 @@ ...@@ -59,6 +60,17 @@
#define lockinit(a,b,c,d,e) #define lockinit(a,b,c,d,e)
#define lockmgr(a,b,c) #define lockmgr(a,b,c)
struct lock { int a; }; struct lock { int a; };
/* XXX now we have to worry about our lack of support for mutexes too */
#define mutex_init(a,b,c)
#define mutex_destroy(a)
#define mutex_enter(a)
#define mutex_exit(a)
typedef struct { int a; } kmutex_t;
#define device_has_power(a) (true)
/* Dummy macro should be all that we need for now */
#define usb_syncmem(a,b,c,d) {}
extern int hz; extern int hz;
...@@ -70,9 +82,9 @@ extern void splx (int); ...@@ -70,9 +82,9 @@ extern void splx (int);
extern int vtophys (void*); extern int vtophys (void*);
extern void delay (int); extern void delay (int);
extern struct device* get_softc (int unit); extern struct device* get_softc (int unit);
extern int callout_init (void*); extern void callout_init (struct callout* c,int ignored);
extern int callout_stop (void*); extern void callout_stop (struct callout *c);
extern void callout_reset (void*, int, void (*f)(void *), void *v); extern void callout_reset (struct callout *c, int i, void (*f)(void *), void *v);
extern int min (int a, int b); extern int min (int a, int b);
extern struct device* riscos_usb_attach(void*, struct device*, void*); extern struct device* riscos_usb_attach(void*, struct device*, void*);
extern void usb_needs_explore_callback (void*); extern void usb_needs_explore_callback (void*);
...@@ -80,9 +92,11 @@ extern int config_detach (struct device*, int); ...@@ -80,9 +92,11 @@ extern int config_detach (struct device*, int);
extern void* (config_found) (struct device*, void*, int (*) (void*, const char*)); extern void* (config_found) (struct device*, void*, int (*) (void*, const char*));
extern void kill_system_variable (int unit); extern void kill_system_variable (int unit);
#ifndef USBHAL
extern void riscos_abort_pipe (void*); extern void riscos_abort_pipe (void*);
extern void riscos_irqclear (int device);
#endif
extern void riscos_failed_device (void*); extern void riscos_failed_device (void*);
extern void riscos_irqclear (void);
extern int kthread_create (void (*) (void*), void*); extern int kthread_create (void (*) (void*), void*);
extern int kthread_create1 (void (*) (void*), void*, void*, char*, char*); extern int kthread_create1 (void (*) (void*), void*, void*, char*, char*);
...@@ -121,11 +135,9 @@ typedef struct device *device_ptr_t; ...@@ -121,11 +135,9 @@ typedef struct device *device_ptr_t;
#define USBDEVPTRNAME(bdevptr) ((bdevptr)->dv_xname) #define USBDEVPTRNAME(bdevptr) ((bdevptr)->dv_xname)
#define USBGETSOFTC(d) ((void *)(d)) #define USBGETSOFTC(d) ((void *)(d))
#define DECLARE_USB_DMA_T typedef void * usb_dma_t
typedef struct callout usb_callout_t; typedef struct callout usb_callout_t;
#define usb_callout_init(h) callout_init(&(h)) #define usb_callout_init(h) callout_init(&(h), 0)
#define usb_callout(h, t, f, d) callout_reset(&(h), (t), (f), (d)) #define usb_callout(h, t, f, d) callout_reset(&(h), (t), (f), (d))
#define usb_uncallout(h, f, d) callout_stop(&(h)) #define usb_uncallout(h, f, d) callout_stop(&(h))
...@@ -140,8 +152,18 @@ typedef int usb_malloc_type; ...@@ -140,8 +152,18 @@ typedef int usb_malloc_type;
#define Ether_ifattach ether_ifattach #define Ether_ifattach ether_ifattach
#define IF_INPUT(ifp, m) (*(ifp)->if_input)((ifp), (m)) #define IF_INPUT(ifp, m) (*(ifp)->if_input)((ifp), (m))
#ifdef USB_DEBUG
#pragma -v1 #pragma -v1
extern void logprintf(char* format, ...); extern void logprintf(char* format, ...);
#else
#define logprintf(...) 0
#endif
#ifdef USBHAL
#define halconst const
#else
#define halconst
#endif
#define USB_DECLARE_DRIVER(dname) \ #define USB_DECLARE_DRIVER(dname) \
int __CONCAT(dname,_match)(struct device *, struct cfdata *, void *); \ int __CONCAT(dname,_match)(struct device *, struct cfdata *, void *); \
...@@ -149,9 +171,9 @@ void __CONCAT(dname,_attach)(struct device *, struct device *, void *); \ ...@@ -149,9 +171,9 @@ void __CONCAT(dname,_attach)(struct device *, struct device *, void *); \
int __CONCAT(dname,_detach)(struct device *, int); \ int __CONCAT(dname,_detach)(struct device *, int); \
int __CONCAT(dname,_activate)(struct device *, enum devact); \ int __CONCAT(dname,_activate)(struct device *, enum devact); \
\ \
extern struct cfdriver __CONCAT(dname,_cd); \ extern halconst struct cfdriver __CONCAT(dname,_cd); \
\ \
struct cfattach __CONCAT(dname,_ca) = { \ halconst struct cfattach __CONCAT(dname,_ca) = { \
sizeof(struct __CONCAT(dname,_softc)), \ sizeof(struct __CONCAT(dname,_softc)), \
__CONCAT(dname,_match), \ __CONCAT(dname,_match), \
__CONCAT(dname,_attach), \ __CONCAT(dname,_attach), \
...@@ -210,8 +232,9 @@ int __CONCAT(dname,_detach)(struct device *self, int flags) ...@@ -210,8 +232,9 @@ int __CONCAT(dname,_detach)(struct device *self, int flags)
#endif #endif
#ifndef max
#define max(a,b) ((a)>(b)?(a):(b))
#endif
//#define UMATCH_GENERIC 1 //#define UMATCH_GENERIC 1
/* $NetBSD: usb_quirks.h,v 1.20 2001/04/15 09:38:01 augustss Exp $ */ /* $NetBSD: usb_quirks.h,v 1.24 2010/06/27 10:41:26 kardel Exp $ */
/* $FreeBSD: src/sys/dev/usb/usb_quirks.h,v 1.9 1999/11/12 23:31:03 n_hibma Exp $ */ /* $FreeBSD: src/sys/dev/usb/usb_quirks.h,v 1.9 1999/11/12 23:31:03 n_hibma Exp $ */
/* /*
* Copyright (c) 1998 The NetBSD Foundation, Inc. * Copyright (c) 1998 The NetBSD Foundation, Inc.
...@@ -54,6 +54,8 @@ struct usbd_quirks { ...@@ -54,6 +54,8 @@ struct usbd_quirks {
#define UQ_AU_INP_ASYNC 0x0800 /* input is async despite claim of adaptive */ #define UQ_AU_INP_ASYNC 0x0800 /* input is async despite claim of adaptive */
#define UQ_ASSUME_CM_OVER_DATA 0x1000 /* modem device breaks on cm over data */ #define UQ_ASSUME_CM_OVER_DATA 0x1000 /* modem device breaks on cm over data */
#define UQ_BROKEN_BIDIR 0x2000 /* printer has broken bidir mode */ #define UQ_BROKEN_BIDIR 0x2000 /* printer has broken bidir mode */
#define UQ_HID_IGNORE 0x4000 /* device should be ignored by hid class */
#define UQ_NO_UNION_NRM 0x8000 /* has no normal UNION descriptor */
}; };
extern const struct usbd_quirks usbd_no_quirk; extern const struct usbd_quirks usbd_no_quirk;
......
...@@ -38,6 +38,9 @@ ...@@ -38,6 +38,9 @@
* POSSIBILITY OF SUCH DAMAGE. * POSSIBILITY OF SUCH DAMAGE.
*/ */
#ifndef _USBDI_H_
#define _USBDI_H_
#ifdef __riscos #ifdef __riscos
#include <sys/cdefs.h> #include <sys/cdefs.h>
#endif #endif
...@@ -96,26 +99,26 @@ typedef void (*usbd_callback)(usbd_xfer_handle, usbd_private_handle, ...@@ -96,26 +99,26 @@ typedef void (*usbd_callback)(usbd_xfer_handle, usbd_private_handle,
#endif #endif
usbd_status usbd_open_pipe(usbd_interface_handle, u_int8_t, usbd_status usbd_open_pipe(usbd_interface_handle, u_int8_t,
u_int8_t, usbd_pipe_handle *); u_int8_t, usbd_pipe_handle *);
usbd_status usbd_close_pipe(usbd_pipe_handle); usbd_status usbd_close_pipe(usbd_pipe_handle);
usbd_status usbd_transfer(usbd_xfer_handle); usbd_status usbd_transfer(usbd_xfer_handle);
usbd_xfer_handle usbd_alloc_xfer(usbd_device_handle); usbd_xfer_handle usbd_alloc_xfer(usbd_device_handle);
usbd_status usbd_free_xfer(usbd_xfer_handle); usbd_status usbd_free_xfer(usbd_xfer_handle);
void usbd_setup_xfer(usbd_xfer_handle, usbd_pipe_handle, void usbd_setup_xfer(usbd_xfer_handle, usbd_pipe_handle,
usbd_private_handle, void *, usbd_private_handle, void *,
u_int32_t, u_int16_t, u_int32_t, u_int32_t, u_int16_t, u_int32_t,
usbd_callback); usbd_callback);
void usbd_setup_default_xfer(usbd_xfer_handle, usbd_device_handle, void usbd_setup_default_xfer(usbd_xfer_handle, usbd_device_handle,
usbd_private_handle, u_int32_t, usbd_private_handle, u_int32_t,
usb_device_request_t *, void *, usb_device_request_t *, void *,
u_int32_t, u_int16_t, usbd_callback); u_int32_t, u_int16_t, usbd_callback);
void usbd_setup_isoc_xfer(usbd_xfer_handle, usbd_pipe_handle, void usbd_setup_isoc_xfer(usbd_xfer_handle, usbd_pipe_handle,
usbd_private_handle, u_int16_t *, usbd_private_handle, u_int16_t *,
u_int32_t, u_int16_t, usbd_callback); u_int32_t, u_int16_t, usbd_callback);
void usbd_get_xfer_status(usbd_xfer_handle, usbd_private_handle *, void usbd_get_xfer_status(usbd_xfer_handle, usbd_private_handle *,
void **, u_int32_t *, usbd_status *); void **, u_int32_t *, usbd_status *);
usb_endpoint_descriptor_t *usbd_interface2endpoint_descriptor usb_endpoint_descriptor_t *usbd_interface2endpoint_descriptor
(usbd_interface_handle, u_int8_t); (usbd_interface_handle, u_int8_t);
usbd_status usbd_abort_pipe(usbd_pipe_handle); usbd_status usbd_abort_pipe(usbd_pipe_handle);
usbd_status usbd_clear_endpoint_stall(usbd_pipe_handle); usbd_status usbd_clear_endpoint_stall(usbd_pipe_handle);
usbd_status usbd_clear_endpoint_stall_async(usbd_pipe_handle); usbd_status usbd_clear_endpoint_stall_async(usbd_pipe_handle);
...@@ -123,9 +126,9 @@ void usbd_clear_endpoint_toggle(usbd_pipe_handle); ...@@ -123,9 +126,9 @@ void usbd_clear_endpoint_toggle(usbd_pipe_handle);
usbd_status usbd_endpoint_count(usbd_interface_handle, u_int8_t *); usbd_status usbd_endpoint_count(usbd_interface_handle, u_int8_t *);
usbd_status usbd_interface_count(usbd_device_handle, u_int8_t *); usbd_status usbd_interface_count(usbd_device_handle, u_int8_t *);
void usbd_interface2device_handle(usbd_interface_handle, void usbd_interface2device_handle(usbd_interface_handle,
usbd_device_handle *); usbd_device_handle *);
usbd_status usbd_device2interface_handle(usbd_device_handle, usbd_status usbd_device2interface_handle(usbd_device_handle,
u_int8_t, usbd_interface_handle *); u_int8_t, usbd_interface_handle *);
usbd_device_handle usbd_pipe2device_handle(usbd_pipe_handle); usbd_device_handle usbd_pipe2device_handle(usbd_pipe_handle);
void *usbd_alloc_buffer(usbd_xfer_handle, u_int32_t); void *usbd_alloc_buffer(usbd_xfer_handle, u_int32_t);
...@@ -133,18 +136,18 @@ void usbd_free_buffer(usbd_xfer_handle); ...@@ -133,18 +136,18 @@ void usbd_free_buffer(usbd_xfer_handle);
void *usbd_get_buffer(usbd_xfer_handle); void *usbd_get_buffer(usbd_xfer_handle);
usbd_status usbd_sync_transfer(usbd_xfer_handle); usbd_status usbd_sync_transfer(usbd_xfer_handle);
usbd_status usbd_open_pipe_intr(usbd_interface_handle, u_int8_t, usbd_status usbd_open_pipe_intr(usbd_interface_handle, u_int8_t,
u_int8_t, usbd_pipe_handle *, u_int8_t, usbd_pipe_handle *,
usbd_private_handle, void *, usbd_private_handle, void *,
u_int32_t, usbd_callback, int); u_int32_t, usbd_callback, int);
usbd_status usbd_do_request(usbd_device_handle, usb_device_request_t *, void *); usbd_status usbd_do_request(usbd_device_handle, usb_device_request_t *, void *);
usbd_status usbd_do_request_async(usbd_device_handle, usbd_status usbd_do_request_async(usbd_device_handle,
usb_device_request_t *, void *); usb_device_request_t *, void *);
usbd_status usbd_do_request_flags(usbd_device_handle, usb_device_request_t *, usbd_status usbd_do_request_flags(usbd_device_handle, usb_device_request_t *,
void *, u_int16_t, int*, u_int32_t); void *, u_int16_t, int*, u_int32_t);
usbd_status usbd_do_request_flags_pipe(usbd_device_handle, usbd_pipe_handle, usbd_status usbd_do_request_flags_pipe(usbd_device_handle, usbd_pipe_handle,
usb_device_request_t *, void *, u_int16_t, int *, u_int32_t); usb_device_request_t *, void *, u_int16_t, int *, u_int32_t);
usb_interface_descriptor_t *usbd_get_interface_descriptor usb_interface_descriptor_t *usbd_get_interface_descriptor
(usbd_interface_handle); (usbd_interface_handle);
usb_config_descriptor_t *usbd_get_config_descriptor(usbd_device_handle); usb_config_descriptor_t *usbd_get_config_descriptor(usbd_device_handle);
usb_device_descriptor_t *usbd_get_device_descriptor(usbd_device_handle); usb_device_descriptor_t *usbd_get_device_descriptor(usbd_device_handle);
usbd_status usbd_set_interface(usbd_interface_handle, int); usbd_status usbd_set_interface(usbd_interface_handle, int);
...@@ -154,9 +157,9 @@ void usbd_fill_deviceinfo(usbd_device_handle, struct usb_device_info *, int); ...@@ -154,9 +157,9 @@ void usbd_fill_deviceinfo(usbd_device_handle, struct usb_device_info *, int);
int usbd_get_interface_altindex(usbd_interface_handle); int usbd_get_interface_altindex(usbd_interface_handle);
usb_interface_descriptor_t *usbd_find_idesc(usb_config_descriptor_t *, usb_interface_descriptor_t *usbd_find_idesc(usb_config_descriptor_t *,
int, int); int, int);
usb_endpoint_descriptor_t *usbd_find_edesc(usb_config_descriptor_t *, usb_endpoint_descriptor_t *usbd_find_edesc(usb_config_descriptor_t *,
int, int, int); int, int, int);
void usbd_dopoll(usbd_interface_handle); void usbd_dopoll(usbd_interface_handle);
void usbd_set_polling(usbd_device_handle, int); void usbd_set_polling(usbd_device_handle, int);
...@@ -169,11 +172,11 @@ void usbd_add_drv_event(int, usbd_device_handle, device_ptr_t); ...@@ -169,11 +172,11 @@ void usbd_add_drv_event(int, usbd_device_handle, device_ptr_t);
void usbd_devinfo(usbd_device_handle, int, char *, size_t); void usbd_devinfo(usbd_device_handle, int, char *, size_t);
const struct usbd_quirks *usbd_get_quirks(usbd_device_handle); const struct usbd_quirks *usbd_get_quirks(usbd_device_handle);
usb_endpoint_descriptor_t *usbd_get_endpoint_descriptor usb_endpoint_descriptor_t *usbd_get_endpoint_descriptor
(usbd_interface_handle, u_int8_t); (usbd_interface_handle, u_int8_t);
usbd_status usbd_reload_device_desc(usbd_device_handle); usbd_status usbd_reload_device_desc(usbd_device_handle);
int usbd_ratecheck(struct timeval *last); int usbd_ratecheck(struct timeval *);
#ifndef __riscos #ifndef __riscos
usbd_status usbd_get_string(usbd_device_handle dev, int si, char *buf); usbd_status usbd_get_string(usbd_device_handle dev, int si, char *buf);
...@@ -181,11 +184,11 @@ usbd_status usbd_get_string(usbd_device_handle dev, int si, char *buf); ...@@ -181,11 +184,11 @@ usbd_status usbd_get_string(usbd_device_handle dev, int si, char *buf);
/* An iterator for descriptors. */ /* An iterator for descriptors. */
typedef struct { typedef struct {
const uByte *cur; const uByte *cur;
const uByte *end; const uByte *end;
} usbd_desc_iter_t; } usbd_desc_iter_t;
void usb_desc_iter_init(usbd_device_handle dev, usbd_desc_iter_t *iter); void usb_desc_iter_init(usbd_device_handle, usbd_desc_iter_t *);
const usb_descriptor_t *usb_desc_iter_next(usbd_desc_iter_t *iter); const usb_descriptor_t *usb_desc_iter_next(usbd_desc_iter_t *);
/* /*
* The usb_task structs form a queue of things to run in the USB event * The usb_task structs form a queue of things to run in the USB event
...@@ -291,3 +294,5 @@ int usbd_driver_load(module_t mod, int what, void *arg); ...@@ -291,3 +294,5 @@ int usbd_driver_load(module_t mod, int what, void *arg);
#endif /* USB_USE_SOFTINTR */ #endif /* USB_USE_SOFTINTR */
#define splhardusb splbio #define splhardusb splbio
#define IPL_USB IPL_BIO #define IPL_USB IPL_BIO
#endif /* _USBDI_H_ */
...@@ -42,8 +42,30 @@ ...@@ -42,8 +42,30 @@
#include <sys/callout.h> #include <sys/callout.h>
#endif #endif
#ifdef __riscos
/* The structures in this file (and a few other files?) are used by the USB HC
drivers to communicate with the main USBDriver module. Thus, we need to make
sure that HC driver modules only register themselves with USBDriver if both
modules use compatible structure definitions.
So whenever you make a backwards-incompatible change to these shared
structures, make sure you update this #define to the version of the USBDriver
module that first implemented those changes (as defined in
NetBSD.build.Version, not the dummy NetBSD.VersionNum file!). This #define
is used by both USBDriver and the HC modules to check that both parties are
using the same API. */
#define RISCOS_USBDRIVER_API_VERSION 49
#endif
#ifdef __riscos
typedef void * usb_dma_t;
#else
/* From usb_mem.h */ /* From usb_mem.h */
DECLARE_USB_DMA_T; struct usb_dma_block;
typedef struct {
struct usb_dma_block *block;
u_int offs;
} usb_dma_t;
#endif
struct usbd_xfer; struct usbd_xfer;
struct usbd_pipe; struct usbd_pipe;
...@@ -62,6 +84,10 @@ struct usbd_bus_methods { ...@@ -62,6 +84,10 @@ struct usbd_bus_methods {
void (*freem)(struct usbd_bus *, usb_dma_t *); void (*freem)(struct usbd_bus *, usb_dma_t *);
struct usbd_xfer * (*allocx)(struct usbd_bus *); struct usbd_xfer * (*allocx)(struct usbd_bus *);
void (*freex)(struct usbd_bus *, struct usbd_xfer *); void (*freex)(struct usbd_bus *, struct usbd_xfer *);
#ifdef USBHAL
int (*do_intr)(struct usbd_bus *,int irqdevno);
void (*shutdown)(struct usbd_bus *);
#endif
}; };
struct usbd_pipe_methods { struct usbd_pipe_methods {
...@@ -74,18 +100,19 @@ struct usbd_pipe_methods { ...@@ -74,18 +100,19 @@ struct usbd_pipe_methods {
}; };
struct usbd_tt { struct usbd_tt {
struct usbd_hub *hub; struct usbd_hub *hub;
}; };
struct usbd_port { struct usbd_port {
usb_port_status_t status; usb_port_status_t status;
u_int16_t power; /* mA of current on port */ u_int16_t power; /* mA of current on port */
u_int8_t portno; u_int8_t portno;
u_int8_t restartcnt; u_int8_t restartcnt;
#define USBD_RESTART_MAX 5 #define USBD_RESTART_MAX 5
u_int8_t reattach; u_int8_t reattach;
struct usbd_device *device; /* Connected device */ struct usbd_device *device; /* Connected device */
struct usbd_device *parent; /* The ports hub */ struct usbd_device *parent; /* The ports hub */
struct usbd_tt *tt; /* Transaction translator (if any) */ struct usbd_tt *tt; /* Transaction translator (if any) */
}; };
struct usbd_hub { struct usbd_hub {
...@@ -132,7 +159,7 @@ struct usbd_bus { ...@@ -132,7 +159,7 @@ struct usbd_bus {
#endif #endif
#endif #endif
#if defined(__NetBSD__) || defined(__OpenBSD__) #ifndef __riscos
bus_dma_tag_t dmatag; /* DMA tag */ bus_dma_tag_t dmatag; /* DMA tag */
#endif #endif
}; };
...@@ -160,7 +187,7 @@ struct usbd_device { ...@@ -160,7 +187,7 @@ struct usbd_device {
const struct usbd_quirks *quirks; /* device quirks, always set */ const struct usbd_quirks *quirks; /* device quirks, always set */
struct usbd_hub *hub; /* only if this is a hub */ struct usbd_hub *hub; /* only if this is a hub */
device_ptr_t *subdevs; /* sub-devices, 0 terminated */ device_ptr_t *subdevs; /* sub-devices, 0 terminated */
#ifdef __riscos #if defined(__riscos) && !defined(USBHAL)
int dv_unit; /* underlying RISCOS device num */ int dv_unit; /* underlying RISCOS device num */
#endif #endif
}; };
...@@ -190,7 +217,7 @@ struct usbd_pipe { ...@@ -190,7 +217,7 @@ struct usbd_pipe {
int interval; int interval;
/* Filled by HC driver. */ /* Filled by HC driver. */
struct usbd_pipe_methods *methods; const struct usbd_pipe_methods *methods;
}; };
struct usbd_xfer { struct usbd_xfer {
...@@ -203,13 +230,11 @@ struct usbd_xfer { ...@@ -203,13 +230,11 @@ struct usbd_xfer {
u_int32_t timeout; u_int32_t timeout;
usbd_status status; usbd_status status;
usbd_callback callback; usbd_callback callback;
__volatile char done; volatile u_int8_t done;
#ifdef DIAGNOSTIC u_int8_t busy_free; /* used for DIAGNOSTIC */
u_int32_t busy_free; #define XFER_FREE 0x46
#define XFER_FREE 0x46524545 #define XFER_BUSY 0x55
#define XFER_BUSY 0x42555359 #define XFER_ONQU 0x9e
#define XFER_ONQU 0x4f4e5155
#endif
/* For control pipe */ /* For control pipe */
usb_device_request_t request; usb_device_request_t request;
...@@ -222,19 +247,22 @@ struct usbd_xfer { ...@@ -222,19 +247,22 @@ struct usbd_xfer {
struct usbd_device *device; struct usbd_device *device;
usb_dma_t dmabuf; usb_dma_t dmabuf;
int rqflags; u_int8_t rqflags;
#define URQ_REQUEST 0x01 #define URQ_REQUEST 0x01
#define URQ_AUTO_DMABUF 0x10 #define URQ_AUTO_DMABUF 0x10
#define URQ_DEV_DMABUF 0x20 #define URQ_DEV_DMABUF 0x20
#ifdef __riscos #if defined(__riscos) && !defined(USBHAL)
#define URQ_RISCOS_BUF 0x100 #define URQ_RISCOS_BUF 0x80
#endif #endif
SIMPLEQ_ENTRY(usbd_xfer) next; SIMPLEQ_ENTRY(usbd_xfer) next;
void *hcpriv; /* private use by the HC driver */ void *hcpriv; /* private use by the HC driver */
u_int8_t hcflags; /* private use by the HC driver */
#define UXFER_ABORTING 0x01 /* xfer is aborting. */
#define UXFER_ABORTWAIT 0x02 /* abort completion is being awaited. */
usb_callout_t timeout_handle; struct callout timeout_handle;
}; };
void usbd_init(void); void usbd_init(void);
...@@ -251,20 +279,20 @@ void usbd_dump_pipe(usbd_pipe_handle pipe); ...@@ -251,20 +279,20 @@ void usbd_dump_pipe(usbd_pipe_handle pipe);
/* Routines from usb_subr.c */ /* Routines from usb_subr.c */
int usbctlprint(void *, const char *); int usbctlprint(void *, const char *);
void usb_delay_ms(usbd_bus_handle, u_int); void usb_delay_ms(usbd_bus_handle, u_int);
usbd_status usbd_reset_port(usbd_device_handle, int, usb_port_status_t *); usbd_status usbd_reset_port(usbd_device_handle, int, usb_port_status_t *);
usbd_status usbd_setup_pipe(usbd_device_handle dev, usbd_status usbd_setup_pipe(usbd_device_handle dev,
usbd_interface_handle iface, usbd_interface_handle iface,
struct usbd_endpoint *, int, struct usbd_endpoint *, int,
usbd_pipe_handle *pipe); usbd_pipe_handle *pipe);
usbd_status usbd_new_device(device_ptr_t, usbd_bus_handle, int, int, int, usbd_status usbd_new_device(device_ptr_t, usbd_bus_handle, int, int, int,
struct usbd_port *); struct usbd_port *);
void usbd_remove_device(usbd_device_handle, struct usbd_port *); void usbd_remove_device(usbd_device_handle, struct usbd_port *);
int usbd_printBCD(char *, size_t, int); int usbd_printBCD(char *, size_t, int);
usbd_status usbd_fill_iface_data(usbd_device_handle, int, int); usbd_status usbd_fill_iface_data(usbd_device_handle, int, int);
void usb_free_device(usbd_device_handle); void usb_free_device(usbd_device_handle);
usbd_status usb_insert_transfer(usbd_xfer_handle); usbd_status usb_insert_transfer(usbd_xfer_handle);
void usb_transfer_complete(usbd_xfer_handle); void usb_transfer_complete(usbd_xfer_handle);
void usb_disconnect_port(struct usbd_port *, device_ptr_t); void usb_disconnect_port(struct usbd_port *, device_ptr_t);
/* Routines from usb.c */ /* Routines from usb.c */
...@@ -274,6 +302,9 @@ void usb_schedsoftintr(struct usbd_bus *); ...@@ -274,6 +302,9 @@ void usb_schedsoftintr(struct usbd_bus *);
/* useful macros */ /* useful macros */
#ifdef __riscos #ifdef __riscos
/* delay on a device for delay read from a sysvar (else delay for default) */ /* delay on a device for delay read from a sysvar (else delay for default) */
#ifdef USBHAL
#define QueryDelay(dev, var, default) usbd_delay_ms(dev, default)
#else
#define QueryDelay(dev, var, default) \ #define QueryDelay(dev, var, default) \
{ \ { \
char* getenv (const char*); \ char* getenv (const char*); \
...@@ -283,6 +314,7 @@ void usb_schedsoftintr(struct usbd_bus *); ...@@ -283,6 +314,7 @@ void usb_schedsoftintr(struct usbd_bus *);
default); \ default); \
} }
#endif #endif
#endif
/* /*
* XXX This check is extremely bogus. Bad Bad Bad. * XXX This check is extremely bogus. Bad Bad Bad.
......
/* Copyright 2011 Castle Technology Ltd
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* Extra bits needed to allow us to compile the USB drivers as a static lib for
linking with the HAL */
#ifdef USBHAL
__global_reg(6) void *hal_sb;
#include <sys/types.h>
#include <sys/device.h>
typedef struct {
void (*cbfunc)(void *);
void *param;
} usbhal_callback;
/* USBHAL workspace structure - must match Hdr.usbhal */
typedef struct {
void *heap_normal; /* Heap structure for malloc & free */
void *heap_ncnb; /* Heap structure for malloc_contig & free_contig */
struct devicelist allbuses; /* List of registered buses */
int usbbus_no; /* Next number to use */
uint32_t monotonictime; /* Centisecond counter equivalent to OS_ReadMonotonicTime */
struct callout *callouts; /* Head of callout list; i.e. the callout to execute next */
uint32_t irqsema; /* nonzero whenever we're processing interrupts */
struct callout *rediscover; /* re_discover callout */
/* tsleep/wakeup stuff */
void **t_handles;
int *t_locks;
int nhandles;
/* Keyboard scan */
uint32_t kbdflags; /* Sticky keyboard scan bits */
/* Callbacks */
usbhal_callback *callbacks; /* Array of callbacks, handled as circular buffer */
int nextcb; /* Index of next callback to run */
int numcb; /* Number of callbacks */
} usbhal_ws;
extern int USBHAL_WorkspaceOffset;
extern int USBHAL_OSentriesOffset;
#define USBHALWS ((usbhal_ws *)(((int)hal_sb)+((int)&USBHAL_WorkspaceOffset)))
#define OSentries ((int *)(((int)hal_sb)+((int)&USBHAL_OSentriesOffset)))
extern void HAL_IRQClear(int device);
#define riscos_irqclear HAL_IRQClear
/* Keyboard scan flags
TODO - Should be in Kernel.Hdr.HALEntries */
#define HAL_KbdScan_Ctrl (1u<<0)
#define HAL_KbdScan_Shift (1u<<1)
#define HAL_KbdScan_R (1u<<4)
#define HAL_KbdScan_T (1u<<5)
#define HAL_KbdScan_Delete (1u<<6)
#define HAL_KbdScan_End (1u<<7)
#define HAL_KbdScan_Return (1u<<8)
#define HAL_KbdScan_Present (1u<<30)
#define HAL_KbdScan_Complete (1u<<31)
/* Initialise workspace, heaps & core USB code */
extern void USBHAL_Init(void *heapbase,uint32_t heapsize,void *ncnbbase,uint32_t ncnbsize);
/* Process keyboard scan */
extern uint32_t USBHAL_KbdScan(void);
/* Process keyboard scan interrupt. Returns -1 if IRQ handled, or 'irq' if not. */
extern int USBHAL_KbdScanInterrupt(int irq);
/* Finish keyboard scan and shut everything down */
extern void USBHAL_Shutdown(void);
/* Callback interface */
extern void USBHAL_AddCallback(void (*cbfunc)(void *),void *param);
extern void USBHAL_RemoveCallback(void (*cbfunc)(void *),void *param);
#endif
/* $NetBSD: usbhid.h,v 1.11 2001/12/28 00:20:24 augustss Exp $ */ /* $NetBSD: usbhid.h,v 1.13 2008/04/28 20:24:01 martin Exp $ */
/* $FreeBSD: src/sys/dev/usb/usbhid.h,v 1.7 1999/11/17 22:33:51 n_hibma Exp $ */ /* $FreeBSD: src/sys/dev/usb/usbhid.h,v 1.7 1999/11/17 22:33:51 n_hibma Exp $ */
/* /*
...@@ -177,6 +177,9 @@ typedef struct usb_hid_descriptor { ...@@ -177,6 +177,9 @@ typedef struct usb_hid_descriptor {
#define HUD_LED_COMPOSE 0x0004 #define HUD_LED_COMPOSE 0x0004
#define HUD_LED_KANA 0x0005 #define HUD_LED_KANA 0x0005
/* Usages, Consumer */
#define HUC_AC_PAN 0x0238
#define HID_USAGE2(p, u) (((p) << 16) | u) #define HID_USAGE2(p, u) (((p) << 16) | u)
#define HID_GET_USAGE(u) ((u) & 0xffff) #define HID_GET_USAGE(u) ((u) & 0xffff)
#define HID_GET_USAGE_PAGE(u) (((u) >> 16) & 0xffff) #define HID_GET_USAGE_PAGE(u) (((u) >> 16) & 0xffff)
......
/* $NetBSD: usbroothub_subr.h,v 1.1 2008/02/03 10:57:13 drochner Exp $ */
int usb_makestrdesc(usb_string_descriptor_t *, int, const char *);
int usb_makelangtbl(usb_string_descriptor_t *, int);
$NetBSD: usbdevs,v 1.398 2005/03/15 17:52:18 xtraeme Exp $ $NetBSD: usbdevs,v 1.561 2010/07/02 08:35:41 tnn Exp $
/* /*
* Copyright (c) 1998-2004 The NetBSD Foundation, Inc. * Copyright (c) 1998-2004 The NetBSD Foundation, Inc.
...@@ -16,13 +16,6 @@ $NetBSD: usbdevs,v 1.398 2005/03/15 17:52:18 xtraeme Exp $ ...@@ -16,13 +16,6 @@ $NetBSD: usbdevs,v 1.398 2005/03/15 17:52:18 xtraeme Exp $
* 2. Redistributions in binary form must reproduce the above copyright * 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the * notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution. * documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the NetBSD
* Foundation, Inc. and its contributors.
* 4. Neither the name of The NetBSD Foundation nor the names of its
* contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
* *
* THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
...@@ -37,6 +30,10 @@ $NetBSD: usbdevs,v 1.398 2005/03/15 17:52:18 xtraeme Exp $ ...@@ -37,6 +30,10 @@ $NetBSD: usbdevs,v 1.398 2005/03/15 17:52:18 xtraeme Exp $
* POSSIBILITY OF SUCH DAMAGE. * POSSIBILITY OF SUCH DAMAGE.
*/ */
/*
* Use "make -f Makefile.usbdevs" to regenerate usbdevs.h and usbdevs_data.h
*/
/* /*
* List of known USB vendors * List of known USB vendors
* *
...@@ -54,8 +51,8 @@ $NetBSD: usbdevs,v 1.398 2005/03/15 17:52:18 xtraeme Exp $ ...@@ -54,8 +51,8 @@ $NetBSD: usbdevs,v 1.398 2005/03/15 17:52:18 xtraeme Exp $
* *
* After adding a vendor ID VNDR and a product ID PRDCT you will have the * After adding a vendor ID VNDR and a product ID PRDCT you will have the
* following extra defines: * following extra defines:
* #define USB_VENDOR_VNDR 0x???? * #define USB_VENDOR_VNDR 0x????
* #define USB_PRODUCT_VNDR_PRDCT 0x???? * #define USB_PRODUCT_VNDR_PRDCT 0x????
* *
* You may have to add these defines to the respective probe routines to * You may have to add these defines to the respective probe routines to
* make the device recognised by the appropriate device driver. * make the device recognised by the appropriate device driver.
...@@ -74,6 +71,7 @@ vendor NEC 0x0409 NEC ...@@ -74,6 +71,7 @@ vendor NEC 0x0409 NEC
vendor KODAK 0x040a Eastman Kodak vendor KODAK 0x040a Eastman Kodak
vendor MELCO 0x0411 Melco vendor MELCO 0x0411 Melco
vendor CREATIVE 0x041e Creative Labs vendor CREATIVE 0x041e Creative Labs
vendor NOKIA 0x0421 Nokia
vendor ADI 0x0422 ADI Systems vendor ADI 0x0422 ADI Systems
vendor CATC 0x0423 Computer Access Technology vendor CATC 0x0423 Computer Access Technology
vendor SMC2 0x0424 Standard Microsystems vendor SMC2 0x0424 Standard Microsystems
...@@ -87,10 +85,12 @@ vendor ALPS 0x044e Alps Electric ...@@ -87,10 +85,12 @@ vendor ALPS 0x044e Alps Electric
vendor THRUST 0x044f Thrustmaster vendor THRUST 0x044f Thrustmaster
vendor TI 0x0451 Texas Instruments vendor TI 0x0451 Texas Instruments
vendor ANALOGDEVICES 0x0456 Analog Devices vendor ANALOGDEVICES 0x0456 Analog Devices
vendor SIS 0x0457 Silicon Integrated Systems
vendor KYE 0x0458 KYE Systems vendor KYE 0x0458 KYE Systems
vendor DIAMOND2 0x045a Diamond (Supra) vendor DIAMOND2 0x045a Diamond (Supra)
vendor MICROSOFT 0x045e Microsoft vendor MICROSOFT 0x045e Microsoft
vendor PRIMAX 0x0461 Primax Electronics vendor PRIMAX 0x0461 Primax Electronics
vendor MGE 0x0463 MGE UPS Systems
vendor AMP 0x0464 AMP vendor AMP 0x0464 AMP
vendor CHERRY 0x046a Cherry Mikroschalter vendor CHERRY 0x046a Cherry Mikroschalter
vendor MEGATRENDS 0x046b American Megatrends vendor MEGATRENDS 0x046b American Megatrends
...@@ -104,6 +104,7 @@ vendor LUCENT 0x047e Lucent ...@@ -104,6 +104,7 @@ vendor LUCENT 0x047e Lucent
vendor PLANTRONICS 0x047f Plantronics vendor PLANTRONICS 0x047f Plantronics
vendor KYOCERA 0x0482 Kyocera vendor KYOCERA 0x0482 Kyocera
vendor STMICRO 0x0483 STMicroelectronics vendor STMICRO 0x0483 STMicroelectronics
vendor MEIZU 0x0492 Meizu Electronics
vendor YAMAHA 0x0499 YAMAHA vendor YAMAHA 0x0499 YAMAHA
vendor COMPAQ 0x049f Compaq vendor COMPAQ 0x049f Compaq
vendor HITACHI 0x04a4 Hitachi vendor HITACHI 0x04a4 Hitachi
...@@ -134,6 +135,8 @@ vendor MYSON 0x04cf Myson Technology ...@@ -134,6 +135,8 @@ vendor MYSON 0x04cf Myson Technology
vendor DIGI2 0x04d0 Digi vendor DIGI2 0x04d0 Digi
vendor ITTCANON 0x04d1 ITT Canon vendor ITTCANON 0x04d1 ITT Canon
vendor ALTEC 0x04d2 Altec Lansing vendor ALTEC 0x04d2 Altec Lansing
vendor MICROCHIP 0x04d8 Microchip Technology
vendor HOLTEK 0x04d9 Holtek Semiconductor
vendor PANASONIC 0x04da Panasonic (Matsushita) vendor PANASONIC 0x04da Panasonic (Matsushita)
vendor SHARP 0x04dd Sharp vendor SHARP 0x04dd Sharp
vendor IIYAMA 0x04e1 Iiyama vendor IIYAMA 0x04e1 Iiyama
...@@ -147,6 +150,7 @@ vendor DALLAS 0x04fa Dallas Semiconductor ...@@ -147,6 +150,7 @@ vendor DALLAS 0x04fa Dallas Semiconductor
vendor AIPTEK2 0x04fc AIPTEK International vendor AIPTEK2 0x04fc AIPTEK International
vendor ACER 0x0502 Acer vendor ACER 0x0502 Acer
vendor 3COM 0x0506 3Com vendor 3COM 0x0506 3Com
vendor HOSIDEN 0x0507 Hosiden Corporation
vendor AZTECH 0x0509 Aztech Systems vendor AZTECH 0x0509 Aztech Systems
vendor BELKIN 0x050d Belkin Components vendor BELKIN 0x050d Belkin Components
vendor KAWATSU 0x050f Kawatsu Semiconductor vendor KAWATSU 0x050f Kawatsu Semiconductor
...@@ -173,6 +177,7 @@ vendor WACOM 0x056a WACOM ...@@ -173,6 +177,7 @@ vendor WACOM 0x056a WACOM
vendor ETEK 0x056c e-TEK Labs vendor ETEK 0x056c e-TEK Labs
vendor EIZO 0x056d EIZO vendor EIZO 0x056d EIZO
vendor ELECOM 0x056e Elecom vendor ELECOM 0x056e Elecom
vendor XYRATEX 0x0572 Xyratex
vendor HAUPPAUGE 0x0573 Hauppauge Computer Works vendor HAUPPAUGE 0x0573 Hauppauge Computer Works
vendor BAFO 0x0576 BAFO/Quality Computer Accessories vendor BAFO 0x0576 BAFO/Quality Computer Accessories
vendor YEDATA 0x057b Y-E Data vendor YEDATA 0x057b Y-E Data
...@@ -191,6 +196,7 @@ vendor OMNIVISION 0x05a9 OmniVision ...@@ -191,6 +196,7 @@ vendor OMNIVISION 0x05a9 OmniVision
vendor INSYSTEM 0x05ab In-System Design vendor INSYSTEM 0x05ab In-System Design
vendor APPLE 0x05ac Apple Computer vendor APPLE 0x05ac Apple Computer
vendor DIGI 0x05c5 Digi International vendor DIGI 0x05c5 Digi International
vendor QUALCOMM2 0x05c6 Qualcomm
vendor QTRONIX 0x05c7 Qtronix vendor QTRONIX 0x05c7 Qtronix
vendor ELSA 0x05cc ELSA vendor ELSA 0x05cc ELSA
vendor BRAINBOXES 0x05d1 Brainboxes Limited vendor BRAINBOXES 0x05d1 Brainboxes Limited
...@@ -218,6 +224,7 @@ vendor MACALLY 0x0618 Macally ...@@ -218,6 +224,7 @@ vendor MACALLY 0x0618 Macally
vendor ACTLABS 0x061c Act Labs vendor ACTLABS 0x061c Act Labs
vendor ALARIS 0x0620 Alaris vendor ALARIS 0x0620 Alaris
vendor APEX 0x0624 Apex vendor APEX 0x0624 Apex
vendor CREATIVE3 0x062a Creative Labs
vendor VIVITAR 0x0636 Vivitar vendor VIVITAR 0x0636 Vivitar
vendor AVISION 0x0638 Avision vendor AVISION 0x0638 Avision
vendor TEAC 0x0644 TEAC vendor TEAC 0x0644 TEAC
...@@ -226,11 +233,13 @@ vendor SANWASUPPLY 0x0663 Sanwa Supply ...@@ -226,11 +233,13 @@ vendor SANWASUPPLY 0x0663 Sanwa Supply
vendor LINKSYS 0x066b Linksys vendor LINKSYS 0x066b Linksys
vendor ACERSA 0x066e Acer Semiconductor America vendor ACERSA 0x066e Acer Semiconductor America
vendor SIGMATEL 0x066f Sigmatel vendor SIGMATEL 0x066f Sigmatel
vendor DRAYTEK 0x0675 DrayTek
vendor AIWA 0x0677 Aiwa vendor AIWA 0x0677 Aiwa
vendor ACARD 0x0678 ACARD Technology vendor ACARD 0x0678 ACARD Technology
vendor PROLIFIC 0x067b Prolific Technology vendor PROLIFIC 0x067b Prolific Technology
vendor SIEMENS 0x067c Siemens vendor SIEMENS 0x067c Siemens
vendor AVANCELOGIC 0x0680 Avance Logic vendor AVANCELOGIC 0x0680 Avance Logic
vendor SIEMENS2 0x0681 Siemens
vendor MINOLTA 0x0686 Minolta vendor MINOLTA 0x0686 Minolta
vendor CHPRODUCTS 0x068e CH Products vendor CHPRODUCTS 0x068e CH Products
vendor HAGIWARA 0x0693 Hagiwara Sys-Com vendor HAGIWARA 0x0693 Hagiwara Sys-Com
...@@ -258,6 +267,8 @@ vendor EICON 0x0734 Eicon Networks ...@@ -258,6 +267,8 @@ vendor EICON 0x0734 Eicon Networks
vendor DIGITALSTREAM 0x074e Digital Stream vendor DIGITALSTREAM 0x074e Digital Stream
vendor AUREAL 0x0755 Aureal Semiconductor vendor AUREAL 0x0755 Aureal Semiconductor
vendor MIDIMAN 0x0763 Midiman vendor MIDIMAN 0x0763 Midiman
vendor CYBERPOWER 0x0764 CyberPower Systems, Inc.
vendor SURECOM 0x0769 Surecom Technology
vendor LINKSYS2 0x077b Linksys vendor LINKSYS2 0x077b Linksys
vendor GRIFFIN 0x077d Griffin Technology vendor GRIFFIN 0x077d Griffin Technology
vendor SANDISK 0x0781 SanDisk vendor SANDISK 0x0781 SanDisk
...@@ -266,6 +277,7 @@ vendor LOGITEC 0x0789 Logitec ...@@ -266,6 +277,7 @@ vendor LOGITEC 0x0789 Logitec
vendor BRIMAX 0x078e Brimax vendor BRIMAX 0x078e Brimax
vendor AXIS 0x0792 Axis Communications vendor AXIS 0x0792 Axis Communications
vendor ABL 0x0794 ABL Electronics vendor ABL 0x0794 ABL Electronics
vendor SAGEM 0x079b Sagem
vendor SUNCOMM 0x079c Sun Communications, Inc. vendor SUNCOMM 0x079c Sun Communications, Inc.
vendor ALFADATA 0x079d Alfadata Computer vendor ALFADATA 0x079d Alfadata Computer
vendor NATIONALTECH 0x07a2 National Technical Systems vendor NATIONALTECH 0x07a2 National Technical Systems
...@@ -286,6 +298,7 @@ vendor ALLIEDTELESYN 0x07c9 Allied Telesyn International ...@@ -286,6 +298,7 @@ vendor ALLIEDTELESYN 0x07c9 Allied Telesyn International
vendor AVERMEDIA 0x07ca AVerMedia Technologies vendor AVERMEDIA 0x07ca AVerMedia Technologies
vendor SIIG 0x07cc SIIG vendor SIIG 0x07cc SIIG
vendor CASIO 0x07cf CASIO vendor CASIO 0x07cf CASIO
vendor DLINK2 0x07d1 D-Link
vendor APTIO 0x07d2 Aptio Products vendor APTIO 0x07d2 Aptio Products
vendor ARASAN 0x07da Arasan Chip Systems vendor ARASAN 0x07da Arasan Chip Systems
vendor ALLIEDCABLE 0x07e6 Allied Cable vendor ALLIEDCABLE 0x07e6 Allied Cable
...@@ -300,6 +313,7 @@ vendor ACCTON 0x083a Accton Technology ...@@ -300,6 +313,7 @@ vendor ACCTON 0x083a Accton Technology
vendor DIAMOND 0x0841 Diamond vendor DIAMOND 0x0841 Diamond
vendor NETGEAR 0x0846 BayNETGEAR vendor NETGEAR 0x0846 BayNETGEAR
vendor ACTIVEWIRE 0x0854 ActiveWire vendor ACTIVEWIRE 0x0854 ActiveWire
vendor BBELECTRONICS 0x0856 B&B Electronics
vendor PORTGEAR 0x085a PortGear vendor PORTGEAR 0x085a PortGear
vendor NETGEAR2 0x0864 Netgear vendor NETGEAR2 0x0864 Netgear
vendor SYSTEMTALKS 0x086e System Talks vendor SYSTEMTALKS 0x086e System Talks
...@@ -320,7 +334,9 @@ vendor AUTHENTEC 0x08ff AuthenTec ...@@ -320,7 +334,9 @@ vendor AUTHENTEC 0x08ff AuthenTec
vendor AUDIOTECHNICA 0x0909 Audio-Technica vendor AUDIOTECHNICA 0x0909 Audio-Technica
vendor TRUMPION 0x090a Trumpion Microelectronics vendor TRUMPION 0x090a Trumpion Microelectronics
vendor ALATION 0x0910 Alation Systems vendor ALATION 0x0910 Alation Systems
vendor GLOBESPAN 0x0915 Globespan
vendor CONCORDCAMERA 0x0919 Concord Camera vendor CONCORDCAMERA 0x0919 Concord Camera
vendor GARMIN 0x091e Garmin
vendor GOHUBS 0x0921 GoHubs vendor GOHUBS 0x0921 GoHubs
vendor BIOMETRIC 0x0929 American Biometric Company vendor BIOMETRIC 0x0929 American Biometric Company
vendor TOSHIBA 0x0930 Toshiba vendor TOSHIBA 0x0930 Toshiba
...@@ -330,17 +346,21 @@ vendor YANO 0x094f Yano ...@@ -330,17 +346,21 @@ vendor YANO 0x094f Yano
vendor KINGSTON 0x0951 Kingston Technology vendor KINGSTON 0x0951 Kingston Technology
vendor BLUEWATER 0x0956 BlueWater Systems vendor BLUEWATER 0x0956 BlueWater Systems
vendor AGILENT 0x0957 Agilent Technologies vendor AGILENT 0x0957 Agilent Technologies
vendor GUDE 0x0959 Gude ADS
vendor PORTSMITH 0x095a Portsmith vendor PORTSMITH 0x095a Portsmith
vendor ACERW 0x0967 Acer vendor ACERW 0x0967 Acer
vendor ADIRONDACK 0x0976 Adirondack Wire & Cable vendor ADIRONDACK 0x0976 Adirondack Wire & Cable
vendor BECKHOFF 0x0978 Beckhoff vendor BECKHOFF 0x0978 Beckhoff
vendor MINDSATWORK 0x097a Minds At Work vendor MINDSATWORK 0x097a Minds At Work
vendor ZIPPY 0x099a Zippy Technology Corporation
vendor POINTCHIPS 0x09a6 PointChips vendor POINTCHIPS 0x09a6 PointChips
vendor INTERSIL 0x09aa Intersil vendor INTERSIL 0x09aa Intersil
vendor TRIPPLITE2 0x09ae Tripp Lite
vendor ALTIUS 0x09b3 Altius Solutions vendor ALTIUS 0x09b3 Altius Solutions
vendor ARRIS 0x09c1 Arris Interactive vendor ARRIS 0x09c1 Arris Interactive
vendor ACTIVCARD 0x09c3 ACTIVCARD vendor ACTIVCARD 0x09c3 ACTIVCARD
vendor ACTISYS 0x09c4 ACTiSYS vendor ACTISYS 0x09c4 ACTiSYS
vendor NOVATEL 0x09d7 NovAtel
vendor AFOURTECH 0x09da A-FOUR TECH vendor AFOURTECH 0x09da A-FOUR TECH
vendor AIMEX 0x09dc AIMEX vendor AIMEX 0x09dc AIMEX
vendor ADDONICS 0x09df Addonics Technologies vendor ADDONICS 0x09df Addonics Technologies
...@@ -352,12 +372,15 @@ vendor CSR 0x0a12 Cambridge Silicon Radio ...@@ -352,12 +372,15 @@ vendor CSR 0x0a12 Cambridge Silicon Radio
vendor TREK 0x0a16 Trek Technology vendor TREK 0x0a16 Trek Technology
vendor ASAHIOPTICAL 0x0a17 Asahi Optical vendor ASAHIOPTICAL 0x0a17 Asahi Optical
vendor BOCASYSTEMS 0x0a43 Boca Systems vendor BOCASYSTEMS 0x0a43 Boca Systems
vendor SHANTOU 0x0a46 ShanTou
vendor MEDIAGEAR 0x0a48 MediaGear vendor MEDIAGEAR 0x0a48 MediaGear
vendor BROADCOM 0x0a5c Broadcom vendor BROADCOM 0x0a5c Broadcom
vendor GREENHOUSE 0x0a6b GREENHOUSE vendor GREENHOUSE 0x0a6b GREENHOUSE
vendor GEOCAST 0x0a79 Geocast Network Systems vendor GEOCAST 0x0a79 Geocast Network Systems
vendor ZYDAS 0x0ace Zydas Technology Corporation
vendor NEODIO 0x0aec Neodio vendor NEODIO 0x0aec Neodio
vendor VODAFONE 0x0af0 Vodafone vendor OPTIONNV 0x0af0 Option N.V:
vendor ASUSTEK 0x0b05 ASUSTeK Computer
vendor TODOS 0x0b0c Todos Data System vendor TODOS 0x0b0c Todos Data System
vendor SIIG2 0x0b39 SIIG vendor SIIG2 0x0b39 SIIG
vendor TEKRAM 0x0b3b Tekram Technology vendor TEKRAM 0x0b3b Tekram Technology
...@@ -368,58 +391,125 @@ vendor ATI2 0x0b6f ATI ...@@ -368,58 +391,125 @@ vendor ATI2 0x0b6f ATI
vendor ZEEVO 0x0b7a Zeevo, Inc. vendor ZEEVO 0x0b7a Zeevo, Inc.
vendor KURUSUGAWA 0x0b7e Kurusugawa Electronics, Inc. vendor KURUSUGAWA 0x0b7e Kurusugawa Electronics, Inc.
vendor ASIX 0x0b95 ASIX Electronics vendor ASIX 0x0b95 ASIX Electronics
vendor PROLIFIC2 0x0b8c Prolific Technology Inc
vendor O2MICRO 0x0b97 O2 Micro
vendor USR 0x0baf U.S. Robotics vendor USR 0x0baf U.S. Robotics
vendor AMBIT 0x0bb2 Ambit Microsystems
vendor REALTEK 0x0bda Realtek vendor REALTEK 0x0bda Realtek
vendor ADDONICS2 0x0bf6 Addonics Technology vendor ADDONICS2 0x0bf6 Addonics Technology
vendor FSC 0x0bf8 Fujitsu Siemens Computers
vendor AGATE 0x0c08 Agate Technologies vendor AGATE 0x0c08 Agate Technologies
vendor DMI 0x0c0b DMI vendor DMI 0x0c0b DMI
vendor CHICONY2 0x0c45 Chicony Electronics vendor CHICONY2 0x0c45 Chicony Electronics
vendor MICRODIA 0x0c45 Microdia / Sonix Technology Co., Ltd.
vendor SEALEVEL 0x0c52 Sealevel System vendor SEALEVEL 0x0c52 Sealevel System
vendor LUWEN 0x0c76 EasyDisk vendor LUWEN 0x0c76 EasyDisk
vendor QUALCOMM_K 0x0c88 Qualcomm Kyocera
vendor ZCOM 0x0cde Z-Com vendor ZCOM 0x0cde Z-Com
vendor TANGTOP 0x0d3d Tangtop vendor TANGTOP 0x0d3d Tangtop
vendor SMC3 0x0d5c Standard Microsystems vendor SMC3 0x0d5c Standard Microsystems
vendor PEN 0x0d7d Pen Drive vendor PEN 0x0d7d Pen Drive
vendor ACDC 0x0d7e American Computer & Digital Components vendor ACDC 0x0d7e American Computer & Digital Components
vendor ABC 0x0d8c ABC vendor CMEDIA 0x0d8c C-Media Electronics Inc.
vendor CONCEPTRONIC2 0x0d8e Conceptronic
vendor MSI 0x0db0 Micro Star vendor MSI 0x0db0 Micro Star
vendor ELCON 0x0db7 ELCON Systemtechnik
vendor SITECOMEU 0x0df6 Sitecom Europe
vendor HAWKING 0x0e66 Hawking vendor HAWKING 0x0e66 Hawking
vendor GMATE 0x0e7e G.Mate, Inc
vendor MTK 0x0e8d MTK
vendor OTI 0x0ea0 Ours Technology vendor OTI 0x0ea0 Ours Technology
vendor PILOTECH 0x0eaf Pilotech vendor PILOTECH 0x0eaf Pilotech
vendor NOVATECH 0x0eb0 Nova Tech
vendor EGALAX 0x0eef eGalax vendor EGALAX 0x0eef eGalax
vendor TOD 0x0ede TOD
vendor AIRPRIME 0x0f3d AirPrime, Incorporated vendor AIRPRIME 0x0f3d AirPrime, Incorporated
vendor VTECH 0x0f88 VTech
vendor FALCOM 0x0f94 Falcom Wireless Communications GmbH
vendor RIM 0x0fca Research In Motion
vendor DYNASTREAM 0x0fcf Dynastream Innovations
vendor SUNRISING 0x0fe6 SUNRISING
vendor QUALCOMM 0x1004 Qualcomm vendor QUALCOMM 0x1004 Qualcomm
vendor GIGABYTE 0x1044 GIGABYTE
vendor MOTOROLA 0x1063 Motorola vendor MOTOROLA 0x1063 Motorola
vendor CCYU 0x1065 CCYU Technology vendor CCYU 0x1065 CCYU Technology
vendor HYUNDAI 0x106c Hyundai CuriTel
vendor SILABS2 0x10a6 SILABS2
vendor USI 0x10ab USI
vendor PLX 0x10b5 PLX vendor PLX 0x10b5 PLX
vendor ASANTE 0x10bd Asante vendor ASANTE 0x10bd Asante
vendor SILABS 0x10c4 Silicon Labs
vendor TENX 0x1130 Ten X Technology, Inc.
vendor JRC 0x1145 Japan Radio Company vendor JRC 0x1145 Japan Radio Company
vendor SPHAIRON 0x114b Sphairon Access Systems GmbH
vendor DELORME 0x1163 DeLorme
vendor SERVERWORKS 0x1166 ServerWorks vendor SERVERWORKS 0x1166 ServerWorks
vendor ACERCM 0x1189 Acer Communications & Multimedia vendor ACERCM 0x1189 Acer Communications & Multimedia
vendor SIERRA 0x1199 Sierra Wireless
vendor TOPFIELD 0x11db Topfield Co., Ltd
vendor NETINDEX 0x11f6 NetIndex
vendor FUJITSU2 0x1221 Fujitsu Ltd.
vendor TSUNAMI 0x1241 Tsunami vendor TSUNAMI 0x1241 Tsunami
vendor PHEENET 0x124a Pheenet
vendor TARGUS 0x1267 Targus
vendor TWINMOS 0x126f TwinMOS
vendor CREATIVE2 0x1292 Creative Labs vendor CREATIVE2 0x1292 Creative Labs
vendor BELKIN2 0x1293 Belkin Components vendor BELKIN2 0x1293 Belkin Components
vendor CYBERTAN 0x129b CyberTAN Technology
vendor HUAWEI 0x12d1 Huawei Technologies
vendor AINCOMM 0x12fd Aincomm vendor AINCOMM 0x12fd Aincomm
vendor MOBILITY 0x1342 Mobility vendor MOBILITY 0x1342 Mobility
vendor DICKSMITH 0x1371 Dick Smith Electronics
vendor BALTECH 0x13ad Baltech
vendor CISCOLINKSYS 0x13b1 Cisco-Linksys
vendor SHARK 0x13d2 Shark vendor SHARK 0x13d2 Shark
vendor PHISON 0x13fe Phison Electronics Corp.
vendor NOVATEL2 0x1410 Novatel
vendor OMNIVISION2 0x1415 OmniVision Technologies, Inc.
vendor MERLIN 0x1416 Merlin
vendor WISTRONNEWEB 0x1435 Wistron NeWeb
vendor HUAWEI3COM 0x1472 Huawei-3Com
vendor SILICOM 0x1485 Silicom vendor SILICOM 0x1485 Silicom
vendor RALINK 0x1485 Ralink Technology
vendor RALINK_2 0x148f Ralink Technology
vendor CONCEPTRONIC 0x14b2 Conceptronic
vendor SUPERTOP 0x14cd SuperTop
vendor PLANEX3 0x14ea Planex Communications
vendor SILICONPORTALS 0x1527 Silicon Portals vendor SILICONPORTALS 0x1527 Silicon Portals
vendor OQO 0x1557 OQO vendor OQO 0x1557 OQO
vendor UMEDIA 0x157e U-MEDIA Communications
vendor FIBERLINE 0x1582 Fiberline
vendor SOHOWARE 0x15e8 SOHOware vendor SOHOWARE 0x15e8 SOHOware
vendor UMAX 0x1606 UMAX Data Systems vendor UMAX 0x1606 UMAX Data Systems
vendor INSIDEOUT 0x1608 Inside Out Networks vendor INSIDEOUT 0x1608 Inside Out Networks
vendor GOODWAY 0x1631 Good Way Technology
vendor ENTREGA 0x1645 Entrega vendor ENTREGA 0x1645 Entrega
vendor ACTIONTEC 0x1668 Actiontec Electronics vendor ACTIONTEC 0x1668 Actiontec Electronics
vendor GIGASET 0x1690 Gigaset
vendor ANYDATA 0x16d5 AnyDATA Inc.
vendor JABLOTRON 0x16d6 Jablotron
vendor LINKSYS4 0x1737 Linksys
vendor SENAO 0x1740 Senao
vendor METAGEEK 0x1781 MetaGeek
vendor DISPLAYLINK 0x17e9 DisplayLink
vendor AMIT 0x18c5 AMIT
vendor QCOM 0x18e8 Qcom
vendor LINKSYS3 0x1915 Linksys vendor LINKSYS3 0x1915 Linksys
vendor MEINBERG 0x1938 Meinberg Funkuhren
vendor QUALCOMMINC 0x19d2 Qualcomm, Incorporated
vendor WINCHIPHEAD2 0x1a86 QinHeng Electronics
vendor DLINK 0x2001 D-Link vendor DLINK 0x2001 D-Link
vendor PLANEX2 0x2019 Planex Communications
vendor ERICSSON 0x2282 Ericsson vendor ERICSSON 0x2282 Ericsson
vendor MOTOROLA2 0x22b8 Motorola vendor MOTOROLA2 0x22b8 Motorola
vendor PINNACLE 0x2304 Pinnacle Systems
vendor TRIPPLITE 0x2478 Tripp-Lite vendor TRIPPLITE 0x2478 Tripp-Lite
vendor HIROSE 0x2631 Hirose Electric vendor HIROSE 0x2631 Hirose Electric
vendor NHJ 0x2770 NHJ vendor NHJ 0x2770 NHJ
vendor PLANEX 0x2c02 Planex Communications vendor PLANEX 0x2c02 Planex Communications
vendor VIDZMEDIA 0x3275 VidzMedia Pte Ltd vendor VIDZMEDIA 0x3275 VidzMedia Pte Ltd
vendor AEI 0x3334 AEI vendor AEI 0x3334 AEI
vendor HANK 0x3353 Hank Connection
vendor PQI 0x3538 PQI vendor PQI 0x3538 PQI
vendor DAISY 0x3579 Daisy Technology vendor DAISY 0x3579 Daisy Technology
vendor NI 0x3923 National Instruments vendor NI 0x3923 National Instruments
...@@ -427,11 +517,20 @@ vendor MICRONET 0x3980 Micronet Communications ...@@ -427,11 +517,20 @@ vendor MICRONET 0x3980 Micronet Communications
vendor IODATA2 0x40bb I-O Data vendor IODATA2 0x40bb I-O Data
vendor IRIVER 0x4102 iRiver vendor IRIVER 0x4102 iRiver
vendor DELL 0x413c Dell vendor DELL 0x413c Dell
vendor WINCHIPHEAD 0x4348 WinChipHead
vendor AVERATEC 0x50c2 Averatec vendor AVERATEC 0x50c2 Averatec
vendor SWEEX 0x5173 Sweex
vendor ONSPEC2 0x55aa OnSpec Electronic Inc. vendor ONSPEC2 0x55aa OnSpec Electronic Inc.
vendor ZINWELL 0x5a57 Zinwell
vendor SITECOM 0x6189 Sitecom vendor SITECOM 0x6189 Sitecom
vendor ARKMICROCHIPS 0x6547 ArkMicroChips
vendor 3COM2 0x6891 3Com
vendor INTEL 0x8086 Intel vendor INTEL 0x8086 Intel
vendor MOSCHIP 0x9710 MosChip Semiconductor
vendor ALWAYSINNOVATING 0xa110 Always Innovating
vendor EMPIA 0xeb1a eMPIA Technology
vendor HP2 0xf003 Hewlett Packard vendor HP2 0xf003 Hewlett Packard
vendor USRP 0xfffe GNU Radio USRP
/* /*
* List of known products. Grouped by vendor. * List of known products. Grouped by vendor.
...@@ -444,6 +543,7 @@ product 3COM 3C19250 0x03e8 3C19250 Ethernet adapter ...@@ -444,6 +543,7 @@ product 3COM 3C19250 0x03e8 3C19250 Ethernet adapter
product 3COM USR56K 0x3021 U.S.Robotics 56000 Voice Faxmodem Pro product 3COM USR56K 0x3021 U.S.Robotics 56000 Voice Faxmodem Pro
product 3COM 3C460 0x11f8 HomeConnect 3C460 product 3COM 3C460 0x11f8 HomeConnect 3C460
product 3COM 3C460B 0x4601 HomeConnect 3C460B product 3COM 3C460B 0x4601 HomeConnect 3C460B
product 3COM2 3CRUSB10075 0xa727 3CRUSB10075
product 3COMUSR OFFICECONN 0x0082 3Com OfficeConnect Analog Modem product 3COMUSR OFFICECONN 0x0082 3Com OfficeConnect Analog Modem
product 3COMUSR USRISDN 0x008f 3Com U.S. Robotics Pro ISDN TA product 3COMUSR USRISDN 0x008f 3Com U.S. Robotics Pro ISDN TA
...@@ -452,8 +552,8 @@ product 3COMUSR USR56K 0x3021 U.S.Robotics 56000 Voice Faxmodem Pro ...@@ -452,8 +552,8 @@ product 3COMUSR USR56K 0x3021 U.S.Robotics 56000 Voice Faxmodem Pro
/* ACDC products */ /* ACDC products */
product ACDC HUB 0x2315 USB Pen Drive HUB product ACDC HUB 0x2315 USB Pen Drive HUB
product ACDC PEN 0x2317 USB Pen Drive with Secure Write
product ACDC SECWRITE 0x2316 USB Pen Drive Secure Write product ACDC SECWRITE 0x2316 USB Pen Drive Secure Write
product ACDC PEN 0x2317 USB Pen Drive with Secure Write
/* AboCom products */ /* AboCom products */
product ABOCOM XX1 0x110c XX1 product ABOCOM XX1 0x110c XX1
...@@ -469,12 +569,27 @@ product ABOCOM LCS8138TX 0x401a LCS-8138TX ...@@ -469,12 +569,27 @@ product ABOCOM LCS8138TX 0x401a LCS-8138TX
product ABOCOM XX8 0x4102 XX8 product ABOCOM XX8 0x4102 XX8
product ABOCOM XX9 0x4104 XX9 product ABOCOM XX9 0x4104 XX9
product ABOCOM UFE2000 0x420a UFE2000 USB2.0 Fast Ethernet Adapter product ABOCOM UFE2000 0x420a UFE2000 USB2.0 Fast Ethernet Adapter
product ABOCOM WL54 0x6001 WL54
product ABOCOM XX10 0xabc1 XX10 product ABOCOM XX10 0xabc1 XX10
product ABOCOM HWU54DM 0xb21b HWU54DM
product ABOCOM RT2573_2 0xb21c RT2573
product ABOCOM RT2573_3 0xb21d RT2573
product ABOCOM RT2573_4 0xb21e RT2573
product ABOCOM WUG2700 0xb21f WUG2700
/* Accton products */ /* Accton products */
product ACCTON USB320_EC 0x1046 USB320-EC Ethernet Adapter product ACCTON USB320_EC 0x1046 USB320-EC Ethernet Adapter
product ACCTON 111 0x3503 T-Sinus 111 WLAN product ACCTON 111 0x3503 T-Sinus 111 WLAN
product ACCTON SMCWUSBG 0x4505 SMCWUSB-G
product ACCTON PRISM_GT 0x4521 PrismGT USB 2.0 WLAN
product ACCTON SS1001 0x5046 SpeedStream Ethernet Adapter product ACCTON SS1001 0x5046 SpeedStream Ethernet Adapter
product ACCTON ZD1211B 0xe501 ZD1211B
/* Acer Communications & Multimedia products */
product ACERCM EP1427X2 0x0893 EP-1427X-2 Ethernet
/* Acer Labs products */
product ACERLABS M5632 0x5632 USB 2.0 Data Link
/* Acer Peripherals, Inc. products */ /* Acer Peripherals, Inc. products */
product ACERP ACERSCAN_C310U 0x12a6 Acerscan C310U product ACERP ACERSCAN_C310U 0x12a6 Acerscan C310U
...@@ -508,9 +623,11 @@ product ADAPTEC AWN8020 0x0020 AWN-8020 WLAN ...@@ -508,9 +623,11 @@ product ADAPTEC AWN8020 0x0020 AWN-8020 WLAN
product ADDONICS2 205 0xa001 Cable 205 product ADDONICS2 205 0xa001 Cable 205
/* ADMtek products */ /* ADMtek products */
product ADMTEK PEGASUSII_4 0x07c2 AN986A Ethernet
product ADMTEK PEGASUS 0x0986 AN986 USB Ethernet product ADMTEK PEGASUS 0x0986 AN986 USB Ethernet
product ADMTEK PEGASUSII 0x8511 AN8511 USB Ethernet product ADMTEK PEGASUSII 0x8511 AN8511 USB Ethernet
product ADMTEK PEGASUSII_2 0x8513 AN8513 Ethernet product ADMTEK PEGASUSII_2 0x8513 AN8513 Ethernet
product ADMTEK PEGASUSII_3 0x8515 ADM8515 USB 2.0 Ethernet
/* ADS products */ /* ADS products */
product ADS UBS10BT 0x0008 UBS-10BT Ethernet product ADS UBS10BT 0x0008 UBS-10BT Ethernet
...@@ -534,18 +651,22 @@ product AGFA SNAPSCANE25 0x2095 SnapScan e25 ...@@ -534,18 +651,22 @@ product AGFA SNAPSCANE25 0x2095 SnapScan e25
product AGFA SNAPSCANE26 0x2097 SnapScan e26 product AGFA SNAPSCANE26 0x2097 SnapScan e26
product AGFA SNAPSCANE52 0x20fd SnapScan e52 product AGFA SNAPSCANE52 0x20fd SnapScan e52
/* AirPrime products */ /* Aincomm products */
product AIRPRIME PC5220 0x0112 CDMA Wireless PC Card product AINCOMM AWU2000B 0x1001 AWU2000B
/* AIPTEK International products */ /* AIPTEK International products */
product AIPTEK2 PENCAM_MEGA_1_3 0x504a PenCam Mega 1.3 product AIPTEK2 PENCAM_MEGA_1_3 0x504a PenCam Mega 1.3
/* Aincomm products */ /* AirPrime products */
product AINCOMM AWU2000B 0x1001 AWU2000B product AIRPRIME PC5220 0x0112 CDMA Wireless PC Card
/* AKS products */ /* AKS products */
product AKS USBHASP 0x0001 USB-HASP 0.06 product AKS USBHASP 0x0001 USB-HASP 0.06
/* Alcatel Telecom products */
product ALCATELT ST120G 0x0120 SpeedTouch 120g
product ALCATELT ST121G 0x0121 SpeedTouch 121g
/* Alcor Micro, Inc. products */ /* Alcor Micro, Inc. products */
product ALCOR2 KBD_HUB 0x2802 Kbd Hub product ALCOR2 KBD_HUB 0x2802 Kbd Hub
...@@ -558,19 +679,48 @@ product ALCOR NEC_KBD_HUB 0x9472 NEC Kbd Hub ...@@ -558,19 +679,48 @@ product ALCOR NEC_KBD_HUB 0x9472 NEC Kbd Hub
product ALTEC ADA70 0x0070 ADA70 Speakers product ALTEC ADA70 0x0070 ADA70 Speakers
product ALTEC ASC495 0xff05 ASC495 Speakers product ALTEC ASC495 0xff05 ASC495 Speakers
/* Always Innovating */
product ALWAYSINNOVATING USBKBDTPAD 0x0002 Always Innovating USB Keyboard / Touchpad
/* American Power Conversion products */ /* American Power Conversion products */
product APC UPSPRO500 0x0002 Back-UPS Pro 500 product APC UPS 0x0002 Uninterruptible Power Supply
/* Ambit Microsystems products */
product AMBIT NTL_250 0x6098 NTL 250 cable modem
/* AMD product */
product AMD TV_WONDER_600_USB 0xb002 TV Wonder 600 USB
/* AMIT products */
product AMIT CGWLUSB2GO 0x0002 CG-WLUSB2GO
/* Anchor products */ /* Anchor products */
product ANCHOR EZUSB 0x2131 EZUSB product ANCHOR EZUSB 0x2131 EZUSB
product ANCHOR EZLINK 0x2720 EZLINK product ANCHOR EZLINK 0x2720 EZLINK
/* AnyDATA Inc. products */
product ANYDATA A2502 0x6202 NTT DoCoMo A2502
product ANYDATA ADU_E100H 0x6501 ADU-E100H
product ANYDATA ADU_500A 0x6502 ADU-E500A
/* AOX, Inc. products */ /* AOX, Inc. products */
product AOX USB101 0x0008 USB ethernet controller engine product AOX USB101 0x0008 USB ethernet controller engine
/* Apple Computer products */ /* Apple Computer products */
product APPLE EXT_KBD 0x020c Apple Extended USB Keyboard
product APPLE OPTMOUSE 0x0302 Optical mouse product APPLE OPTMOUSE 0x0302 Optical mouse
product APPLE MIGHTYMOUSE 0x0304 Mighty Mouse
product APPLE MAGICMOUSE 0x030d Magic Mouse
product APPLE EXT_KBD_HUB 0x1003 Hub in Apple Extended USB Keyboard
product APPLE SPEAKERS 0x1101 Speakers product APPLE SPEAKERS 0x1101 Speakers
product APPLE IPHONE 0x1290 iPhone
product APPLE IPOD_TOUCH 0x1291 iPod Touch
product APPLE IPHONE_3G 0x1292 iPhone 3G
product APPLE IPHONE_3GS 0x1294 iPhone 3GS
product APPLE ETHERNET 0x1402 Apple USB to Ethernet
/* ArkMicroChips products */
product ARKMICROCHIPS USBSERIAL 0x0232 USB-UART Controller
/* Asahi Optical products */ /* Asahi Optical products */
product ASAHIOPTICAL OPTIO230 0x0004 PENTAX Optio230 product ASAHIOPTICAL OPTIO230 0x0004 PENTAX Optio230
...@@ -580,12 +730,24 @@ product ASAHIOPTICAL OPTIO330 0x0006 Digital camera ...@@ -580,12 +730,24 @@ product ASAHIOPTICAL OPTIO330 0x0006 Digital camera
product ASANTE EA 0x1427 Ethernet Adapter product ASANTE EA 0x1427 Ethernet Adapter
/* ASIX Electronics products */ /* ASIX Electronics products */
product ASIX AX88172 0x1720 USB 2.0 10/100 ethernet controller product ASIX AX88172 0x1720 AX88172 USB 2.0 10/100 Ethernet adapter
product ASIX AX88178 0x1780 AX88178 USB 2.0 10/100 Ethernet adapter
product ASIX AX88772 0x7720 AX88772 USB 2.0 10/100 Ethernet adapter
product ASIX AX88772A 0x772a AX88772A USB 2.0 10/100 Ethernet adapter
/* ASUSTeK computer products */
product ASUSTEK WL167G 0x1707 WL-167g USB2.0 WLAN Adapter
product ASUSTEK WL159G 0x170c WL-159g
product ASUSTEK A9T_WIFI 0x171b A9T wireless
product ASUSTEK WL167G_2 0x1723 WL-167g USB2.0 WLAN Adapter (version 2)
product ASUSTEK WL167G_3 0x1724 WL-167g USB2.0 WLAN Adapter (version 2)
product ASUSTEK MYPAL_A730 0x4202 MyPal A730
/* ATen products */ /* ATen products */
product ATEN UC1284 0x2001 Parallel printer adapter product ATEN UC1284 0x2001 Parallel printer adapter
product ATEN UC10T 0x2002 10Mbps ethernet adapter product ATEN UC10T 0x2002 10Mbps ethernet adapter
product ATEN UC232A 0x2008 Serial adapter product ATEN UC232A 0x2008 Serial adapter
product ATEN UC210T 0x2009 UC210T Ethernet adapter
product ATEN DSB650C 0x4000 DSB-650C product ATEN DSB650C 0x4000 DSB-650C
/* ATI products */ /* ATI products */
...@@ -595,14 +757,13 @@ product ATI2 205 0xa001 USB Cable 205 ...@@ -595,14 +757,13 @@ product ATI2 205 0xa001 USB Cable 205
product ATMEL UHB124 0x3301 UHB124 hub product ATMEL UHB124 0x3301 UHB124 hub
product ATMEL DWL900AP 0x5601 DWL-900AP Wireless access point product ATMEL DWL900AP 0x5601 DWL-900AP Wireless access point
product ATMEL DWL120 0x7602 DWL-120 Wireless adapter product ATMEL DWL120 0x7602 DWL-120 Wireless adapter
product ATMEL AT76C503A 0x7603 AT76C503A
product ATMEL BW002 0x7605 BW002 Wireless adapter product ATMEL BW002 0x7605 BW002 Wireless adapter
product ATMEL BW002 0x7605 BW002
product ATMEL WL1130 0x7613 WL-1130 product ATMEL WL1130 0x7613 WL-1130
product ATMEL AT76C505A 0x7614 AT76C505A product ATMEL AT76C505A 0x7614 AT76C505A
product ATMEL AT76C503A 0x7603 AT76C503A
/* Audio-Technica products */ /* Audio-Technica products */
product AUDIOTECHNICA ATCHA4USB 0x0009 ATC-HA4USB USB headphone product AUDIOTECHNICA ATCHA4USB 0x0009 ATC-HA4USB USB headphone
/* Avance Logic products */ /* Avance Logic products */
product AVANCELOGIC USBAUDIO 0x0100 USB Audio Speaker product AVANCELOGIC USBAUDIO 0x0100 USB Audio Speaker
...@@ -613,25 +774,39 @@ product AVERATEC USBWLAN 0x4013 WLAN ...@@ -613,25 +774,39 @@ product AVERATEC USBWLAN 0x4013 WLAN
/* Avision products */ /* Avision products */
product AVISION 1200U 0x0268 1200U scanner product AVISION 1200U 0x0268 1200U scanner
/* Baltech products */
product BALTECH CARDREADER 0x9999 Card reader
/* B&B Electronics products */
product BBELECTRONICS USOTL4 0xAC01 uLinks RS-422/485
/* Belkin products */ /* Belkin products */
/*product BELKIN F5U111 0x???? F5U111 Ethernet adapter*/ /*product BELKIN F5U111 0x???? F5U111 Ethernet adapter*/
product BELKIN2 F5U002 0x0002 F5U002 Parallel printer adapter product BELKIN2 F5U002 0x0002 F5U002 Parallel printer adapter
product BELKIN F5D6050 0x0050 F5D6050 802.11b Wireless adapter product BELKIN F5D6050 0x0050 F5D6050 802.11b Wireless adapter
product BELKIN F5U103 0x0103 F5U103 Serial adapter product BELKIN F5U103 0x0103 F5U103 Serial adapter
product BELKIN F5U109 0x0109 F5U109 Serial adapter product BELKIN F5U109 0x0109 F5U109 Serial adapter
product BELKIN F5U409 0x0409 F5U409 Serial
product BELKIN SCSI 0x0115 SCSI Adaptor product BELKIN SCSI 0x0115 SCSI Adaptor
product BELKIN USB2LAN 0x0121 USB to LAN Converter product BELKIN USB2LAN 0x0121 USB to LAN Converter
product BELKIN F5U208 0x0208 F5U208 VideoBus II product BELKIN F5U208 0x0208 F5U208 VideoBus II
product BELKIN F5U237 0x0237 F5U237 USB 2.0 7-Port Hub product BELKIN F5U237 0x0237 F5U237 USB 2.0 7-Port Hub
product BELKIN F5U409 0x0409 F5U409 Serial
product BELKIN UPS 0x0980 UPS product BELKIN UPS 0x0980 UPS
product BELKIN F5U120 0x1203 F5U120-PC Hub product BELKIN F5U120 0x1203 F5U120-PC Hub
product BELKIN ZD1211B 0x4050 ZD1211B
product BELKIN F5D5055 0x5055 F5D5055 Ethernet adapter
product BELKIN F5D7050 0x7050 F5D7050 54g USB Network Adapter
product BELKIN F5D7051 0x7051 F5D7051 54g USB Network Adapter
product BELKIN F5D7050A 0x705a F5D705A 54g USB Network Adapter
product BELKIN F5D7050C 0x705c F5D705C 54g USB Network Adapter
product BELKIN F5D9050V3 0x905b F5D9050 ver 3
/* Billionton products */ /* Billionton products */
product BILLIONTON USB100 0x0986 USB100N 10/100 FastEthernet Adapter product BILLIONTON USB100 0x0986 USB100N 10/100 FastEthernet Adapter
product BILLIONTON USBLP100 0x0987 USB100LP product BILLIONTON USBLP100 0x0987 USB100LP
product BILLIONTON USBEL100 0x0988 USB100EL product BILLIONTON USBEL100 0x0988 USB100EL
product BILLIONTON USBE100 0x8511 USBE100 product BILLIONTON USBE100 0x8511 USBE100
product BILLIONTON USB2AR 0x90ff USB2AR Ethernet
/* Broadcom products */ /* Broadcom products */
product BROADCOM BCM2033 0x2000 BCM2033 product BROADCOM BCM2033 0x2000 BCM2033
...@@ -656,6 +831,12 @@ product CANON G1 0x3048 PowerShot G1 ...@@ -656,6 +831,12 @@ product CANON G1 0x3048 PowerShot G1
product CANON A20 0x304e PowerShot A20 product CANON A20 0x304e PowerShot A20
product CANON S200 0x3065 PowerShot S200 product CANON S200 0x3065 PowerShot S200
product CANON EOS300D 0x3084 EOS 300D / Digital Rebel product CANON EOS300D 0x3084 EOS 300D / Digital Rebel
product CANON SD630 0x30fe PowerShot SD630
/* CASIO products */
product CASIO QV 0x1001 QV DigitalCamera
product CASIO BE300 0x2002 BE-300 PDA
product CASIO NAMELAND 0x4001 CASIO Nameland EZ-USB
/* CATC products */ /* CATC products */
product CATC NETMATE 0x000a Netmate ethernet adapter product CATC NETMATE 0x000a Netmate ethernet adapter
...@@ -663,18 +844,14 @@ product CATC NETMATE2 0x000c Netmate2 ethernet adapter ...@@ -663,18 +844,14 @@ product CATC NETMATE2 0x000c Netmate2 ethernet adapter
product CATC CHIEF 0x000d USB Chief Bus & Protocol Analyzer product CATC CHIEF 0x000d USB Chief Bus & Protocol Analyzer
product CATC ANDROMEDA 0x1237 Andromeda hub product CATC ANDROMEDA 0x1237 Andromeda hub
/* CASIO products */
product CASIO QV 0x1001 QV DigitalCamera
product CASIO BE300 0x2002 BE-300 PDA
product CASIO NAMELAND 0x4001 CASIO Nameland EZ-USB
/* CCYU Technology products */ /* CCYU Technology products */
product CCYU EASYDISK 0x2136 EasyDisk Portable Device product CCYU EASYDISK 0x2136 EasyDisk Portable Device
/* Cherry products */ /* Cherry products */
product CHERRY MY3000KBD 0x0001 My3000 keyboard product CHERRY MY3000KBD 0x0001 My3000 keyboard
product CHERRY MY3000HUB 0x0003 My3000 hub product CHERRY MY3000HUB 0x0003 My3000 hub
product CHERRY CYBOARD 0x0004 CyBoard Keyboard product CHERRY CYBOARD 0x0004 CyBoard Keyboard
product CHERRY MY6000KBD 0x0011 My6000 keyboard
/* Chic Technology products */ /* Chic Technology products */
product CHIC MOUSE1 0x0001 mouse product CHIC MOUSE1 0x0001 mouse
...@@ -687,9 +864,20 @@ product CHICONY2 TWINKLECAM 0x600d TwinkleCam USB camera ...@@ -687,9 +864,20 @@ product CHICONY2 TWINKLECAM 0x600d TwinkleCam USB camera
/* CH Products */ /* CH Products */
product CHPRODUCTS PROTHROTTLE 0x00f1 Pro Throttle product CHPRODUCTS PROTHROTTLE 0x00f1 Pro Throttle
product CHPRODUCTS PROPEDALS 0x00f2 Pro Pedals product CHPRODUCTS PROPEDALS 0x00f2 Pro Pedals
product CHPRODUCTS FIGHTERSTICK 0x00f3 Fighterstick product CHPRODUCTS FIGHTERSTICK 0x00f3 Fighterstick
product CHPRODUCTS FLIGHTYOKE 0x00ff Flight Sim Yoke product CHPRODUCTS FLIGHTYOKE 0x00ff Flight Sim Yoke
/* Cisco-Linksys products */
product CISCOLINKSYS WUSB54GV2 0x000a WUSB54G v2
product CISCOLINKSYS WUSB54AG 0x000c WUSB54AG
product CISCOLINKSYS WUSB54G 0x000d WUSB54G Wireless-G USB Network Adapter
product CISCOLINKSYS WUSB54GP 0x0011 WUSB54GP Wireless-G USB Network Adapter
product CISCOLINKSYS USB200MV2 0x0018 USB200M v2
product CISCOLINKSYS HU200TS 0x001a HU200-TS
product CISCOLINKSYS WUSB54GC 0x0020 WUSB54GC
product CISCOLINKSYS WUSB54GR 0x0023 WUSB54GR
product CISCOLINKSYS WUSBF54G 0x0024 WUSBF54G
/* Compaq products */ /* Compaq products */
product COMPAQ IPAQPOCKETPC 0x0003 iPAQ PocketPC product COMPAQ IPAQPOCKETPC 0x0003 iPAQ PocketPC
product COMPAQ A1500 0x0012 A1500 product COMPAQ A1500 0x0012 A1500
...@@ -702,6 +890,11 @@ product COMPAQ HNE200 0x8511 HNE-200 USB Ethernet adapter ...@@ -702,6 +890,11 @@ product COMPAQ HNE200 0x8511 HNE-200 USB Ethernet adapter
/* Composite Corp products looks the same as "TANGTOP" */ /* Composite Corp products looks the same as "TANGTOP" */
product COMPOSITE USBPS2 0x0001 USB to PS2 Adaptor product COMPOSITE USBPS2 0x0001 USB to PS2 Adaptor
/* Conceptronic products */
product CONCEPTRONIC2 PRISM_GT 0x3762 PrismGT USB 2.0 WLAN
product CONCEPTRONIC C54RU 0x3c02 C54RU WLAN
product CONCEPTRONIC C54RU2 0x3c22 C54RU
/* Concord Camera products */ /* Concord Camera products */
product CONCORDCAMERA EYE_Q_3X 0x0100 Eye Q 3x product CONCORDCAMERA EYE_Q_3X 0x0100 Eye Q 3x
...@@ -716,6 +909,10 @@ product COREGA FETHER_USB_TXS 0x000d FEther USB-TXS ...@@ -716,6 +909,10 @@ product COREGA FETHER_USB_TXS 0x000d FEther USB-TXS
product COREGA WLANUSB 0x0012 Wireless LAN USB Stick-11 product COREGA WLANUSB 0x0012 Wireless LAN USB Stick-11
product COREGA FETHER_USB2_TX 0x0017 FEther USB2-TX product COREGA FETHER_USB2_TX 0x0017 FEther USB2-TX
product COREGA WLUSB_11_KEY 0x001a ULUSB-11 Key product COREGA WLUSB_11_KEY 0x001a ULUSB-11 Key
product COREGA CGWLUSB2GTST 0x0020 CG-WLUSB2GTST
product COREGA CGUSBRS232R 0x002a CG-USBRS232R
product COREGA CGWLUSB2GL 0x002d CG-WLUSB2GL
product COREGA CGWLUSB2GPX 0x002e CG-WLUSB2GPX
product COREGA FETHER_USB_TXC 0x9601 FEther USB-TXC product COREGA FETHER_USB_TXC 0x9601 FEther USB-TXC
/* Creative products */ /* Creative products */
...@@ -725,6 +922,8 @@ product CREATIVE NOMAD 0x4106 Nomad ...@@ -725,6 +922,8 @@ product CREATIVE NOMAD 0x4106 Nomad
product CREATIVE2 VOIP_BLASTER 0x0258 Voip Blaster product CREATIVE2 VOIP_BLASTER 0x0258 Voip Blaster
product CREATIVE3 OPTICAL_MOUSE 0x0001 Notebook Optical Mouse
/* Cambridge Silicon Radio products */ /* Cambridge Silicon Radio products */
product CSR BLUETOOTH 0x0001 Bluetooth USB Adapter product CSR BLUETOOTH 0x0001 Bluetooth USB Adapter
product CSR BLUETOOTH_NF 0xffff Bluetooth USB Adapter product CSR BLUETOOTH_NF 0xffff Bluetooth USB Adapter
...@@ -732,11 +931,18 @@ product CSR BLUETOOTH_NF 0xffff Bluetooth USB Adapter ...@@ -732,11 +931,18 @@ product CSR BLUETOOTH_NF 0xffff Bluetooth USB Adapter
/* CTX products */ /* CTX products */
product CTX EX1300 0x9999 Ex1300 hub product CTX EX1300 0x9999 Ex1300 hub
/* CyberPower Systems, Inc. products */
product CYBERPOWER UPS 0x0501 Uninterruptible Power Supply
/* CyberTAN Technology products */
product CYBERTAN TG54USB 0x1666 TG54USB
/* Cypress Semiconductor products */ /* Cypress Semiconductor products */
product CYPRESS MOUSE 0x0001 mouse product CYPRESS MOUSE 0x0001 mouse
product CYPRESS THERMO 0x0002 thermometer product CYPRESS THERMO 0x0002 thermometer
product CYPRESS KBDHUB 0x0101 Keyboard/Hub product CYPRESS KBDHUB 0x0101 Keyboard/Hub
product CYPRESS FMRADIO 0x1002 FM Radio product CYPRESS FMRADIO 0x1002 FM Radio
product CYPRESS USBRS232 0x5500 USB-RS232 Interface
product CYPRESS HUB2 0x6560 USB2 Hub product CYPRESS HUB2 0x6560 USB2 Hub
/* Daisy Technology products */ /* Daisy Technology products */
...@@ -748,14 +954,29 @@ product DALLAS USB_FOB_IBUTTON 0x2490 USB-FOB/iBUTTON ...@@ -748,14 +954,29 @@ product DALLAS USB_FOB_IBUTTON 0x2490 USB-FOB/iBUTTON
/* Dell products */ /* Dell products */
product DELL PORT 0x0058 Port Replicator product DELL PORT 0x0058 Port Replicator
product DELL X3 0x4002 Dell Axim X3 PDA product DELL SK8125 0x2002 SK-8125 keyboard
product DELL X30 0x4003 Dell Axim X30 PDA product DELL X3 0x4002 Axim X3 PDA
product DELL BC02 0x8000 Dell BC02 Bluetooth USB Adapter product DELL X30 0x4003 Axim X30 PDA
product DELL BC02 0x8000 BC02 Bluetooth USB Adapter
product DELL TM1180 0x8100 TrueMobile 1180 WLAN product DELL TM1180 0x8100 TrueMobile 1180 WLAN
product DELL PRISM_GT_1 0x8102 PrismGT USB 2.0 WLAN
product DELL TM350 0x8103 TrueMobile 350 Bluetooth USB Adapter
product DELL PRISM_GT_2 0x8104 PrismGT USB 2.0 WLAN
product DELL HSDPA 0x8137 Dell/Novatel Wireless HSDPA Modem
product DELL W5500 0x8155 Dell Wireless W5500 HSDPA Modem
/* DeLorme products */
product DELORME EARTHMATE 0x0100 Earthmate GPS
product DELORME EARTHMATE_LT20 0x0200 Earthmate LT-20 GPS
/* Diamond products */ /* Diamond products */
product DIAMOND RIO500USB 0x0001 Rio 500 USB product DIAMOND RIO500USB 0x0001 Rio 500 USB
/* Dick Smith Electronics (really C-Net) products */
product DICKSMITH RT2573 0x9022 RT2573
product DICKSMITH CWD854F 0x9032 C-Net CWD-854 rev F
product DICKSMITH RTL8187 0x9401 RTL8187
/* Digi International products */ /* Digi International products */
product DIGI ACCELEPORT2 0x0002 AccelePort USB 2 product DIGI ACCELEPORT2 0x0002 AccelePort USB 2
product DIGI ACCELEPORT4 0x0004 AccelePort USB 4 product DIGI ACCELEPORT4 0x0004 AccelePort USB 4
...@@ -764,11 +985,37 @@ product DIGI ACCELEPORT8 0x0008 AccelePort USB 8 ...@@ -764,11 +985,37 @@ product DIGI ACCELEPORT8 0x0008 AccelePort USB 8
/* Digital Stream Corp. products */ /* Digital Stream Corp. products */
product DIGITALSTREAM PS2 0x0001 PS/2 Active Adapter product DIGITALSTREAM PS2 0x0001 PS/2 Active Adapter
/* DisplayLink products */
product DISPLAYLINK LD220 0x0100 Samsung LD220
product DISPLAYLINK LD190 0x0102 Samsung LD190
product DISPLAYLINK U70 0x0103 Samsung U70
product DISPLAYLINK VCUD60 0x0136 Rextron DVI
product DISPLAYLINK DLDVI 0x0141 DisplayLink DVI
product DISPLAYLINK USBRGB 0x0150 IO-DATA USB-RGB
product DISPLAYLINK LCDUSB7X 0x0153 IO-DATA LCD-USB7X
product DISPLAYLINK VGA10 0x015a CMP-USBVGA10
product DISPLAYLINK WSDVI 0x0198 WS Tech DVI
product DISPLAYLINK EC008 0x019b EasyCAP008 DVI
product DISPLAYLINK GXDVIU2 0x01ac BUFFALO GX-DVI/U2
product DISPLAYLINK LCD4300U 0x01ba LCD-4300U
product DISPLAYLINK LCD8000U 0x01bb LCD-8000U
product DISPLAYLINK HPDOCK 0x01d4 HP USB Docking
product DISPLAYLINK M01061 0x01e2 Lenovo DVI
product DISPLAYLINK SWDVI 0x024c SUNWEIT DVI
product DISPLAYLINK LDEWX015U 0x02e3 Logitec LDE-WX015U
product DISPLAYLINK UM7X0 0x401a nanovision MiMo
/* D-Link products */ /* D-Link products */
/*product DLINK DSBS25 0x0100 DSB-S25 serial adapter*/ /*product DLINK DSBS25 0x0100 DSB-S25 serial adapter*/
product DLINK DUBE100 0x1a00 10/100 ethernet adapter product DLINK DUBE100 0x1a00 10/100 ethernet adapter
product DLINK DSB650TX4 0x200c 10/100 ethernet adapter product DLINK DSB650TX4 0x200c 10/100 ethernet adapter
product DLINK DWL122 0x3700 Wireless DWL122 product DLINK DWL122 0x3700 Wireless DWL122
product DLINK DWLG122A2 0x3704 DWL-G122 rev A2
product DLINK DWLG122 0x3c00 AirPlus G Wireless USB Adapter
product DLINK2 DWLG122C1 0x3c03 DWL-G122 rev C1
product DLINK2 WUA1340 0x3c04 WUA-1340
product DLINK DUBE100B1 0x3c05 DUB-E100 rev B1
product DLINK2 DWA111 0x3c06 DWA-111
product DLINK DSB650C 0x4000 10Mbps ethernet adapter product DLINK DSB650C 0x4000 10Mbps ethernet adapter
product DLINK DSB650TX1 0x4001 10/100 ethernet adapter product DLINK DSB650TX1 0x4001 10/100 ethernet adapter
product DLINK DSB650TX 0x4002 10/100 ethernet adapter product DLINK DSB650TX 0x4002 10/100 ethernet adapter
...@@ -777,14 +1024,20 @@ product DLINK DSB650TX3 0x400b 10/100 ethernet adapter ...@@ -777,14 +1024,20 @@ product DLINK DSB650TX3 0x400b 10/100 ethernet adapter
product DLINK DSB650TX2 0x4102 10/100 ethernet adapter product DLINK DSB650TX2 0x4102 10/100 ethernet adapter
product DLINK DSB650 0xabc1 10/100 ethernet adapter product DLINK DSB650 0xabc1 10/100 ethernet adapter
/* DMI products */
product DMI SA2_0 0xb001 Storage Adapter
/* DrayTek products */
product DRAYTEK VIGOR550 0x0550 Vigor550
/* Dynastream Innovations */
product DYNASTREAM ANTDEVBOARD 0x1003 ANT dev board
/* eGalax Products */ /* eGalax Products */
product EGALAX TPANEL 0x0001 Touch Panel product EGALAX TPANEL 0x0001 Touch Panel
product EGALAX TPANEL2 0x0002 Touch Panel product EGALAX TPANEL2 0x0002 Touch Panel
product EGALAX2 TPANEL 0x0001 Touch Panel product EGALAX2 TPANEL 0x0001 Touch Panel
/* DMI products */
product DMI SA2_0 0xb001 Storage Adapter
/* Eicon Networks */ /* Eicon Networks */
product EICON DIVA852 0x4905 Diva 852 ISDN TA product EICON DIVA852 0x4905 Diva 852 ISDN TA
...@@ -792,12 +1045,16 @@ product EICON DIVA852 0x4905 Diva 852 ISDN TA ...@@ -792,12 +1045,16 @@ product EICON DIVA852 0x4905 Diva 852 ISDN TA
product EIZO HUB 0x0000 hub product EIZO HUB 0x0000 hub
product EIZO MONITOR 0x0001 monitor product EIZO MONITOR 0x0001 monitor
/* ELCON Systemtechnik products */
product ELCON PLAN 0x0002 Goldpfeil P-LAN
/* Elecom products */ /* Elecom products */
product ELECOM MOUSE29UO 0x0002 mouse 29UO product ELECOM MOUSE29UO 0x0002 mouse 29UO
product ELECOM LDUSBTX0 0x200c LD-USB/TX product ELECOM LDUSBTX0 0x200c LD-USB/TX
product ELECOM LDUSBTX1 0x4002 LD-USB/TX product ELECOM LDUSBTX1 0x4002 LD-USB/TX
product ELECOM LDUSBLTX 0x4005 LD-USBL/TX product ELECOM LDUSBLTX 0x4005 LD-USBL/TX
product ELECOM LDUSBTX2 0x400b LD-USB/TX product ELECOM LDUSBTX2 0x400b LD-USB/TX
product ELECOM LDUSB20 0x4010 LD-USB20
product ELECOM UCSGT 0x5003 UC-SGT serial adapter product ELECOM UCSGT 0x5003 UC-SGT serial adapter
product ELECOM UCSGT0 0x5004 UC-SGT0 Serial product ELECOM UCSGT0 0x5004 UC-SGT0 Serial
product ELECOM LDUSBTX3 0xabc1 LD-USB/TX product ELECOM LDUSBTX3 0xabc1 LD-USB/TX
...@@ -806,6 +1063,10 @@ product ELECOM LDUSBTX3 0xabc1 LD-USB/TX ...@@ -806,6 +1063,10 @@ product ELECOM LDUSBTX3 0xabc1 LD-USB/TX
product ELSA MODEM1 0x2265 ELSA Modem Board product ELSA MODEM1 0x2265 ELSA Modem Board
product ELSA USB2ETHERNET 0x3000 Microlink USB2Ethernet product ELSA USB2ETHERNET 0x3000 Microlink USB2Ethernet
/* eMPIA products */
product EMPIA CAMERA 0x2761 Camera
product EMPIA EM2883 0x2883 EM2883
/* EMS products */ /* EMS products */
product EMS DUAL_SHOOTER 0x0003 PSX gun controller converter product EMS DUAL_SHOOTER 0x0003 PSX gun controller converter
...@@ -820,7 +1081,7 @@ product ENTREGA XX1 0x0008 Ethernet Adapter ...@@ -820,7 +1081,7 @@ product ENTREGA XX1 0x0008 Ethernet Adapter
product ENTREGA 1S9 0x0093 1S9 serial connector product ENTREGA 1S9 0x0093 1S9 serial connector
product ENTREGA EZUSB 0x8000 EZ-USB product ENTREGA EZUSB 0x8000 EZ-USB
/*product ENTREGA SERIAL 0x8001 DB25 Serial connector*/ /*product ENTREGA SERIAL 0x8001 DB25 Serial connector*/
product ENTREGA 2U4S 0x8004 2U4S serial connector/usb hub product ENTREGA 2U4S 0x8004 2U4S serial connector/usb hub
product ENTREGA XX2 0x8005 Ethernet Adapter product ENTREGA XX2 0x8005 Ethernet Adapter
/*product ENTREGA SERIAL_DB9 0x8093 DB9 Serial connector*/ /*product ENTREGA SERIAL_DB9 0x8093 DB9 Serial connector*/
...@@ -850,27 +1111,52 @@ product ETEK 1COM 0x8007 Serial port ...@@ -850,27 +1111,52 @@ product ETEK 1COM 0x8007 Serial port
/* Extended Systems products */ /* Extended Systems products */
product EXTENDED XTNDACCESS 0x0100 XTNDAccess IrDA product EXTENDED XTNDACCESS 0x0100 XTNDAccess IrDA
/* Falcom products */
product FALCOM TWIST 0x0001 Twist GSM/GPRS modem
product FALCOM SAMBA 0x0005 Samba 55/56 GSM/GPRS modem
/* Fiberline */
product FIBERLINE WL430U 0x6003 WL-430U
/* Freecom products */ /* Freecom products */
product FREECOM DVD 0xfc01 Connector for DVD drive product FREECOM DVD 0xfc01 Connector for DVD drive
/* Future Technology Devices products */ /* Future Technology Devices products */
product FTDI SERIAL_8U232AM 0x6001 8U232AM Serial converter product FTDI SERIAL_8U232AM 0x6001 8U232AM Serial converter
product FTDI SERIAL_2232C 0x6010 2232C USB dual FAST SERIAL ADAPTER
product FTDI SERIAL_4232H 0x6011 2232H USB quad FAST SERIAL ADAPTER
product FTDI PS2KBDMS 0x8371 PS/2 Keyboard/Mouse product FTDI PS2KBDMS 0x8371 PS/2 Keyboard/Mouse
product FTDI SERIAL_8U100AX 0x8372 8U100AX Serial converter product FTDI SERIAL_8U100AX 0x8372 8U100AX Serial converter
product FTDI LCD_MX200_USB 0xfa01 Matrix Orbital MX200 Series LCD product FTDI MHAM_KW 0xeee8 KW
product FTDI LCD_LK202_24_USB 0xfa03 Matrix Orbital LK202-24 LCD product FTDI MHAM_YS 0xeee9 YS
product FTDI LCD_LK204_24 0xfa04 Matrix Orbital LK204-24 LCD product FTDI MHAM_Y6 0xeeea Y6
product FTDI LCD_CFA_632 0xfc08 Crystalfontz CFA-632 LCD product FTDI MHAM_Y8 0xeeeb Y8
product FTDI LCD_CFA_634 0xfc09 Crystalfontz CFA-634 LCD product FTDI MHAM_IC 0xeeec IC
product FTDI LCD_CFA_633 0xfc0b Crystalfontz CFA-633 LCD product FTDI MHAM_DB9 0xeeed DB9
product FTDI CFA_631 0xfc0c Crystalfontz CFA-631 LCD product FTDI MHAM_RS232 0xeeee RS232
product FTDI MHAM_Y9 0xeeef Y9
product FTDI COASTAL_TNCX 0xf448 Coastal ChipWorks TNC-X
product FTDI CTI_485_MINI 0xf608 CTI 485 Mini
product FTDI CTI_NANO_485 0xf60b CTI Nano 485
product FTDI LCD_MX200_USB 0xfa01 Matrix Orbital MX2/MX3/MX6 Series
product FTDI LCD_MX4_MX5_USB 0xfa02 Matrix Orbital MX4/MX5 Series LCD
product FTDI LCD_LK202_24_USB 0xfa03 Matrix Orbital LK/VK/PK202-24 LCD
product FTDI LCD_LK204_24_USB 0xfa04 Matrix Orbital LK/VK204-24 LCD
product FTDI LCD_CFA_632 0xfc08 Crystalfontz CFA-632 LCD
product FTDI LCD_CFA_634 0xfc09 Crystalfontz CFA-634 LCD
product FTDI LCD_CFA_633 0xfc0b Crystalfontz CFA-633 LCD
product FTDI LCD_CFA_631 0xfc0c Crystalfontz CFA-631 LCD
product FTDI LCD_CFA_635 0xfc0d Crystalfontz CFA-635 LCD
product FTDI SEMC_DSS20 0xfc82 SEMC DSS-20 SyncStation product FTDI SEMC_DSS20 0xfc82 SEMC DSS-20 SyncStation
/* Fuji photo products */ /* Fuji photo products */
product FUJIPHOTO MASS0100 0x0100 Mass Storage product FUJIPHOTO MASS0100 0x0100 Mass Storage
/* Fujitsu protducts */ /* Fujitsu protducts */
product FUJITSU AH_F401U 0x105b AH-F401U Air H device product FUJITSU AH_F401U 0x105b AH-F401U Air H device
/* Fujitsu Siemens Computers products */
product FSC E5400 0x1009 PrismGT USB 2.0 WLAN
/* General Instruments (Motorola) products */ /* General Instruments (Motorola) products */
product GENERALINSTMNTS SB5100 0x5100 SURFboard SB5100 Cable modem product GENERALINSTMNTS SB5100 0x5100 SURFboard SB5100 Cable modem
...@@ -882,9 +1168,37 @@ product GENESYS GL641USB 0x0700 GL641USB CompactFlash Card Reader ...@@ -882,9 +1168,37 @@ product GENESYS GL641USB 0x0700 GL641USB CompactFlash Card Reader
product GENESYS GL641USB2IDE_2 0x0701 GL641USB USB-IDE Bridge product GENESYS GL641USB2IDE_2 0x0701 GL641USB USB-IDE Bridge
product GENESYS GL641USB2IDE 0x0702 GL641USB USB-IDE Bridge product GENESYS GL641USB2IDE 0x0702 GL641USB USB-IDE Bridge
/* GIGABYTE products */
product GIGABYTE GN54G 0x8001 GN-54G
product GIGABYTE GNBR402W 0x8002 GN-BR402W
product GIGABYTE GNWLBM101 0x8003 GN-WLBM101
product GIGABYTE GNWBKG 0x8007 GN-WBKG
product GIGABYTE GNWB01GS 0x8008 GN-WB01GS
product GIGABYTE GNWI05GS 0x800a GN-WI05GS
/* Gigaset products */
product GIGASET RT2573 0x0722 RT2573
/* G.Mate, Inc products */
product GMATE YP3X00 0x1001 YP3X00 PDA
/* MTK products */
product MTK GPS_RECEIVER 0x3329 GPS receiver
/* Garmin products */
product GARMIN FORERUNNER305 0x0003 Forerunner 305
/* Globespan products */
product GLOBESPAN PRISM_GT_1 0x2000 PrismGT USB 2.0 WLAN
product GLOBESPAN PRISM_GT_2 0x2002 PrismGT USB 2.0 WLAN
/* GoHubs products */ /* GoHubs products */
product GOHUBS GOCOM232 0x1001 GoCOM232 Serial converter product GOHUBS GOCOM232 0x1001 GoCOM232 Serial converter
/* Good Way Technology products */
product GOODWAY GWUSB2E 0x6200 GWUSB2E
product GOODWAY RT2573 0xc019 RT2573
/* Gravis products */ /* Gravis products */
product GRAVIS GAMEPADPRO 0x4001 GamePad Pro product GRAVIS GAMEPADPRO 0x4001 GamePad Pro
...@@ -895,13 +1209,19 @@ product GREENHOUSE KANA21 0x0001 CF-writer with Portable MP3 Player ...@@ -895,13 +1209,19 @@ product GREENHOUSE KANA21 0x0001 CF-writer with Portable MP3 Player
product GRIFFIN IMATE 0x0405 iMate, ADB adapter product GRIFFIN IMATE 0x0405 iMate, ADB adapter
product GRIFFIN POWERMATE 0x0410 PowerMate Assignable Controller product GRIFFIN POWERMATE 0x0410 PowerMate Assignable Controller
/* Gude ADS */
product GUDE DCF 0xdcf7 Exper mouseCLOCK USB
/* Guillemot Corporation */ /* Guillemot Corporation */
product GUILLEMOT DALEADER 0xa300 DA Leader product GUILLEMOT DALEADER 0xa300 DA Leader
product GUILLEMOT HWGUSB254 0xe000 HWGUSB2-54 WLAN
product GUILLEMOT HWGUSB254LB 0xe010 HWGUSB2-54-LB
product GUILLEMOT HWGUSB254V2AP 0xe020 HWGUSB2-54V2-AP
/* Hagiwara products */ /* Hagiwara products */
product HAGIWARA FGSM 0x0002 FlashGate SmartMedia Card Reader product HAGIWARA FGSM 0x0002 FlashGate SmartMedia Card Reader
product HAGIWARA FGCF 0x0003 FlashGate CompactFlash Card Reader product HAGIWARA FGCF 0x0003 FlashGate CompactFlash Card Reader
product HAGIWARA FG 0x0005 FlashGate product HAGIWARA FG 0x0005 FlashGate
/* HAL Corporation products */ /* HAL Corporation products */
product HAL IMR001 0x0011 Crossam2+USB IR commander product HAL IMR001 0x0011 Crossam2+USB IR commander
...@@ -911,6 +1231,9 @@ product HANDSPRING VISOR 0x0100 Handspring Visor ...@@ -911,6 +1231,9 @@ product HANDSPRING VISOR 0x0100 Handspring Visor
product HANDSPRING TREO 0x0200 Handspring Treo product HANDSPRING TREO 0x0200 Handspring Treo
product HANDSPRING TREO600 0x0300 Handspring Treo 600 product HANDSPRING TREO600 0x0300 Handspring Treo 600
/* Hank Connection */
product HANK HP5187 0x3713 HP Wireless Keyboard&Mouse
/* Hauppauge Computer Works */ /* Hauppauge Computer Works */
product HAUPPAUGE WINTV_USB_FM 0x4d12 WinTV USB FM product HAUPPAUGE WINTV_USB_FM 0x4d12 WinTV USB FM
...@@ -921,6 +1244,12 @@ product HAWKING UF100 0x400c 10/100 USB Ethernet ...@@ -921,6 +1244,12 @@ product HAWKING UF100 0x400c 10/100 USB Ethernet
product HITACHI DZMV100A 0x0004 DVD-CAM DZ-MV100A Camcorder product HITACHI DZMV100A 0x0004 DVD-CAM DZ-MV100A Camcorder
product HITACHI DVDCAM_USB 0x001e DVDCAM USB HS Interface product HITACHI DVDCAM_USB 0x001e DVDCAM USB HS Interface
/* Holtek Semiconductor products */
product HOLTEK MOP35 0x0499 MOP-35
/* Hosiden Corporation products */
product HOSIDEN PPP 0x0011 ParaParaParadise Controller
/* HP products */ /* HP products */
product HP 895C 0x0004 DeskJet 895C product HP 895C 0x0004 DeskJet 895C
product HP 4100C 0x0101 Scanjet 4100C product HP 4100C 0x0101 Scanjet 4100C
...@@ -953,11 +1282,12 @@ product HP 816C 0x0804 DeskJet 816C ...@@ -953,11 +1282,12 @@ product HP 816C 0x0804 DeskJet 816C
product HP 2300D 0x0b17 Laserjet 2300d product HP 2300D 0x0b17 Laserjet 2300d
product HP 970CSE 0x1004 Deskjet 970Cse product HP 970CSE 0x1004 Deskjet 970Cse
product HP 5400C 0x1005 Scanjet 5400C product HP 5400C 0x1005 Scanjet 5400C
product HP 2215 0x1016 iPAQ 22xx/Jornada 548 product HP 2215 0x1016 iPAQ 22xx/Jornada 548
product HP 959C 0x1104 Deskjet 959C product HP 959C 0x1104 Deskjet 959C
product HP 568J 0x1116 Jornada 568 product HP 568J 0x1116 Jornada 568
product HP 930C 0x1204 DeskJet 930c product HP 930C 0x1204 DeskJet 930c
product HP P2000U 0x1801 Inkjet P-2000U product HP P2000U 0x1801 Inkjet P-2000U
product HP RNDIS 0x1c1d Generic RNDIS
product HP 640C 0x2004 DeskJet 640c product HP 640C 0x2004 DeskJet 640c
product HP 4670V 0x3005 ScanJet 4670v product HP 4670V 0x3005 ScanJet 4670v
product HP P1100 0x3102 Photosmart P1100 product HP P1100 0x3102 Photosmart P1100
...@@ -967,6 +1297,20 @@ product HP HN210E 0x811c Ethernet HN210E ...@@ -967,6 +1297,20 @@ product HP HN210E 0x811c Ethernet HN210E
/* HP products */ /* HP products */
product HP2 C500 0x6002 PhotoSmart C500 product HP2 C500 0x6002 PhotoSmart C500
/* Huawei Technologies products */
product HUAWEI MOBILE 0x1001 Huawei Mobile
product HUAWEI E220 0x1003 Huawei E220
product HUAWEI E1750INIT 0x1446 Huawei E1750 USB CD
product HUAWEI K3765 0x1465 Huawei K3765
product HUAWEI K3765INIT 0x1520 Huawei K3765 USB CD
/* Huawei-3Com products */
product HUAWEI3COM RT2573 0x0009 RT2573
/* Hyundai CuriTel (Audiovox, Pantech) products */
product HYUNDAI PC5740 0x3701 PC5740 EVDO
product HYUNDAI UM175 0x3714 UM175 EVDO
/* IBM Corporation */ /* IBM Corporation */
product IBM OPTTRAVELMOUSE 0x3107 Optical product IBM OPTTRAVELMOUSE 0x3107 Optical
product IBM USBCDROMDRIVE 0x4427 USB CD-ROM Drive product IBM USBCDROMDRIVE 0x4427 USB CD-ROM Drive
...@@ -985,12 +1329,12 @@ product INSIDEOUT EDGEPORT4T 0x0004 Edgeport/4 RS232 for Telxon ...@@ -985,12 +1329,12 @@ product INSIDEOUT EDGEPORT4T 0x0004 Edgeport/4 RS232 for Telxon
product INSIDEOUT EDGEPORT2 0x0005 Edgeport/2 RS232 product INSIDEOUT EDGEPORT2 0x0005 Edgeport/2 RS232
product INSIDEOUT EDGEPORT4I 0x0006 Edgeport/4 RS422 product INSIDEOUT EDGEPORT4I 0x0006 Edgeport/4 RS422
product INSIDEOUT EDGEPORT2I 0x0007 Edgeport/2 RS422/RS485 product INSIDEOUT EDGEPORT2I 0x0007 Edgeport/2 RS422/RS485
product INSIDEOUT HUBPORT4 0x0008 Hubport/4 product INSIDEOUT HUBPORT4 0x0008 Hubport/4
product INSIDEOUT EDGEPORT8HAND 0x0009 Hand-built Edgeport/8 product INSIDEOUT EDGEPORT8HAND 0x0009 Hand-built Edgeport/8
product INSIDEOUT MULTIMODEM 0x000A MultiTech version of RP/4 product INSIDEOUT MULTIMODEM 0x000A MultiTech version of RP/4
product INSIDEOUT EDGEPORTPPORT 0x000B Edgeport/(4)21 Parallel port (USS720) product INSIDEOUT EDGEPORTPPORT 0x000B Edgeport/(4)21 Parallel port (USS720)
product INSIDEOUT EDGEPORT421 0x000C Edgeport/421 Hub+RS232+Parallel product INSIDEOUT EDGEPORT421 0x000C Edgeport/421 Hub+RS232+Parallel
product INSIDEOUT EDGEPORT21 0x000D Edgeport/21 RS232+Parallel product INSIDEOUT EDGEPORT21 0x000D Edgeport/21 RS232+Parallel
product INSIDEOUT EDGEPORT8DC 0x000E 1/2 Edgeport/8 (2 EP/4s on 1 PCB) product INSIDEOUT EDGEPORT8DC 0x000E 1/2 Edgeport/8 (2 EP/4s on 1 PCB)
product INSIDEOUT EDGEPORT8 0x000F Edgeport/8 product INSIDEOUT EDGEPORT8 0x000F Edgeport/8
product INSIDEOUT EDGEPORT2DIN 0x0010 Edgeport/2 RS232 / Apple DIN connector product INSIDEOUT EDGEPORT2DIN 0x0010 Edgeport/2 RS232 / Apple DIN connector
...@@ -1017,6 +1361,7 @@ product INTEL I2011B 0x1111 Wireless 2011B ...@@ -1017,6 +1361,7 @@ product INTEL I2011B 0x1111 Wireless 2011B
product INTEL TESTBOARD 0x9890 82930 test board product INTEL TESTBOARD 0x9890 82930 test board
/* Intersil products */ /* Intersil products */
product INTERSIL PRISM_GT 0x1000 PrismGT USB 2.0 WLAN
product INTERSIL PRISM_2X 0x3642 Prism2.x WLAN product INTERSIL PRISM_2X 0x3642 Prism2.x WLAN
/* Interpid Control Systems products */ /* Interpid Control Systems products */
...@@ -1032,8 +1377,10 @@ product IODATA USBETT 0x0901 USB ETT ...@@ -1032,8 +1377,10 @@ product IODATA USBETT 0x0901 USB ETT
product IODATA USBETTX 0x0904 USB ETTX product IODATA USBETTX 0x0904 USB ETTX
product IODATA USBETTXS 0x0913 USB ETTX product IODATA USBETTXS 0x0913 USB ETTX
product IODATA USBWNB11 0x0922 USB Airport WN-B11 product IODATA USBWNB11 0x0922 USB Airport WN-B11
product IODATA USBRSAQ 0x0a03 USB serial adapter USB-RSAQ1 product IODATA ETGUS2 0x0930 ETG-US2
product IODATA2 USB2SC 0x0a09 USB2.0-SCSI Bridge USB2-SC product IODATA USBRSAQ 0x0a03 USB serial adapter USB-RSAQ1
product IODATA USBRSAQ5 0x0a0e USB serial adapter USB-RSAQ5
product IODATA2 USB2SC 0x0a09 USB2.0-SCSI Bridge USB2-SC
/* Iomega products */ /* Iomega products */
product IOMEGA ZIP100 0x0001 Zip 100 product IOMEGA ZIP100 0x0001 Zip 100
...@@ -1046,20 +1393,22 @@ product IRIVER IFP_1XX 0x1101 iFP-1xx ...@@ -1046,20 +1393,22 @@ product IRIVER IFP_1XX 0x1101 iFP-1xx
product IRIVER IFP_3XX 0x1103 iFP-3xx product IRIVER IFP_3XX 0x1103 iFP-3xx
product IRIVER IFP_5XX 0x1105 iFP-5xx product IRIVER IFP_5XX 0x1105 iFP-5xx
/* Jablotron products */
product JABLOTRON PC60B 0x0001 PC-60B
/* Jaton products */ /* Jaton products */
product JATON EDA 0x5704 Ethernet Device Adapter product JATON EDA 0x5704 Ethernet Device Adapter
/* Jenoptik products */ /* Jenoptik products */
product JENOPTIK JD350 0x5300 JD 350 Camera/mp3 player product JENOPTIK JD350 0x5300 JD 350 Camera/mp3 player
/* JRC products */ /* JRC products */
product JRC AH_J3001V_J3002V 0x0001 AirH\"PHONE AH-J3001V/J3002V product JRC AH_J3001V_J3002V 0x0001 AirH\"PHONE AH-J3001V/J3002V
/* JVC products */ /* JVC products */
product JVC GR_DX95 0x000a GR-DX95 product JVC GR_DX95 0x000a GR-DX95
product JVC MP_PRX1 0x3008 MP-PRX1 Ethernet
/* JVC products */ product JVC MP_XP7250_WL 0x3009 MP-XP7250 Builtin WLAN
product JVC MP_XP7250_WL 0x3009 MP-XP7250 Builtin WLAN
/* Kawasaki products */ /* Kawasaki products */
product KLSI DUH3E10BT 0x0008 10BT Ethernet adapter, in the DU-H3E product KLSI DUH3E10BT 0x0008 10BT Ethernet adapter, in the DU-H3E
...@@ -1076,7 +1425,7 @@ product KEISOKUGIKEN USBDAQ 0x0068 HKS-0200 USBDAQ ...@@ -1076,7 +1425,7 @@ product KEISOKUGIKEN USBDAQ 0x0068 HKS-0200 USBDAQ
product KENSINGTON ORBIT 0x1003 Orbit USB/PS2 trackball product KENSINGTON ORBIT 0x1003 Orbit USB/PS2 trackball
product KENSINGTON TURBOBALL 0x1005 TurboBall product KENSINGTON TURBOBALL 0x1005 TurboBall
product KENSINGTON ORBIT_MAC 0x1009 Orbit USB trackball for Mac product KENSINGTON ORBIT_MAC 0x1009 Orbit USB trackball for Mac
product KENSINGTON VIDEOCAM_VGA 0x5002 VideoCAM VGA product KENSINGTON VIDEOCAM_VGA 0x5002 VideoCAM VGA
/* Keyspan products */ /* Keyspan products */
product KEYSPAN USA28_NF 0x0101 USA-28 serial adapter (no firmware) product KEYSPAN USA28_NF 0x0101 USA-28 serial adapter (no firmware)
...@@ -1102,8 +1451,8 @@ product KEYSPAN USA28XA_NF 0x0114 USA-28XB serial adapter (no firmware) ...@@ -1102,8 +1451,8 @@ product KEYSPAN USA28XA_NF 0x0114 USA-28XB serial adapter (no firmware)
product KEYSPAN USA28XA 0x0115 USA-28XA serial adapter product KEYSPAN USA28XA 0x0115 USA-28XA serial adapter
product KEYSPAN USA18XA_NF 0x0116 USA-18XA serial adapter (no firmware) product KEYSPAN USA18XA_NF 0x0116 USA-18XA serial adapter (no firmware)
product KEYSPAN USA18XA 0x0117 USA-18XA serial adapter product KEYSPAN USA18XA 0x0117 USA-18XA serial adapter
product KEYSPAN USA19QW_NF 0x0118 USA-19WQ serial adapter (no firmware) product KEYSPAN USA19QW_NF 0x0118 USA-19QW serial adapter (no firmware)
product KEYSPAN USA19QW 0x0119 USA-19WQ serial adapter product KEYSPAN USA19QW 0x0119 USA-19QW serial adapter
product KEYSPAN UIA10 0x0201 UIA-10 remote control product KEYSPAN UIA10 0x0201 UIA-10 remote control
product KEYSPAN UIA11 0x0202 UIA-11 remote control product KEYSPAN UIA11 0x0202 UIA-11 remote control
...@@ -1134,9 +1483,9 @@ product KYE VIVIDPRO 0x2001 ColorPage Vivid-Pro scanner ...@@ -1134,9 +1483,9 @@ product KYE VIVIDPRO 0x2001 ColorPage Vivid-Pro scanner
product KYOCERA AHK3001V 0x0203 AH-K3001V product KYOCERA AHK3001V 0x0203 AH-K3001V
/* LaCie products */ /* LaCie products */
product LACIE PKTDRV 0x0211 PocketDrive
product LACIE HD 0xa601 Hard Disk product LACIE HD 0xa601 Hard Disk
product LACIE CDRW 0xa602 CD R/W product LACIE CDRW 0xa602 CD R/W
product LACIE PKTDRV 0x0211 PocketDrive
/* Lexar products */ /* Lexar products */
product LEXAR JUMPSHOT 0x0001 jumpSHOT CompactFlash Reader product LEXAR JUMPSHOT 0x0001 jumpSHOT CompactFlash Reader
...@@ -1153,17 +1502,21 @@ product LINKSYS USB10T 0x2202 USB10T Ethernet ...@@ -1153,17 +1502,21 @@ product LINKSYS USB10T 0x2202 USB10T Ethernet
product LINKSYS USB100TX 0x2203 USB100TX Ethernet product LINKSYS USB100TX 0x2203 USB100TX Ethernet
product LINKSYS USB100H1 0x2204 USB100H1 Ethernet/HPNA product LINKSYS USB100H1 0x2204 USB100H1 Ethernet/HPNA
product LINKSYS USB10TA 0x2206 USB10TA Ethernet product LINKSYS USB10TA 0x2206 USB10TA Ethernet
product LINKSYS WUSB11 0x2211 WUSB11 Wireless USB Network Adapter product LINKSYS WUSB11 0x2211 WUSB11 Wireless USB Network Adapter
product LINKSYS WUSB11_25 0x2212 WUSB11 Wireless USB Network Adapter (version 2.5) product LINKSYS WUSB11_25 0x2212 WUSB11 Wireless USB Network Adapter (version 2.5)
product LINKSYS WUSB12_11 0x2213 WUSB12 802.11b v1.1 product LINKSYS WUSB12_11 0x2213 WUSB12 802.11b v1.1
product LINKSYS2 USB200M 0x2226 USB 2.0 10/100 ethernet controller
product LINKSYS USB10TX2 0x400b USB10TX product LINKSYS USB10TX2 0x400b USB10TX
product LINKSYS2 WUSB11 0x2219 WUSB11 product LINKSYS2 WUSB11 0x2219 WUSB11
product LINKSYS2 USB200M 0x2226 USB 2.0 10/100 ethernet controller
product LINKSYS3 WUSB11V28 0x2233 WUSB11-V28 product LINKSYS3 WUSB11V28 0x2233 WUSB11-V28
product LINKSYS4 USB1000 0x0039 USB1000
/* Logitec products */ /* Logitec products */
product LOGITEC LDR_H443SU2 0x0033 DVD Multi-plus unit LDR-H443SU2 product LOGITEC LDR_H443SU2 0x0033 DVD Multi-plus unit LDR-H443SU2
product LOGITEC LDR_H443U2 0x00b3 DVD Multi-plus unit LDR-H443U2 product LOGITEC LDR_H443U2 0x00b3 DVD Multi-plus unit LDR-H443U2
product LOGITEC LAN_GTJU2 0x0102 LAN-GTJ/U2
product LOGITEC LANTX 0x0105 LAN-TX
product LOGITEC RTL8187 0x010c RTL8187
/* Logitech products */ /* Logitech products */
product LOGITECH M2452 0x0203 M2452 keyboard product LOGITECH M2452 0x0203 M2452 keyboard
...@@ -1177,6 +1530,7 @@ product LOGITECH QUICKCAMEXP2 0x0870 QuickCam Express ...@@ -1177,6 +1530,7 @@ product LOGITECH QUICKCAMEXP2 0x0870 QuickCam Express
product LOGITECH QUICKCAMPRO3k 0x08b0 QuickCam Pro 3000 product LOGITECH QUICKCAMPRO3k 0x08b0 QuickCam Pro 3000
product LOGITECH QUICKCAMPRONB 0x08b1 QuickCam for Notebook Pro product LOGITECH QUICKCAMPRONB 0x08b1 QuickCam for Notebook Pro
product LOGITECH QUICKCAMPRO4K 0x08b2 QuickCam Pro 4000 product LOGITECH QUICKCAMPRO4K 0x08b2 QuickCam Pro 4000
product LOGITECH QUICKCAMMESS 0x08f0 QuickCam Messenger
product LOGITECH N43 0xc000 N43 product LOGITECH N43 0xc000 N43
product LOGITECH N48 0xc001 N48 mouse product LOGITECH N48 0xc001 N48 mouse
product LOGITECH MBA47 0xc002 M-BA47 mouse product LOGITECH MBA47 0xc002 M-BA47 mouse
...@@ -1185,24 +1539,25 @@ product LOGITECH BD58 0xc00c BD58 mouse ...@@ -1185,24 +1539,25 @@ product LOGITECH BD58 0xc00c BD58 mouse
product LOGITECH USBPS2MOUSE 0xc00e USB-PS/2 Optical Mouse product LOGITECH USBPS2MOUSE 0xc00e USB-PS/2 Optical Mouse
product LOGITECH MUV55A 0xc016 M-UV55a product LOGITECH MUV55A 0xc016 M-UV55a
product LOGITECH UN58A 0xc030 iFeel Mouse product LOGITECH UN58A 0xc030 iFeel Mouse
product LOGITECH WMRPAD 0xc20a WingMan RumblePad
product LOGITECH WMFFGP 0xc293 WingMan Formula Force GP (GT-Force)
product LOGITECH WMPAD 0xc208 WingMan GamePad Extreme product LOGITECH WMPAD 0xc208 WingMan GamePad Extreme
product LOGITECH WMRPAD 0xc20a WingMan RumblePad product LOGITECH WMRPAD 0xc20a WingMan RumblePad
product LOGITECH WMJOY 0xc281 WingMan Force joystick product LOGITECH WMJOY 0xc281 WingMan Force joystick
product LOGITECH WMFFGP 0xc293 WingMan Formula Force GP (GT-Force)
product LOGITECH BB13 0xc401 USB-PS/2 Trackball product LOGITECH BB13 0xc401 USB-PS/2 Trackball
product LOGITECH BB18 0xc404 TrackMan Wheel product LOGITECH BB18 0xc404 TrackMan Wheel
product LOGITECH MARBLEMOUSE 0xc408 Marble Mouse
product LOGITECH RK53 0xc501 Cordless mouse product LOGITECH RK53 0xc501 Cordless mouse
product LOGITECH RB6 0xc503 Cordless keyboard product LOGITECH RB6 0xc503 Cordless keyboard
product LOGITECH CDO 0xc504 Cordless Desktop Optical product LOGITECH CDO 0xc504 Cordless Desktop Optical
product LOGITECH MX700 0xc506 Cordless optical mouse product LOGITECH MX700 0xc506 Cordless optical mouse
product LOGITECH CBT44 0xc517 C-BT44 Receiver
product LOGITECH QUICKCAMPRO2 0xd001 QuickCam Pro product LOGITECH QUICKCAMPRO2 0xd001 QuickCam Pro
/* Lucent products */ /* Lucent products */
product LUCENT EVALKIT 0x1001 USS-720 evaluation kit product LUCENT EVALKIT 0x1001 USS-720 evaluation kit
/* Luwen products */ /* Luwen products */
product LUWEN EASYDISK 0x0005 EasyDisc product LUWEN EASYDISK 0x0005 EasyDisc
/* Macally products */ /* Macally products */
product MACALLY MOUSE1 0x0101 mouse product MACALLY MOUSE1 0x0101 mouse
...@@ -1217,6 +1572,12 @@ product MCT ML_4500 0x0302 ML-4500 ...@@ -1217,6 +1572,12 @@ product MCT ML_4500 0x0302 ML-4500
/* MediaGear products */ /* MediaGear products */
product MEDIAGEAR READER9IN1 0x5003 USB2.0 9 in 1 Reader product MEDIAGEAR READER9IN1 0x5003 USB2.0 9 in 1 Reader
/* Meinberg Funkuhren products */
product MEINBERG USB5131 0x0301 USB 5131 DCF77 - Radio Clock
/* Meizo Electronics */
product MEIZU M6_SL 0x0140 MiniPlayer M6 (SL)
/* Melco, Inc products */ /* Melco, Inc products */
product MELCO LUATX1 0x0001 LUA-TX Ethernet product MELCO LUATX1 0x0001 LUA-TX Ethernet
product MELCO LUATX5 0x0005 LUA-TX Ethernet product MELCO LUATX5 0x0005 LUA-TX Ethernet
...@@ -1228,12 +1589,46 @@ product MELCO DUBPXXG 0x001c USB-IDE Bridge: DUB-PxxG ...@@ -1228,12 +1589,46 @@ product MELCO DUBPXXG 0x001c USB-IDE Bridge: DUB-PxxG
product MELCO KS11G 0x0027 WLI-USB-KS11G USB-wlan product MELCO KS11G 0x0027 WLI-USB-KS11G USB-wlan
product MELCO LUAU2KTX 0x003d LUA-U2-KTX Ethernet product MELCO LUAU2KTX 0x003d LUA-U2-KTX Ethernet
product MELCO KB11 0x0044 WLI-USB-KB11 WLAN product MELCO KB11 0x0044 WLI-USB-KB11 WLAN
product MELCO KG54YB 0x005e WLI-U2-KG54-YB WLAN
product MELCO KG54 0x0066 WLI-U2-KG54 WLAN
product MELCO KG54AI 0x0067 WLI-U2-KG54-AI WLAN
product MELCO LUAU2GT 0x006e LUA-U2-GT Ethernet
product MELCO NINWIFI 0x008b Nintendo Wi-Fi
product MELCO SG54HP 0x00d8 WLI-U2-SG54HP
product MELCO G54HP 0x00d9 WLI-U2-G54HP
product MELCO KG54L 0x00da WLI-U2-KG54L
product MELCO WLIUCG 0x0137 WLI-UC-G
/* Merlin products */
product MERLIN V620 0x1110 Merlin V620
/* MetaGeek products */
product METAGEEK WISPY_24X 0x083f Wi-Spy 2.4x
/* Metricom products */ /* Metricom products */
product METRICOM RICOCHET_GS 0x0001 Ricochet GS product METRICOM RICOCHET_GS 0x0001 Ricochet GS
/* MGE UPS Systems */
product MGE UPS1 0x0001 MGE UPS SYSTEMS PROTECTIONCENTER 1
product MGE UPS2 0xffff MGE UPS SYSTEMS PROTECTIONCENTER 2
/* Micro Star International products */ /* Micro Star International products */
product MSI BLUETOOTH 0x1967 Bluetooth USB Adapter product MSI BLUETOOTH 0x1967 Bluetooth USB Adapter
product MSI MS6861 0x6861 MS-6861
product MSI MS6865 0x6865 MS-6865
product MSI MS6869 0x6869 MS-6869
product MSI RT2573 0x6874 RT2573
product MSI RT2573_2 0x6877 RT2573
product MSI RT2573_3 0xa861 RT2573
product MSI RT2573_4 0xa874 RT2573
product MSI AX88772A 0xa877 AX88772A USB 2.0 10/100 Ethernet adapter
/* Microchip Technology products */
product MICROCHIP PICKIT1 0x0032 PICkit(TM) 1 FLASH Starter Kit
product MICROCHIP PICKIT2 0x0033 PICkit 2 Microcontroller Programmer
/* Microdia / Sonix Techonology Co., Ltd. products */
product MICRODIA YUREX 0x1010 YUREX
/* Micronet Communications products */ /* Micronet Communications products */
product MICRONET SP128AR 0x0003 SP128AR EtherFast product MICRONET SP128AR 0x0003 SP128AR EtherFast
...@@ -1245,11 +1640,18 @@ product MICROSOFT NATURALKBD 0x000b Natural Keyboard Elite ...@@ -1245,11 +1640,18 @@ product MICROSOFT NATURALKBD 0x000b Natural Keyboard Elite
product MICROSOFT DDS80 0x0014 Digital Sound System 80 product MICROSOFT DDS80 0x0014 Digital Sound System 80
product MICROSOFT SIDEWINDER 0x001a Sidewinder Precision Racing Wheel product MICROSOFT SIDEWINDER 0x001a Sidewinder Precision Racing Wheel
product MICROSOFT INETPRO 0x001c Internet Keyboard Pro product MICROSOFT INETPRO 0x001c Internet Keyboard Pro
product MICROSOFT TBEXPLORER 0x0024 Trackball Explorer product MICROSOFT TBEXPLORER 0x0024 Trackball Explorer
product MICROSOFT INTELLIEYE 0x0025 IntelliEye mouse product MICROSOFT INTELLIEYE 0x0025 IntelliEye mouse
product MICROSOFT INETPRO2 0x002b Internet Keyboard Pro product MICROSOFT INETPRO2 0x002b Internet Keyboard Pro
product MICROSOFT MN510 0x006e MN510 Wireless product MICROSOFT MN510 0x006e MN510 Wireless
product MICROSOFT MN110 0x007a 10/100 USB NIC product MICROSOFT MN110 0x007a 10/100 USB NIC
product MICROSOFT XBOX_MEMORY_UNIT 0x0280 Xbox Memory Unit
product MICROSOFT XBOX_DVD_PLAYBACK 0x0284 Xbox DVD Movie Playback Kit
product MICROSOFT XBOX_CONTROLLER_S10 0x0285 Xbox Controller S (1.0)
product MICROSOFT XBOX_CONTROLLER_HUB 0x0288 Xbox Controller Hub
product MICROSOFT XBOX_CONTROLLER_S12 0x0289 Xbox Controller S (1.2)
product MICROSOFT 24GHZ_XCVR10 0x071d 2.4GHz Transceiver V1.0
product MICROSOFT 24GHZ_XCVR20 0x071f 2.4GHz Transceiver V2.0
/* Microtech products */ /* Microtech products */
product MICROTECH SCSIDB25 0x0004 USB-SCSI-DB25 product MICROTECH SCSIDB25 0x0004 USB-SCSI-DB25
...@@ -1269,6 +1671,7 @@ product MICROTEK V6UL 0x80ac ScanMaker V6UL ...@@ -1269,6 +1671,7 @@ product MICROTEK V6UL 0x80ac ScanMaker V6UL
/* Midiman products */ /* Midiman products */
product MIDIMAN MIDISPORT2X2 0x1001 Midisport 2x2 product MIDIMAN MIDISPORT2X2 0x1001 Midisport 2x2
product MIDIMAN MIDISPORT2X4 0x1041 Midisport 2x4
/* Minds At Work LLC products */ /* Minds At Work LLC products */
product MINDSATWORK DW 0x0001 Digital Wallet product MINDSATWORK DW 0x0001 Digital Wallet
...@@ -1291,15 +1694,28 @@ product MITSUMI FDD 0x6901 FDD ...@@ -1291,15 +1694,28 @@ product MITSUMI FDD 0x6901 FDD
/* Mobility products */ /* Mobility products */
product MOBILITY EA 0x0204 Ethernet Adapter product MOBILITY EA 0x0204 Ethernet Adapter
product MOBILITY EASIDOCK 0x0304 EasiDock Ethernet
/* MosChip Semiconductor */
product MOSCHIP MCS7703 0x7703 MCS7703 USB Serial Adapter
product MOSCHIP MCS7780 0x7780 Fast IrDA Adapter
product MOSCHIP MCS7781 0x7781 Fast IrDA Adapter
product MOSCHIP MCS7784 0x7784 Slow IrDA Adapter
product MOSCHIP MCS7830 0x7830 Ethernet Adapter
product MOSCHIP MCS7840 0x7840 MCS7840 USB Serial Adapter
/* Motorola products */ /* Motorola products */
product MOTOROLA MC141555 0x1555 MC141555 hub controller product MOTOROLA MC141555 0x1555 MC141555 hub controller
product MOTOROLA SB4100 0x4100 SB4100 USB Cable Modem product MOTOROLA SB4100 0x4100 SB4100 USB Cable Modem
product MOTOROLA2 T720C 0x2822 T720c product MOTOROLA2 T720C 0x2822 T720c
product MOTOROLA2 A920 0x4002 A920 product MOTOROLA2 A920 0x4002 A920
product MOTOROLA2 USBLAN 0x600c USBLAN
product MOTOROLA2 USBLAN2 0x6027 USBLAN
/* Micro Star International products */ /* M-Systems products */
product MSI BT_DONGLE 0x1967 Bluetooth USB dongle product MSYSTEMS DISKONKEY 0x0010 DiskOnKey
product MSYSTEMS DISKONKEY2 0x0011 DiskOnKey
product MSYSTEMS DISKONKEY3 0x0012 DiskOnKey
/* MultiTech products */ /* MultiTech products */
product MULTITECH ATLAS 0xf101 MT5634ZBA-USB modem product MULTITECH ATLAS 0xf101 MT5634ZBA-USB modem
...@@ -1317,10 +1733,6 @@ product MUSTEK 600USB 0x0873 600 USB scanner ...@@ -1317,10 +1733,6 @@ product MUSTEK 600USB 0x0873 600 USB scanner
product MUSTEK MDC800 0xa800 MDC-800 digital camera product MUSTEK MDC800 0xa800 MDC-800 digital camera
product MUSTEK DV2000 0xc441 DV2000 digital camera product MUSTEK DV2000 0xc441 DV2000 digital camera
/* M-Systems products */
product MSYSTEMS DISKONKEY 0x0010 DiskOnKey
product MSYSTEMS DISKONKEY2 0x0011 DiskOnKey
/* National Instruments */ /* National Instruments */
product NI GPIB_USB_A 0xc920 GPIB-USB-A product NI GPIB_USB_A 0xc920 GPIB-USB-A
...@@ -1347,6 +1759,7 @@ product NEODIO ND5010 0x5010 Multi-format Flash Controller ...@@ -1347,6 +1759,7 @@ product NEODIO ND5010 0x5010 Multi-format Flash Controller
/* NetChip Technology Products */ /* NetChip Technology Products */
product NETCHIP TURBOCONNECT 0x1080 Turbo-Connect product NETCHIP TURBOCONNECT 0x1080 Turbo-Connect
product NETCHIP CLIK40 0xa140 Clik! 40 product NETCHIP CLIK40 0xa140 Clik! 40
product NETCHIP ETHERNETGADGET 0xa4a2 Linux Ethernet/RNDIS gadget on pxa210/25x/26x
/* Netgear products */ /* Netgear products */
product NETGEAR EA101 0x1001 Ethernet adapter product NETGEAR EA101 0x1001 Ethernet adapter
...@@ -1354,18 +1767,48 @@ product NETGEAR EA101X 0x1002 Ethernet adapter ...@@ -1354,18 +1767,48 @@ product NETGEAR EA101X 0x1002 Ethernet adapter
product NETGEAR FA101 0x1020 10/100 Ethernet product NETGEAR FA101 0x1020 10/100 Ethernet
product NETGEAR FA120 0x1040 USB 2.0 Fast Ethernet Adapter product NETGEAR FA120 0x1040 USB 2.0 Fast Ethernet Adapter
product NETGEAR MA111NA 0x4110 802.11b Adapter product NETGEAR MA111NA 0x4110 802.11b Adapter
product NETGEAR WG111V2 0x6a00 WG111v2
product NETGEAR XA601 0x8100 USB to PL Adapter product NETGEAR XA601 0x8100 USB to PL Adapter
product NETGEAR2 MA101 0x4100 MA101 product NETGEAR2 MA101 0x4100 MA101
product NETGEAR2 MA101B 0x4102 MA101 Rev B product NETGEAR2 MA101B 0x4102 MA101 Rev B
/* NetIndex products */
product NETINDEX WS002IN 0x2001 Willcom WS002IN (DD)
/* NHJ product */
product NHJ CAM2 0x9120 Camera
/* Nikon products */ /* Nikon products */
product NIKON E990 0x0102 Digital Camera E990 product NIKON E990 0x0102 Digital Camera E990
product NIKON E880 0x0103 Digital Camera E880 product NIKON E880 0x0103 Digital Camera E880
product NIKON E885 0x0105 Digital Camera E885 product NIKON E885 0x0105 Digital Camera E885
/* NHJ product */ /* Nokia products */
product NHJ CAM2 0x9120 Camera product NOKIA CA42 0x0802 Mobile Phone adapter
/* Nova Tech products */
product NOVATECH NV902W 0x9020 NV-902W
product NOVATECH RT2573 0x9021 RT2573
/* NovAtel products */
product NOVATEL FLEXPACKGPS 0x0100 NovAtel FlexPack GPS receiver
product NOVATEL2 EXPRESSCARD 0x1100 ExpressCard 3G
product NOVATEL2 MERLINV620 0x1110 Novatel Wireless Merlin CDMA
product NOVATEL2 V740 0x1120 Merlin V740
product NOVATEL2 S720 0x1130 S720
product NOVATEL2 MERLINU740 0x1400 Novatel Merlin U740
product NOVATEL2 U740_2 0x1410 Merlin U740
product NOVATEL2 U870 0x1420 Merlin U870
product NOVATEL2 XU870 0x1430 XU870
product NOVATEL2 X950D 0x1450 Merlin X950D
product NOVATEL2 ES620 0x2100 ES620 CDMA
product NOVATEL2 U720 0x2110 U720
product NOVATEL2 U727 0x4100 U727
product NOVATEL2 MC950D 0x4400 Novatel Wireless HSUPA Modem
product NOVATEL2 MC950D_DRIVER 0x5010 Novatel Wireless HSUPA Modem Windows Driver
product NOVATEL2 U760_DRIVER 0x5030 Novatel Wireless U760 Windows/Mac Driver
product NOVATEL2 U760 0x6000 Novatel 760USB
/* Olympus products */ /* Olympus products */
product OLYMPUS C1 0x0102 C-1 Digital Camera product OLYMPUS C1 0x0102 C-1 Digital Camera
...@@ -1374,6 +1817,7 @@ product OLYMPUS C700 0x0105 C-700 Ultra Zoom ...@@ -1374,6 +1817,7 @@ product OLYMPUS C700 0x0105 C-700 Ultra Zoom
/* OmniVision Technologies, Inc. products */ /* OmniVision Technologies, Inc. products */
product OMNIVISION OV511 0x0511 OV511 Camera product OMNIVISION OV511 0x0511 OV511 Camera
product OMNIVISION OV511PLUS 0xa511 OV511+ Camera product OMNIVISION OV511PLUS 0xa511 OV511+ Camera
product OMNIVISION2 PSEYE 0x2000 Sony PLAYSTATION(R) Eye
/* OnSpec Electronic, Inc. */ /* OnSpec Electronic, Inc. */
product ONSPEC MD2 0x0103 disk product ONSPEC MD2 0x0103 disk
...@@ -1389,8 +1833,34 @@ product ONSPEC MD1II 0xb006 Datafab MD1-II PC-Card Reader ...@@ -1389,8 +1833,34 @@ product ONSPEC MD1II 0xb006 Datafab MD1-II PC-Card Reader
product ONSPEC2 8IN2 0xb012 8In2 product ONSPEC2 8IN2 0xb012 8In2
/* Option N.V. products */
product OPTIONNV MC3G 0x5000 Vodafone Mobile Connect 3G datacard
product OPTIONNV QUADUMTS2 0x6000 GlobeTrotter Fusion Quad Lite UMTS/GPRS
product OPTIONNV QUADUMTS 0x6300 GlobeTrotter Fusion Quad Lite 3D
product OPTIONNV QUADPLUSUMTS 0x6600 GlobeTrotter 3G Quad Plus
product OPTIONNV HSDPA 0x6701 GlobeTrotter HSDPA Modem
product OPTIONNV MAXHSDPA 0x6701 GlobeTrotter Max HSDPA Modem
product OPTIONNV GSICON72 0x6911 GlobeSurfer iCON 7.2
product OPTIONNV ICON225 0x6971 iCON 225
product OPTIONNV GTMAXHSUPA 0x7001 GlobeTrotter HSUPA
product OPTIONNV GEHSUPA 0x7011 GlobeTrotter Express HSUPA
product OPTIONNV GTHSUPA 0x7031 GlobeTrotter HSUPA
product OPTIONNV GSHSUPA 0x7251 GlobeSurfer HSUPA
product OPTIONNV GE40X1 0x7301 GE40x
product OPTIONNV GE40X2 0x7361 GE40x
product OPTIONNV GE40X3 0x7381 GE40x
product OPTIONNV ICON401 0x7401 iCON 401
product OPTIONNV GTM382 0x7501 GTM 382
product OPTIONNV GE40X4 0x7601 GE40x
product OPTIONNV ICONEDGE 0xc031 iCON EDGE
product OPTIONNV MODHSXPA 0xd013 Module HSxPA
product OPTIONNV ICON321 0xd031 iCON 321
product OPTIONNV ICON322 0xd033 iCON 322
product OPTIONNV ICON505 0xd055 iCON 505
/* OQO */ /* OQO */
product OQO WIFI01 0x0002 model 01 WiFi interface product OQO WIFI01 0x0002 model 01 WiFi interface
product OQO ETHER01PLUS 0x7720 model 01+ Ethernet
product OQO ETHER01 0x8150 model 01 Ethernet interface product OQO ETHER01 0x8150 model 01 Ethernet interface
/* Ours Technology Inc. */ /* Ours Technology Inc. */
...@@ -1416,6 +1886,7 @@ product PANASONIC KXLRW32AN 0x0d09 CD-R Drive KXL-RW32AN ...@@ -1416,6 +1886,7 @@ product PANASONIC KXLRW32AN 0x0d09 CD-R Drive KXL-RW32AN
product PANASONIC KXLCB20AN 0x0d0a CD-R Drive KXL-CB20AN product PANASONIC KXLCB20AN 0x0d0a CD-R Drive KXL-CB20AN
product PANASONIC KXLCB35AN 0x0d0e DVD-ROM & CD-R/RW product PANASONIC KXLCB35AN 0x0d0e DVD-ROM & CD-R/RW
product PANASONIC SDCAAE 0x1b00 MultiMediaCard Adapter product PANASONIC SDCAAE 0x1b00 MultiMediaCard Adapter
product PANASONIC TYTP50P6S 0x3900 TY-TP50P6-S 50in Touch Panel
/* Pen Driver */ /* Pen Driver */
product PEN USBDISKPRO 0x0120 USB Disk Pro product PEN USBDISKPRO 0x0120 USB Disk Pro
...@@ -1430,9 +1901,13 @@ product PERACOM ENET 0x0002 Ethernet adapter ...@@ -1430,9 +1901,13 @@ product PERACOM ENET 0x0002 Ethernet adapter
product PERACOM ENET3 0x0003 At Home Ethernet Adapter product PERACOM ENET3 0x0003 At Home Ethernet Adapter
product PERACOM ENET2 0x0005 Ethernet adapter product PERACOM ENET2 0x0005 Ethernet adapter
/* Pheenet products */
product PHEENET GWU513 0x4025 GWU513
/* Philips products */ /* Philips products */
product PHILIPS DSS350 0x0101 DSS 350 Digital Speaker System product PHILIPS DSS350 0x0101 DSS 350 Digital Speaker System
product PHILIPS DSS 0x0104 DSS XXX Digital Speaker System product PHILIPS DSS 0x0104 DSS XXX Digital Speaker System
product PHILIPS SA235 0x016a SA235
product PHILIPS HUB 0x0201 hub product PHILIPS HUB 0x0201 hub
product PHILIPS PCA645VC 0x0302 PCA645VC PC Camera product PHILIPS PCA645VC 0x0302 PCA645VC PC Camera
product PHILIPS PCA646VC 0x0303 PCA646VC PC Camera product PHILIPS PCA646VC 0x0303 PCA646VC PC Camera
...@@ -1443,6 +1918,8 @@ product PHILIPS PCVC730K 0x0310 PCVC730K ToUCam Fun PC Camera ...@@ -1443,6 +1918,8 @@ product PHILIPS PCVC730K 0x0310 PCVC730K ToUCam Fun PC Camera
product PHILIPS PCVC740K 0x0311 PCVC740K ToUCam Pro PC Camera product PHILIPS PCVC740K 0x0311 PCVC740K ToUCam Pro PC Camera
product PHILIPS PCVC750K 0x0312 PCVC750K ToUCam Pro Scan PC Camera product PHILIPS PCVC750K 0x0312 PCVC750K ToUCam Pro Scan PC Camera
product PHILIPS DSS150 0x0471 DSS 150 Digital Speaker System product PHILIPS DSS150 0x0471 DSS 150 Digital Speaker System
product PHILIPS CPWUA054 0x1230 CPWUA054
product PHILIPS SNU5600 0x1236 SNU5600
product PHILIPS DIVAUSB 0x1801 DIVA USB mp3 player product PHILIPS DIVAUSB 0x1801 DIVA USB mp3 player
/* Philips Semiconductor products */ /* Philips Semiconductor products */
...@@ -1456,8 +1933,21 @@ product PIENGINEERING XKEYS 0x0233 Xkeys Programmable Keyboard ...@@ -1456,8 +1933,21 @@ product PIENGINEERING XKEYS 0x0233 Xkeys Programmable Keyboard
/* Pilotech Systems Co., Ltd products */ /* Pilotech Systems Co., Ltd products */
product PILOTECH CRW600 0x0001 CRW-600 6-in-1 Reader product PILOTECH CRW600 0x0001 CRW-600 6-in-1 Reader
/* Pinnacle Systems, Inc. products */
product PINNACLE PCTV800E 0x0227 PCTV 800e
/* Planex Communications products */ /* Planex Communications products */
product PLANEX GW_US11H 0x14ea GW-US11H WLAN product PLANEX GW_US11H 0x14ea GW-US11H WLAN
product PLANEX2 GW_US11S 0x3220 GW-US11S WLAN
product PLANEX2 GWUS54GXS 0x5303 GW-US54GXS
product PLANEX2 GWUS54HP 0xab01 GW-US54HP
product PLANEX2 GWUS54MINI2 0xab50 GW-US54Mini2
product PLANEX2 GWUS54SG 0xc002 GW-US54SG
product PLANEX2 GWUS54GZL 0xc007 GW-US54GZL
product PLANEX2 GWUSMM 0xed02 GW-USMM
product PLANEX3 GWUS54GZ 0xab10 GW-US54GZ
product PLANEX3 GU1000T 0xab11 GU-1000T
product PLANEX3 GWUS54MINI 0xab13 GW-US54Mini
/* Plantronics products */ /* Plantronics products */
product PLANTRONICS HEADSET 0x0ca1 Platronics DSP-400 Headset product PLANTRONICS HEADSET 0x0ca1 Platronics DSP-400 Headset
...@@ -1503,32 +1993,69 @@ product PRIMAX PCGAUMS1 0x4d04 Sony PCGA-UMS1 ...@@ -1503,32 +1993,69 @@ product PRIMAX PCGAUMS1 0x4d04 Sony PCGA-UMS1
product PROLIFIC PL2301 0x0000 PL2301 Host-Host interface product PROLIFIC PL2301 0x0000 PL2301 Host-Host interface
product PROLIFIC PL2302 0x0001 PL2302 Host-Host interface product PROLIFIC PL2302 0x0001 PL2302 Host-Host interface
product PROLIFIC RSAQ2 0x04bb PL2303 Serial adapter (IODATA USB-RSAQ2) product PROLIFIC RSAQ2 0x04bb PL2303 Serial adapter (IODATA USB-RSAQ2)
product PROLIFIC PL2303 0x2303 PL2303 Serial adapter (ATEN/IOGEAR UC232A) product PROLIFIC PL2303 0x2303 PL2303 Serial adapter (ATEN/IOGEAR UC232A)
product PROLIFIC PL2305 0x2305 Parallel printer adapter product PROLIFIC PL2305 0x2305 Parallel printer adapter
product PROLIFIC ATAPI4 0x2307 ATAPI-4 Bridge Controller product PROLIFIC ATAPI4 0x2307 ATAPI-4 Bridge Controller
product PROLIFIC PL2501 0x2501 PL2501 Host-Host interface product PROLIFIC PL2501 0x2501 PL2501 Host-Host interface
product PROLIFIC PL2303X 0xaaa0 PL2303 Serial adapter (Pharos GPS) product PROLIFIC PL2303X 0xaaa0 PL2303 Serial adapter (Pharos GPS)
product PROLIFIC RSAQ3 0xaaa2 PL2303 Serial adapter (IODATA USB-RSAQ3)
product PROLIFIC2 PL2303 0x2303 PL2303 Serial adapter (SMART Technologies)
/* Putercom products */ /* Putercom products */
product PUTERCOM UPA100 0x047e USB-1284 BRIDGE product PUTERCOM UPA100 0x047e USB-1284 BRIDGE
/* Qcom products */
product QCOM RT2573 0x6196 RT2573
product QCOM RT2573_2 0x6229 RT2573
product QCOM RT2573_3 0x6238 RT2573
/* Qtronix products */ /* Qtronix products */
product QTRONIX 980N 0x2011 Scorpion-980N keyboard product QTRONIX 980N 0x2011 Scorpion-980N keyboard
/* Qualcomm products */ /* Qualcomm products */
product QUALCOMM CDMA_MSM 0x6000 CDMA Technologies MSM phone product QUALCOMM CDMA_MSM 0x6000 CDMA Technologies MSM phone
product QUALCOMM MSM_HSDPA 0x6613 HSDPA MSM
product QUALCOMM2 RWT_FCT 0x3100 RWT FCT-CDMA 2000 1xRTT modem
product QUALCOMM2 CDMA_MSM 0x3196 CDMA Technologies MSM modem
product QUALCOMMINC CDMA_MSM 0x0001 CDMA Technologies MSM modem
product QUALCOMMINC ZTE_MF626 0x0031 CDMA Technologies MSM modem
product QUALCOMMINC ZTE_STOR 0x2000 USB ZTE Storage
product QUALCOMMINC AC8700 0xfffe CDMA 1xEVDO USB modem
/* Qualcomm Kyocera products */
product QUALCOMM_K CDMA_MSM_K 0x17da Qualcomm Kyocera CDMA Technologies MSM
/* Quickshot products */ /* Quickshot products */
product QUICKSHOT STRIKEPAD 0x6238 USB StrikePad product QUICKSHOT STRIKEPAD 0x6238 USB StrikePad
/* Rainbow Technologies products */ /* Rainbow Technologies products */
product RAINBOW IKEY2000 0x1200 i-Key 2000 product RAINBOW IKEY2000 0x1200 i-Key 2000
/* Ralink Technology products */
product RALINK RT2570 0x1706 RT2570
product RALINK RT2570_2 0x2570 RT2570
product RALINK RT2573 0x2573 RT2573
product RALINK RT2671 0x2671 RT2671
product RALINK RT2570_3 0x9020 RT2570
product RALINK_2 RT2570 0x2570 RT2570
product RALINK_2 RT2573 0x2573 RT2573
/* RATOC Systems products */ /* RATOC Systems products */
product RATOC REXUSB60 0xb000 USB serial REX-USB60 product RATOC REXUSB60 0xb000 USB serial adapter REX-USB60
product RATOC REXUSB60F 0xb020 USB serial adapter REX-USB60F
/* Realtek products */ /* Realtek products */
product REALTEK RTL8150L 0x8150 Realtek RTL8150L USB-Ethernet Bridge product REALTEK RTL8150L 0x8150 RTL8150L USB-Ethernet Bridge
product REALTEK RTL8151 0x8151 RTL8151 PNA
product REALTEK RTL8187 0x8187 RTL8187
/* Research In Motion */
product RIM BLACKBERRY 0x0001 BlackBerry
product RIM BLACKBERRY_PEARL_DUAL 0x0004 BlackBerry Pearl Dual
product RIM BLACKBERRY_PEARL 0x0006 BlackBerry Pearl
/* Rockfire products */
product ROCKFIRE GAMEPAD 0x2033 gamepad 203USB
/* Roland products */ /* Roland products */
product ROLAND UA100 0x0000 UA-100 USB Audio I/F product ROLAND UA100 0x0000 UA-100 USB Audio I/F
...@@ -1551,21 +2078,33 @@ product ROLAND UM550 0x0023 UM-550 MIDI I/F ...@@ -1551,21 +2078,33 @@ product ROLAND UM550 0x0023 UM-550 MIDI I/F
product ROLAND SD20 0x0027 SD-20 MIDI Synth. product ROLAND SD20 0x0027 SD-20 MIDI Synth.
product ROLAND SD80 0x0029 SD-80 MIDI Synth. product ROLAND SD80 0x0029 SD-80 MIDI Synth.
product ROLAND UA700 0x002b UA-700 USB Audio I/F product ROLAND UA700 0x002b UA-700 USB Audio I/F
product ROLAND PCRA 0x0033 EDIROL PCR MIDI keyboard (advanced)
product ROLAND PCR 0x0034 EDIROL PCR MIDI keyboard
product ROLAND M1000 0x0035 M-1000 audio I/F
product ROLAND UA1000 0x0044 EDIROL UA-1000 USB audio I/F
product ROLAND UA3FXA 0x0050 EDIROL UA-3FX USB audio I/F (advanced) product ROLAND UA3FXA 0x0050 EDIROL UA-3FX USB audio I/F (advanced)
product ROLAND UA3FX 0x0051 EDIROL UA-3FX USB audio I/F product ROLAND UA3FX 0x0051 EDIROL UA-3FX USB audio I/F
product ROLAND FANTOMX 0x006d Fantom-X MIDI Synth.
/* Rockfire products */ product ROLAND UA25 0x0074 EDIROL UA-25
product ROCKFIRE GAMEPAD 0x2033 gamepad 203USB product ROLAND UA101 0x007d EDIROL UA-101
product ROLAND UA101F 0x008d EDIROL UA-101 USB1
/* RATOC Systems products */ product ROLAND UA1EX 0x0096 EDIROL UA-1EX
product RATOC REXUSB60 0xb000 USB serial adapter REX-USB60 product ROLAND UM3 0x009A EDIROL UM-3
product ROLAND UA4FX 0x00A3 EDIROL UA-4FX
product ROLAND SONICCELL 0x00C2 SonicCell
/* Sagem products */
product SAGEM XG760A 0x004a XG-760A
product SAGEM XG76NA 0x0062 XG-76NA
/* Saitek products */ /* Saitek products */
product SAITEK CYBORG_3D_GOLD 0x0006 Cyborg 3D Gold Joystick product SAITEK CYBORG_3D_GOLD 0x0006 Cyborg 3D Gold Joystick
/* Samsung products */ /* Samsung products */
product SAMSUNG MIGHTYDRIVE 0x1623 Mighty Drive
product SAMSUNG ML6060 0x3008 ML-6060 laser printer product SAMSUNG ML6060 0x3008 ML-6060 laser printer
product SAMSUNG MIGHTYDRIVE 0x1623 Mighty Drive product SAMSUNG GTB3710 0x6876 GT-B3710 LTE/4G datacard
product SAMSUNG GTB3730 0x689a GT-B3730 LTE/4G datacard
/* SanDisk products */ /* SanDisk products */
product SANDISK SDDR05A 0x0001 ImageMate SDDR-05a product SANDISK SDDR05A 0x0001 ImageMate SDDR-05a
...@@ -1573,14 +2112,14 @@ product SANDISK SDDR31 0x0002 ImageMate SDDR-31 ...@@ -1573,14 +2112,14 @@ product SANDISK SDDR31 0x0002 ImageMate SDDR-31
product SANDISK SDDR05 0x0005 ImageMate SDDR-05 product SANDISK SDDR05 0x0005 ImageMate SDDR-05
product SANDISK SDDR12 0x0100 ImageMate SDDR-12 product SANDISK SDDR12 0x0100 ImageMate SDDR-12
product SANDISK SDDR09 0x0200 ImageMate SDDR-09 product SANDISK SDDR09 0x0200 ImageMate SDDR-09
product SANDISK SDDR86 0x0621 ImageMate SDDR-86
product SANDISK SDDR75 0x0810 ImageMate SDDR-75 product SANDISK SDDR75 0x0810 ImageMate SDDR-75
product SANDISK SDDR86 0x0621 ImageMate SDDR-86
/* Sanwa Supply products */ /* Sanwa Supply products */
product SANWASUPPLY JYDV9USB 0x9806 JY-DV9USB gamepad product SANWASUPPLY JYDV9USB 0x9806 JY-DV9USB gamepad
/* Sanyo Electric products */ /* Sanyo Electric products */
product SANYO SCP4900 0x0701 Sanyo SCP-4900 USB Phone product SANYO SCP4900 0x0701 Sanyo SCP-4900 USB Phone
/* ScanLogic products */ /* ScanLogic products */
product SCANLOGIC SL11R 0x0002 SL11R-IDE product SCANLOGIC SL11R 0x0002 SL11R-IDE
...@@ -1588,10 +2127,21 @@ product SCANLOGIC 336CX 0x0300 Phantom 336CX - C3 scanner ...@@ -1588,10 +2127,21 @@ product SCANLOGIC 336CX 0x0300 Phantom 336CX - C3 scanner
/* Sealevel products */ /* Sealevel products */
product SEALEVEL USBSERIAL 0x2101 USB-Serial converter product SEALEVEL USBSERIAL 0x2101 USB-Serial converter
product SEALEVEL SEAPORT4P1 0x2413 SeaPort+4 Port 1
product SEALEVEL SEAPORT4P2 0x2423 SeaPort+4 Port 2
product SEALEVEL SEAPORT4P3 0x2433 SeaPort+4 Port 3
product SEALEVEL SEAPORT4P4 0x2443 SeaPort+4 Port 4
/* Senao products */
product SENAO NUB8301 0x2000 NUB-8301
/* SGI products */ /* SGI products */
product SGI SN1_L1_SC 0x1234 SN1 L1 System Controller product SGI SN1_L1_SC 0x1234 SN1 L1 System Controller
/* ShanTou products */
product SHANTOU ST268_USB_NIC 0x0268 ST268 USB NIC
product SHANTOU ADM8515 0x8515 ADM8515 Ethernet
/* Shark products */ /* Shark products */
product SHARK PA 0x0400 Pocket Adapter product SHARK PA 0x0400 Pocket Adapter
...@@ -1601,6 +2151,9 @@ product SHARP A300 0x8005 A300 ...@@ -1601,6 +2151,9 @@ product SHARP A300 0x8005 A300
product SHARP SL5600 0x8006 SL5600 product SHARP SL5600 0x8006 SL5600
product SHARP C700 0x8007 C700 product SHARP C700 0x8007 C700
product SHARP C750 0x9031 C750 product SHARP C750 0x9031 C750
product SHARP RUITZ1016YCZZ 0x90fd WS003SH WLAN
product SHARP WS007SH 0x9123 WS007SH
product SHARP WS011SH 0x91ac WS011SH
/* Shuttle Technology products */ /* Shuttle Technology products */
product SHUTTLE EUSB 0x0001 E-USB Bridge product SHUTTLE EUSB 0x0001 E-USB Bridge
...@@ -1621,24 +2174,82 @@ product SHUTTLE SCM 0x1010 SCM Micro ...@@ -1621,24 +2174,82 @@ product SHUTTLE SCM 0x1010 SCM Micro
product SIEMENS SPEEDSTREAM 0x1001 SpeedStream USB product SIEMENS SPEEDSTREAM 0x1001 SpeedStream USB
product SIEMENS SPEEDSTREAM22 0x1022 SpeedStream USB 1022 product SIEMENS SPEEDSTREAM22 0x1022 SpeedStream USB 1022
/* Siemens Info products */
product SIEMENS2 MC75 0x0034 Wireless Modules MC75
product SIEMENS2 WL54G 0x3c06 54g USB Network Adapter
/* Sierra Wireless products */
product SIERRA EM5625 0x0017 EM5625
product SIERRA MC5720_2 0x0018 MC5720
product SIERRA AIRCARD595 0x0019 Sierra Wireless AirCard 595
product SIERRA MC5725 0x0020 MC5725
product SIERRA AC597E 0x0021 Sierra Wireless AirCard 597E
product SIERRA C597 0x0023 Sierra Wireless Compass 597
product SIERRA AIRCARD580 0x0112 Sierra Wireless AirCard 580
product SIERRA AC595U 0x0120 Sierra Wireless AirCard 595U
product SIERRA MC5720 0x0218 MC5720 Wireless Modem
product SIERRA MINI5725 0x0220 Sierra Wireless miniPCI 5275
product SIERRA INSTALLER 0x0fff Aircard Driver Installer
product SIERRA MC8755_2 0x6802 MC8755
product SIERRA MC8765 0x6803 MC8765
product SIERRA MC8755 0x6804 MC8755
product SIERRA AC875U 0x6812 AC875U HSDPA USB Modem
product SIERRA MC8755_3 0x6813 MC8755 HSDPA
product SIERRA MC8775_2 0x6815 MC8775
product SIERRA AIRCARD875 0x6820 Aircard 875 HSDPA
product SIERRA MC8780 0x6832 MC8780
product SIERRA MC8781 0x6833 MC8781
product SIERRA AC880 0x6850 Sierra Wireless AirCard 880
product SIERRA AC881 0x6851 Sierra Wireless AirCard 881
product SIERRA AC880E 0x6852 Sierra Wireless AirCard 880E
product SIERRA AC881E 0x6853 Sierra Wireless AirCard 881E
product SIERRA AC880U 0x6855 Sierra Wireless AirCard 880U
product SIERRA AC881U 0x6856 Sierra Wireless AirCard 881U
product SIERRA USB305 0x68a3 Sierra Wireless AirCard USB 305
/* Sigmatel products */ /* Sigmatel products */
product SIGMATEL SIR4116 0x4116 StIR4116 SIR
product SIGMATEL IRDA 0x4200 IrDA product SIGMATEL IRDA 0x4200 IrDA
product SIGMATEL FIR4210 0x4210 StIR4210 FIR
product SIGMATEL VFIR4220 0x4220 StIR4220 VFIR
product SIGMATEL I_BEAD100 0x8008 i-Bead 100 MP3 Player product SIGMATEL I_BEAD100 0x8008 i-Bead 100 MP3 Player
product SIGMATEL I_BEAD150 0x8009 i-Bead 150 MP3 Player
product SIGMATEL DNSSF7X 0x8020 Datum Networks SSF-7X Multi Players product SIGMATEL DNSSF7X 0x8020 Datum Networks SSF-7X Multi Players
product SIGMATEL MUSICSTICK 0x8134 TrekStor Musicstick
/* SIIG products */ /* SIIG products */
product SIIG DIGIFILMREADER 0x0004 DigiFilm-Combo Reader product SIIG DIGIFILMREADER 0x0004 DigiFilm-Combo Reader
product SIIG UISDMC2S 0x0200 MULTICARDREADER product SIIG UISDMC2S 0x0200 MULTICARDREADER
product SIIG MULTICARDREADER 0x0201 MULTICARDREADER product SIIG MULTICARDREADER 0x0201 MULTICARDREADER
product SIIG2 USBTOETHER 0x0109 USB TO Ethernet
product SIIG2 US2308 0x0421 Serial product SIIG2 US2308 0x0421 Serial
/* Silicom products */ /* Silicom products */
product SILICOM U2E 0x0001 U2E product SILICOM U2E 0x0001 U2E
product SILICOM GPE 0x0002 Psion Gold Port Ethernet
/* Silicon Labs products */
product SILABS POLOLU 0x803b Pololu Serial
product SILABS ARGUSISP 0x8066 Argussoft ISP
product SILABS CRUMB128 0x807a Crumb128
product SILABS DEGREECONT 0x80ca Degree Controls
product SILABS SUNNTO 0x80f6 Suunto sports
product SILABS DESKTOPMOBILE 0x813d Burnside Desktop mobile
product SILABS IPLINK1220 0x815e IP-Link 1220
product SILABS LIPOWSKY_JTAG 0x81c8 Lipowsky Baby-JTAG
product SILABS LIPOWSKY_LIN 0x81e2 Lipowsky Baby-LIN
product SILABS LIPOWSKY_HARP 0x8218 Lipowsky HARP-1
product SILABS2 DCU11CLONE 0xaa26 DCU-11 clone
product SILABS CP210X_1 0xea60 CP210x Serial
product SILABS CP210X_2 0xea61 CP210x Serial
/* Silicon Portals Inc. */ /* Silicon Portals Inc. */
product SILICONPORTALS YAPPH_NF 0x0200 YAP Phone (no firmware) product SILICONPORTALS YAPPH_NF 0x0200 YAP Phone (no firmware)
product SILICONPORTALS YAPPHONE 0x0201 YAP Phone product SILICONPORTALS YAPPHONE 0x0201 YAP Phone
/* Silicon Integrated Systems products */
product SIS SIS_163U 0x0163 802.11g Wireless LAN Adapter
/* Sirius Technologies products */ /* Sirius Technologies products */
product SIRIUS ROADSTER 0x0001 NetComm Roadster II 56 USB product SIRIUS ROADSTER 0x0001 NetComm Roadster II 56 USB
...@@ -1647,6 +2258,13 @@ product SIRIUS ROADSTER 0x0001 NetComm Roadster II 56 USB ...@@ -1647,6 +2258,13 @@ product SIRIUS ROADSTER 0x0001 NetComm Roadster II 56 USB
product SITECOM LN029 0x182d LN029 product SITECOM LN029 0x182d LN029
product SITECOM CN104 0x2068 CN104 serial product SITECOM CN104 0x2068 CN104 serial
/* Sitecom Europe products */
product SITECOMEU LN028 0x061c LN-028
product SITECOMEU WL113 0x9071 WL-113
product SITECOMEU ZD1211B 0x9075 ZD1211B
product SITECOMEU WL172 0x90ac WL-172
product SITECOMEU WL113R2 0x9712 WL-113 rev 2
/* SmartBridges products */ /* SmartBridges products */
product SMARTBRIDGES SMARTLINK 0x0001 SmartLink USB ethernet adapter product SMARTBRIDGES SMARTLINK 0x0001 SmartLink USB ethernet adapter
product SMARTBRIDGES SMARTNIC 0x0003 smartNIC 2 PnP Adapter product SMARTBRIDGES SMARTNIC 0x0003 smartNIC 2 PnP Adapter
...@@ -1655,11 +2273,14 @@ product SMARTBRIDGES SMARTNIC 0x0003 smartNIC 2 PnP Adapter ...@@ -1655,11 +2273,14 @@ product SMARTBRIDGES SMARTNIC 0x0003 smartNIC 2 PnP Adapter
product SMC 2102USB 0x0100 10Mbps ethernet adapter product SMC 2102USB 0x0100 10Mbps ethernet adapter
product SMC 2202USB 0x0200 10/100 ethernet adapter product SMC 2202USB 0x0200 10/100 ethernet adapter
product SMC 2206USB 0x0201 EZ Connect USB Ethernet Adapter product SMC 2206USB 0x0201 EZ Connect USB Ethernet Adapter
product SMC2 2020HUB 0x2020 USB Hub product SMC 2862WG 0xee13 EZ Connect g Wireless USB Adapter
product SMC2 2020HUB 0x2020 USB Hub
product SMC3 2662WV1 0xa001 EZ Connect 11Mbps
product SMC3 2662WUSB 0xa002 2662W-AR Wireless Adapter product SMC3 2662WUSB 0xa002 2662W-AR Wireless Adapter
/* SOHOware products */ /* SOHOware products */
product SOHOWARE NUB100 0x9100 10/100 USB Ethernet product SOHOWARE NUB100 0x9100 10/100 USB Ethernet
product SOHOWARE NUB110 0x9110 NUB110 Ethernet
/* SOLID YEAR products */ /* SOLID YEAR products */
product SOLIDYEAR KEYBOARD 0x2101 Solid Year USB keyboard product SOLIDYEAR KEYBOARD 0x2101 Solid Year USB keyboard
...@@ -1676,7 +2297,7 @@ product SONY PS2KEYBOARD 0x005c PlayStation2 keyboard ...@@ -1676,7 +2297,7 @@ product SONY PS2KEYBOARD 0x005c PlayStation2 keyboard
product SONY PS2KEYBOARDHUB 0x005d PlayStation2 keyboard hub product SONY PS2KEYBOARDHUB 0x005d PlayStation2 keyboard hub
product SONY PS2MOUSE 0x0061 PlayStation2 mouse product SONY PS2MOUSE 0x0061 PlayStation2 mouse
product SONY CLIE_40 0x0066 Sony Clie v4.0 product SONY CLIE_40 0x0066 Sony Clie v4.0
product SONY MSC_U03 0x0069 MSC memory stick slot MSC-U03 product SONY MSC_U03 0x0069 MSC memory stick slot MSC-U03
product SONY CLIE_40_MS 0x006d Sony Clie v4.0 Memory Stick slot product SONY CLIE_40_MS 0x006d Sony Clie v4.0 Memory Stick slot
product SONY CLIE_S360 0x0095 Sony Clie s360 product SONY CLIE_S360 0x0095 Sony Clie s360
product SONY CLIE_41_MS 0x0099 Sony Clie v4.1 Memory Stick slot product SONY CLIE_41_MS 0x0099 Sony Clie v4.1 Memory Stick slot
...@@ -1685,10 +2306,15 @@ product SONY CLIE_NX60 0x00da Sony Clie nx60 ...@@ -1685,10 +2306,15 @@ product SONY CLIE_NX60 0x00da Sony Clie nx60
product SONY PS2EYETOY4 0x0154 PlayStation2 EyeToy v154 product SONY PS2EYETOY4 0x0154 PlayStation2 EyeToy v154
product SONY PS2EYETOY5 0x0155 PlayStation2 EyeToy v155 product SONY PS2EYETOY5 0x0155 PlayStation2 EyeToy v155
product SONY CLIE_TJ25 0x0169 Sony Clie tj25 product SONY CLIE_TJ25 0x0169 Sony Clie tj25
product SONY GPS_CS1 0x0298 Sony GPS GPS-CS1
/* SOURCENEXT products */ /* SOURCENEXT products */
product SOURCENEXT KEIKAI8 0x039f KeikaiDenwa 8
product SOURCENEXT KEIKAI8_CHG 0x012e KeikaiDenwa 8 with charger product SOURCENEXT KEIKAI8_CHG 0x012e KeikaiDenwa 8 with charger
product SOURCENEXT KEIKAI8 0x039f KeikaiDenwa 8
/* Sphairon Access Systems GmbH products */
product SPHAIRON UB801R 0x0110 UB801R
product SPHAIRON RTL8187 0x0150 RTL8187
/* STMicroelectronics products */ /* STMicroelectronics products */
product STMICRO COMMUNICATOR 0x7554 USB Communicator product STMICRO COMMUNICATOR 0x7554 USB Communicator
...@@ -1697,7 +2323,7 @@ product STMICRO COMMUNICATOR 0x7554 USB Communicator ...@@ -1697,7 +2323,7 @@ product STMICRO COMMUNICATOR 0x7554 USB Communicator
product STSN STSN0001 0x0001 Internet Access Device product STSN STSN0001 0x0001 Internet Access Device
/* Sun Communications products */ /* Sun Communications products */
product SUNCOMM MB_ADAPTOR 0x0003 Mobile Adaptor product SUNCOMM MB_ADAPTOR 0x0003 Mobile Adaptor
/* SUN Corporation products */ /* SUN Corporation products */
product SUNTAC DS96L 0x0003 SUNTAC U-Cable type D2 product SUNTAC DS96L 0x0003 SUNTAC U-Cable type D2
...@@ -1708,26 +2334,44 @@ product SUNTAC AS64LX 0x000b SUNTAC U-Cable type A3 ...@@ -1708,26 +2334,44 @@ product SUNTAC AS64LX 0x000b SUNTAC U-Cable type A3
product SUNTAC AS144L4 0x0011 U-Cable type A4 product SUNTAC AS144L4 0x0011 U-Cable type A4
/* Sun Microsystems products */ /* Sun Microsystems products */
product SUN KEYBOARD 0x0005 Type 6 USB keyboard product SUN KEYBOARD_TYPE_6 0x0005 Type 6 USB keyboard
product SUN KEYBOARD_TYPE_7 0x00a2 Type 7 USB keyboard
/* XXX The above is a North American PC style keyboard possibly */ /* XXX The above is a North American PC style keyboard possibly */
product SUN MOUSE 0x0100 Type 6 USB mouse product SUN MOUSE 0x0100 Type 6 USB mouse
/* Susteen products */ /* SUNRISING products */
product SUSTEEN DCU10 0x0528 USB Cable product SUNRISING SR9600 0x8101 SR9600 Ethernet
/* System TALKS, Inc. */ /* SuperTop products */
product SYSTEMTALKS SGCX2UL 0x1920 SGC-X2UL product SUPERTOP IDEBRIDGE 0x6600 SuperTop IDE Bridge
/* Supra products */ /* Supra products */
product DIAMOND2 SUPRAEXPRESS56K 0x07da Supra Express 56K modem product DIAMOND2 SUPRAEXPRESS56K 0x07da Supra Express 56K modem
product DIAMOND2 SUPRA2890 0x0b4a SupraMax 2890 56K Modem product DIAMOND2 SUPRA2890 0x0b4a SupraMax 2890 56K Modem
product DIAMOND2 RIO600USB 0x5001 Rio 600 USB product DIAMOND2 RIO600USB 0x5001 Rio 600 USB
product DIAMOND2 RIO800USB 0x5002 Rio 800 USB product DIAMOND2 RIO800USB 0x5002 Rio 800 USB
product DIAMOND2 PSAPLAY120 0x5003 Nike psa[play 120 product DIAMOND2 PSAPLAY120 0x5003 Nike psa[play 120
/* Surecom Technology products */
product SURECOM EP9001G2A 0x11f2 EP-9001-g rev 2a
product SURECOM EP9001G 0x11f3 EP-9001-g
product SURECOM RT2573 0x31f3 RT2573
/* Susteen products */
product SUSTEEN DCU10 0x0528 USB Cable
/* Sweex products */
product SWEEX ZD1211 0x1809 ZD1211
/* System TALKS, Inc. */
product SYSTEMTALKS SGCX2UL 0x1920 SGC-X2UL
/* Tangtop products */ /* Tangtop products */
product TANGTOP USBPS2 0x0001 USBPS2 product TANGTOP USBPS2 0x0001 USBPS2
/* Targus products */
product TARGUS PAUM004 0x0201 PAUM004 Mouse
/* Taugagreining products */ /* Taugagreining products */
product TAUGA CAMERAMATE 0x0005 CameraMate (DPCM_USB) product TAUGA CAMERAMATE 0x0005 CameraMate (DPCM_USB)
...@@ -1744,10 +2388,17 @@ product TEAC FD05PUB 0x0000 FD-05PUB floppy ...@@ -1744,10 +2388,17 @@ product TEAC FD05PUB 0x0000 FD-05PUB floppy
/* Tekram Technology products */ /* Tekram Technology products */
product TEKRAM 0193 0x1601 ALLNET 0193 WLAN product TEKRAM 0193 0x1601 ALLNET 0193 WLAN
product TEKRAM ZYAIR_B200 0x1602 ZyXEL ZyAIR B200 WLAN product TEKRAM ZYAIR_B200 0x1602 ZyXEL ZyAIR B200 WLAN
product TEKRAM QUICKWLAN 0x1630 QuickWLAN
product TEKRAM ZD1211_1 0x5630 ZD1211
product TEKRAM ZD1211_2 0x6630 ZD1211
/* Telex Communications products */ /* Telex Communications products */
product TELEX MIC1 0x0001 Enhanced USB Microphone product TELEX MIC1 0x0001 Enhanced USB Microphone
/* Ten X Technology, Inc. */
product TENX MISSILE 0x0202 Missile Launcher
product TENX TEMPER 0x660c TEMPer sensor
/* Texas Intel products */ /* Texas Intel products */
product TI UTUSB41 0x1446 UT-USB41 hub product TI UTUSB41 0x1446 UT-USB41 hub
product TI TUSB2046 0x2046 TUSB2046 hub product TI TUSB2046 0x2046 TUSB2046 hub
...@@ -1756,8 +2407,14 @@ product TI NEXII 0x5409 Nex II Digital ...@@ -1756,8 +2407,14 @@ product TI NEXII 0x5409 Nex II Digital
/* Thrustmaster products */ /* Thrustmaster products */
product THRUST FUSION_PAD 0xa0a3 Fusion Digital Gamepad product THRUST FUSION_PAD 0xa0a3 Fusion Digital Gamepad
/* TOD Co. Ltd products */
product TOD DOOGI_SLIM 0x0411 DOOGI SLIM USB Keyboard
/* Todos Data System products */ /* Todos Data System products */
product TODOS ARGOS_MINI 0x0002 Argos Mini Smartcard Reader product TODOS ARGOS_MINI 0x0002 Argos Mini Smartcard Reader
/* Topfield Co. Ltd products */
product TOPFIELD TF5000PVR 0x1000 TF5000PVR Digital Video Recorder
/* Toshiba Corporation products */ /* Toshiba Corporation products */
product TOSHIBA POCKETPC_E740 0x0706 PocketPC e740 product TOSHIBA POCKETPC_E740 0x0706 PocketPC e740
...@@ -1768,14 +2425,18 @@ product TREK THUMBDRIVE_8MB 0x9988 ThumbDrive 8MB ...@@ -1768,14 +2425,18 @@ product TREK THUMBDRIVE_8MB 0x9988 ThumbDrive 8MB
/* Tripp-Lite products */ /* Tripp-Lite products */
product TRIPPLITE U209 0x2008 U209 Serial adapter product TRIPPLITE U209 0x2008 U209 Serial adapter
product TRIPPLITE2 UPS 0x1007 Tripp Lite UPS
/* Trumpion products */ /* Trumpion products */
product TRUMPION T33521 0x1003 USB/MP3 decoder product TRUMPION T33521 0x1003 USB/MP3 decoder
product TRUMPION XXX1100 0x1100 XXX 1100 product TRUMPION XXX1100 0x1100 XXX 1100
/* Tsunami products */ /* Tsunami products */
product TSUNAMI SM2000 0x1111 SM-2000 product TSUNAMI SM2000 0x1111 SM-2000
/* TwinMOS products */
product TWINMOS G240 0xa006 G240
/* Ultima products */ /* Ultima products */
product ULTIMA 1200UBPLUS 0x4002 1200 UB Plus scanner product ULTIMA 1200UBPLUS 0x4002 1200 UB Plus scanner
...@@ -1783,15 +2444,29 @@ product ULTIMA 1200UBPLUS 0x4002 1200 UB Plus scanner ...@@ -1783,15 +2444,29 @@ product ULTIMA 1200UBPLUS 0x4002 1200 UB Plus scanner
product UMAX ASTRA1236U 0x0002 Astra 1236U Scanner product UMAX ASTRA1236U 0x0002 Astra 1236U Scanner
product UMAX ASTRA1220U 0x0010 Astra 1220U Scanner product UMAX ASTRA1220U 0x0010 Astra 1220U Scanner
product UMAX ASTRA2000U 0x0030 Astra 2000U Scanner product UMAX ASTRA2000U 0x0030 Astra 2000U Scanner
product UMAX ASTRA3400 0x0060 Astra 3400 Scanner
product UMAX ASTRA2100U 0x0130 Astra 2100U Scanner product UMAX ASTRA2100U 0x0130 Astra 2100U Scanner
product UMAX ASTRA2200U 0x0230 Astra 2200U Scanner product UMAX ASTRA2200U 0x0230 Astra 2200U Scanner
product UMAX ASTRA3400 0x0060 Astra 3400 Scanner
/* U-MEDIA Communications products */
product UMEDIA TEW429UB_A 0x300a TEW-429UB_A
product UMEDIA TEW429UB 0x300b TEW-429UB
product UMEDIA TEW429UBC1 0x300d TEW-429UB C1
product UMEDIA ALL0298V2 0x3204 ALL0298 v2
/* Universal Access products */ /* Universal Access products */
product UNIACCESS PANACHE 0x0101 Panache Surf USB ISDN Adapter product UNIACCESS PANACHE 0x0101 Panache Surf USB ISDN Adapter
/* U.S. Robotics products */ /* U.S. Robotics products */
product USR USR1120 0x00eb USR1120 WLAN product USR USR1120 0x00eb USR1120 WLAN
product USR USR5422 0x0118 USR5422 WLAN
product USR USR5423 0x0121 USR5423 WLAN
/* USI products */
product USI MC60 0x10c5 MC60 Serial
/* GNU Radio USRP */
product USRP USRPv2 0x0002 USRP Revision 2
/* VidzMedia products */ /* VidzMedia products */
product VIDZMEDIA MONSTERTV 0x4fb1 MonsterTV P2H product VIDZMEDIA MONSTERTV 0x4fb1 MonsterTV P2H
...@@ -1816,22 +2491,34 @@ product VISIONEER 8600 0x0331 OneTouch 8600 ...@@ -1816,22 +2491,34 @@ product VISIONEER 8600 0x0331 OneTouch 8600
/* Vivitar products */ /* Vivitar products */
product VIVITAR DSC350 0x0003 DSC350 Camera product VIVITAR DSC350 0x0003 DSC350 Camera
/* Vodafone products */ /* VTech products */
product VODAFONE MC3G 0x5000 Mobile Connect 3G datacard product VTECH RT2570 0x3012 RT2570
product VTECH ZD1211B 0x3014 ZD1211B
/* Wacom products */ /* Wacom products */
product WACOM CT0405U 0x0000 CT-0405-U Tablet product WACOM CT0405U 0x0000 CT-0405-U Tablet
product WACOM GRAPHIRE 0x0010 Graphire product WACOM GRAPHIRE 0x0010 Graphire
product WACOM GRAPHIRE3_4X5 0x0013 Graphire3 4x5 product WACOM GRAPHIRE3_4X5 0x0013 Graphire3 4x5
product WACOM GRAPHIRE3_6X8 0x0014 Graphire3 6x8
product WACOM GRAPHIRE4_4X5 0x0015 Graphire4 4x5
product WACOM INTUOSA5 0x0021 Intuos A5 product WACOM INTUOSA5 0x0021 Intuos A5
product WACOM GD0912U 0x0022 Intuos 9x12 Graphics Tablet product WACOM GD0912U 0x0022 Intuos 9x12 Graphics Tablet
/* WinChipHead products */
product WINCHIPHEAD CH341SER 0x5523 CH341/CH340 USB-Serial Bridge
product WINCHIPHEAD2 CH341 0x7523 CH341 serial/parallel
/* Wistron NeWeb products */
product WISTRONNEWEB UR045G 0x0427 PrismGT USB 2.0 WLAN
product WISTRONNEWEB UR055G 0x0711 UR055G
/* Xirlink products */ /* Xirlink products */
product XIRLINK IMAGING 0x800d IMAGING DEVICE product XIRLINK IMAGING 0x800d IMAGING DEVICE
product XIRLINK PCCAM 0x8080 IBM PC Camera product XIRLINK PCCAM 0x8080 IBM PC Camera
/* Y-E Data products */ /* Xyratex */
product YEDATA FLASHBUSTERU 0x0000 Flashbuster-U product XYRATEX PRISM_GT_1 0x2000 PrismGT USB 2.0 WLAN
product XYRATEX PRISM_GT_2 0x2002 PrismGT USB 2.0 WLAN
/* Yamaha products */ /* Yamaha products */
product YAMAHA UX256 0x1000 UX256 MIDI I/F product YAMAHA UX256 0x1000 UX256 MIDI I/F
...@@ -1856,15 +2543,34 @@ product YAMAHA RTA55I 0x4004 NetVolante RTA55i Broadband VoIP Router ...@@ -1856,15 +2543,34 @@ product YAMAHA RTA55I 0x4004 NetVolante RTA55i Broadband VoIP Router
/* Yano products */ /* Yano products */
product YANO U640MO 0x0101 U640MO-03 product YANO U640MO 0x0101 U640MO-03
/* Zeevo, Inc. products */ /* Y-E Data products */
product ZEEVO BLUETOOTH 0x07d0 BT-500 Bluetooth USB Adapter product YEDATA FLASHBUSTERU 0x0000 Flashbuster-U
/* Z-Com products */ /* Z-Com products */
product ZCOM 725 0x0002 725/726 Prism2.5 WLAN product ZCOM 725 0x0002 725/726 Prism2.5 WLAN
product ZCOM MD40900 0x0006 MD40900
product ZCOM XG703A 0x0008 PrismGT USB 2.0 WLAN
product ZCOM ZD1211 0x0011 ZD1211
product ZCOM ZD1211B 0x001a ZD1211B
/* Zeevo, Inc. products */
product ZEEVO BLUETOOTH 0x07d0 BT-500 Bluetooth USB Adapter
/* Zinwell products */
product ZINWELL ZWXG261 0x0260 ZWX-G261
/* Zoom Telephonics, Inc. products */ /* Zoom Telephonics, Inc. products */
product ZOOM 2986L 0x9700 2986L Fax modem product ZOOM 2986L 0x9700 2986L Fax modem
/* Zydas Technology Corporation products */
product ZYDAS ZD1211 0x1211 ZD1211 WLAN abg
product ZYDAS ZD1211B 0x1215 ZD1211B
/* ZyXEL Communication Co. products */ /* ZyXEL Communication Co. products */
product ZYXEL OMNI56K 0x1500 Omni 56K Plus product ZYXEL OMNI56K 0x1500 Omni 56K Plus
product ZYXEL 980N 0x2011 Scorpion-980N keyboard product ZYXEL 980N 0x2011 Scorpion-980N keyboard
product ZYXEL ZYAIRG220 0x3401 ZyAIR G-220
product ZYXEL AG225H 0x3409 AG-225H
product ZYXEL M202 0x340a M-202
product ZYXEL G220V2 0x340f G-220 v2
product ZYXEL PRESTIGE 0x401a Prestige
/* $NetBSD: wsconsio.h,v 1.31.2.1 2000/07/07 09:49:17 hannken Exp $ */ /* $NetBSD: wsconsio.h,v 1.92 2009/12/31 05:08:05 macallan Exp $ */
/* /*
* Copyright (c) 1996, 1997 Christopher G. Demetriou. All rights reserved. * Copyright (c) 1996, 1997 Christopher G. Demetriou. All rights reserved.
...@@ -40,12 +40,15 @@ ...@@ -40,12 +40,15 @@
* 0-31 keyboard ioctls (WSKBDIO) * 0-31 keyboard ioctls (WSKBDIO)
* 32-63 mouse ioctls (WSMOUSEIO) * 32-63 mouse ioctls (WSMOUSEIO)
* 64-95 display ioctls (WSDISPLAYIO) * 64-95 display ioctls (WSDISPLAYIO)
* 96-255 reserved for future use * 96-127 mux ioctls (WSMUXIO)
* 128-255 reserved for future use
*/ */
#include <sys/types.h> #include <sys/types.h>
#include <sys/ioccom.h> #include <sys/ioccom.h>
//#include <dev/wscons/wsksymvar.h> #ifndef __riscos
#include <dev/wscons/wsksymvar.h>
#endif
/* /*
...@@ -56,6 +59,7 @@ struct wscons_event { ...@@ -56,6 +59,7 @@ struct wscons_event {
int value; int value;
struct timespec time; struct timespec time;
}; };
#define WSEVENT_VERSION 1
/* Event type definitions. Comment for each is information in value. */ /* Event type definitions. Comment for each is information in value. */
#define WSCONS_EVENT_KEY_UP 1 /* key code */ #define WSCONS_EVENT_KEY_UP 1 /* key code */
...@@ -69,6 +73,10 @@ struct wscons_event { ...@@ -69,6 +73,10 @@ struct wscons_event {
#define WSCONS_EVENT_MOUSE_ABSOLUTE_Y 9 /* Y location */ #define WSCONS_EVENT_MOUSE_ABSOLUTE_Y 9 /* Y location */
#define WSCONS_EVENT_MOUSE_DELTA_Z 10 /* Z delta amount */ #define WSCONS_EVENT_MOUSE_DELTA_Z 10 /* Z delta amount */
#define WSCONS_EVENT_MOUSE_ABSOLUTE_Z 11 /* Z location */ #define WSCONS_EVENT_MOUSE_ABSOLUTE_Z 11 /* Z location */
#define WSCONS_EVENT_SCREEN_SWITCH 12 /* New screen number */
#define WSCONS_EVENT_ASCII 13 /* key code is already ascii */
#define WSCONS_EVENT_MOUSE_DELTA_W 14 /* W delta amount */
#define WSCONS_EVENT_MOUSE_ABSOLUTE_W 15 /* W location */
/* /*
...@@ -77,27 +85,40 @@ struct wscons_event { ...@@ -77,27 +85,40 @@ struct wscons_event {
/* Get keyboard type. */ /* Get keyboard type. */
#define WSKBDIO_GTYPE _IOR('W', 0, u_int) #define WSKBDIO_GTYPE _IOR('W', 0, u_int)
#define WSKBD_TYPE_LK201 1 /* lk-201 */ #define WSKBD_TYPE_LK201 1 /* lk-201 */
#define WSKBD_TYPE_LK401 2 /* lk-401 */ #define WSKBD_TYPE_LK401 2 /* lk-401 */
#define WSKBD_TYPE_PC_XT 3 /* PC-ish, XT scancode */ #define WSKBD_TYPE_PC_XT 3 /* PC-ish, XT scancode */
#define WSKBD_TYPE_PC_AT 4 /* PC-ish, AT scancode */ #define WSKBD_TYPE_PC_AT 4 /* PC-ish, AT scancode */
#define WSKBD_TYPE_USB 5 /* USB, XT scancode */ #define WSKBD_TYPE_USB 5 /* USB, XT scancode */
#define WSKBD_TYPE_NEXT 6 /* NeXT keyboard */ #define WSKBD_TYPE_NEXT 6 /* NeXT keyboard */
#define WSKBD_TYPE_HPC_KBD 7 /* HPC bultin keyboard */ #define WSKBD_TYPE_HPC_KBD 7 /* HPC bultin keyboard */
#define WSKBD_TYPE_HPC_BTN 8 /* HPC/PsPC buttons */ #define WSKBD_TYPE_HPC_BTN 8 /* HPC/PsPC buttons */
#define WSKBD_TYPE_ARCHIMEDES 9 /* Archimedes keyboard */ #define WSKBD_TYPE_ARCHIMEDES 9 /* Archimedes keyboard */
#define WSKBD_TYPE_RISCPC 10 /* RiscPC keyboard, resembling AT codes */
#define WSKBD_TYPE_ADB 11 /* ADB */
#define WSKBD_TYPE_HIL 12 /* HIL keyboard */
#define WSKBD_TYPE_AMIGA 13 /* Amiga keyboard */
#define WSKBD_TYPE_MAPLE 14 /* Dreamcast Maple keyboard */
#define WSKBD_TYPE_ATARI 15 /* Atari keyboard */
#define WSKBD_TYPE_SUN 16 /* Sun Type3/4 */
#define WSKBD_TYPE_SUN5 17 /* Sun Type5 */
#define WSKBD_TYPE_SGI 18 /* SGI keyboard */
#define WSKBD_TYPE_MATRIXKP 19 /* Matrix keypads/buttons */
#define WSKBD_TYPE_EWS4800 20 /* NEC EWS4800 */
#define WSKBD_TYPE_BLUETOOTH 21 /* Bluetooth keyboard */
#define WSKBD_TYPE_ZAURUS 22 /* Sharp Zaurus keyboard */
/* Manipulate the keyboard bell. */ /* Manipulate the keyboard bell. */
struct wskbd_bell_data { struct wskbd_bell_data {
u_int which; /* values to get/set */ u_int which; /* values to get/set */
#define WSKBD_BELL_DOPITCH 0x1 /* get/set pitch */
#define WSKBD_BELL_DOPERIOD 0x2 /* get/set period */
#define WSKBD_BELL_DOVOLUME 0x4 /* get/set volume */
#define WSKBD_BELL_DOALL 0x7 /* all of the above */
u_int pitch; /* pitch, in Hz */ u_int pitch; /* pitch, in Hz */
u_int period; /* period, in milliseconds */ u_int period; /* period, in milliseconds */
u_int volume; /* percentage of max volume */ u_int volume; /* percentage of max volume */
}; };
#define WSKBD_BELL_DOPITCH 0x1 /* get/set pitch */
#define WSKBD_BELL_DOPERIOD 0x2 /* get/set period */
#define WSKBD_BELL_DOVOLUME 0x4 /* get/set volume */
#define WSKBD_BELL_DOALL 0x7 /* all of the above */
#define WSKBDIO_BELL _IO('W', 1) #define WSKBDIO_BELL _IO('W', 1)
#define WSKBDIO_COMPLEXBELL _IOW('W', 2, struct wskbd_bell_data) #define WSKBDIO_COMPLEXBELL _IOW('W', 2, struct wskbd_bell_data)
...@@ -109,25 +130,23 @@ struct wskbd_bell_data { ...@@ -109,25 +130,23 @@ struct wskbd_bell_data {
/* Manipulate the emulation key repeat settings. */ /* Manipulate the emulation key repeat settings. */
struct wskbd_keyrepeat_data { struct wskbd_keyrepeat_data {
u_int which; /* values to get/set */ u_int which; /* values to get/set */
#define WSKBD_KEYREPEAT_DODEL1 0x1 /* get/set del1 */
#define WSKBD_KEYREPEAT_DODELN 0x2 /* get/set delN */
#define WSKBD_KEYREPEAT_DOALL 0x3 /* all of the above */
u_int del1; /* delay before first, ms */ u_int del1; /* delay before first, ms */
u_int delN; /* delay before rest, ms */ u_int delN; /* delay before rest, ms */
}; };
#define WSKBD_KEYREPEAT_DODEL1 0x1 /* get/set del1 */
#define WSKBD_KEYREPEAT_DODELN 0x2 /* get/set delN */
#define WSKBD_KEYREPEAT_DOALL 0x3 /* all of the above */
#define WSKBDIO_SETKEYREPEAT _IOW('W', 7, struct wskbd_keyrepeat_data) #define WSKBDIO_SETKEYREPEAT _IOW('W', 7, struct wskbd_keyrepeat_data)
#define WSKBDIO_GETKEYREPEAT _IOR('W', 8, struct wskbd_keyrepeat_data) #define WSKBDIO_GETKEYREPEAT _IOR('W', 8, struct wskbd_keyrepeat_data)
#define WSKBDIO_SETDEFAULTKEYREPEAT \ #define WSKBDIO_SETDEFAULTKEYREPEAT _IOW('W', 9, struct wskbd_keyrepeat_data)
_IOW('W', 9, struct wskbd_keyrepeat_data) #define WSKBDIO_GETDEFAULTKEYREPEAT _IOR('W', 10, struct wskbd_keyrepeat_data)
#define WSKBDIO_GETDEFAULTKEYREPEAT \
_IOR('W', 10, struct wskbd_keyrepeat_data)
/* Get/set keyboard leds */ /* Get/set keyboard leds */
#define WSKBD_LED_CAPS 0x01 #define WSKBD_LED_CAPS 0x01
#define WSKBD_LED_NUM 0x02 #define WSKBD_LED_NUM 0x02
#define WSKBD_LED_SCROLL 0x04 #define WSKBD_LED_SCROLL 0x04
#define WSKBD_LED_COMPOSE 0x08 #define WSKBD_LED_COMPOSE 0x08
#define WSKBDIO_SETLEDS _IOW('W', 11, int) #define WSKBDIO_SETLEDS _IOW('W', 11, int)
#define WSKBDIO_GETLEDS _IOR('W', 12, int) #define WSKBDIO_GETLEDS _IOR('W', 12, int)
...@@ -135,18 +154,41 @@ struct wskbd_keyrepeat_data { ...@@ -135,18 +154,41 @@ struct wskbd_keyrepeat_data {
/* Manipulate keysym groups. */ /* Manipulate keysym groups. */
struct wskbd_map_data { struct wskbd_map_data {
u_int maplen; /* number of entries in map */ u_int maplen; /* number of entries in map */
#define WSKBDIO_MAXMAPLEN 65536
struct wscons_keymap *map; /* map to get or set */ struct wscons_keymap *map; /* map to get or set */
}; };
#define WSKBDIO_GETMAP _IOWR('W', 13, struct wskbd_map_data) #define WSKBDIO_GETMAP _IOWR('W', 13, struct wskbd_map_data)
#define WSKBDIO_SETMAP _IOW('W', 14, struct wskbd_map_data) #define WSKBDIO_SETMAP _IOW('W', 14, struct wskbd_map_data)
#define WSKBDIO_GETENCODING _IOR('W', 15, kbd_t) #define WSKBDIO_GETENCODING _IOR('W', 15, kbd_t)
#define WSKBDIO_SETENCODING _IOW('W', 16, kbd_t) #define WSKBDIO_SETENCODING _IOW('W', 16, kbd_t)
/* internal use only */ /* internal use only */
#define WSKBDIO_SETMODE _IOW('W', 19, int) #define WSKBDIO_SETMODE _IOW('W', 19, int)
#define WSKBDIO_GETMODE _IOR('W', 20, int) #define WSKBDIO_GETMODE _IOR('W', 20, int)
#define WSKBD_TRANSLATED 0 #define WSKBD_TRANSLATED 0
#define WSKBD_RAW 1 #define WSKBD_RAW 1
#define WSKBDIO_SETKEYCLICK _IOW('W', 21, int)
#define WSKBDIO_GETKEYCLICK _IOR('W', 22, int)
/* Manipulate the scrolling modifiers and mode */
struct wskbd_scroll_data {
u_int which;
#define WSKBD_SCROLL_DOMODIFIER 0x01
#define WSKBD_SCROLL_DOMODE 0x02
#define WSKBD_SCROLL_DOALL 0x03
u_int mode;
#define WSKBD_SCROLL_MODE_NORMAL 0x00
#define WSKBD_SCROLL_MODE_HOLD 0x01
u_int modifier;
};
#define WSKBDIO_GETSCROLL _IOR('W', 23, struct wskbd_scroll_data)
#define WSKBDIO_SETSCROLL _IOW('W', 24, struct wskbd_scroll_data)
/* Set event struct version */
#define WSKBDIO_SETVERSION _IOW('W', 25, int)
#define WSKBDIO_EVENT_VERSION WSEVENT_VERSION
/* /*
* Mouse ioctls (32 - 63) * Mouse ioctls (32 - 63)
...@@ -154,33 +196,41 @@ struct wskbd_map_data { ...@@ -154,33 +196,41 @@ struct wskbd_map_data {
/* Get mouse type */ /* Get mouse type */
#define WSMOUSEIO_GTYPE _IOR('W', 32, u_int) #define WSMOUSEIO_GTYPE _IOR('W', 32, u_int)
#define WSMOUSE_TYPE_VSXXX 1 /* DEC serial */ #define WSMOUSE_TYPE_VSXXX 1 /* DEC serial */
#define WSMOUSE_TYPE_PS2 2 /* PS/2-compatible */ #define WSMOUSE_TYPE_PS2 2 /* PS/2-compatible */
#define WSMOUSE_TYPE_USB 3 /* USB mouse */ #define WSMOUSE_TYPE_USB 3 /* USB mouse */
#define WSMOUSE_TYPE_LMS 4 /* Logitech busmouse */ #define WSMOUSE_TYPE_LMS 4 /* Logitech busmouse */
#define WSMOUSE_TYPE_MMS 5 /* Microsoft InPort mouse */ #define WSMOUSE_TYPE_MMS 5 /* Microsoft InPort mouse */
#define WSMOUSE_TYPE_TPANEL 6 /* Generic Touch Panel */ #define WSMOUSE_TYPE_TPANEL 6 /* Generic Touch Panel */
#define WSMOUSE_TYPE_NEXT 7 /* NeXT mouse */ #define WSMOUSE_TYPE_NEXT 7 /* NeXT mouse */
#define WSMOUSE_TYPE_ARCHIMEDES 8 /* Archimedes mouse */ #define WSMOUSE_TYPE_ARCHIMEDES 8 /* Archimedes mouse */
#define WSMOUSE_TYPE_HIL 9 /* HIL mouse */
#define WSMOUSE_TYPE_AMIGA 10 /* Amiga mouse */
#define WSMOUSE_TYPE_MAXINE 11 /* DEC maxine mouse */
#define WSMOUSE_TYPE_MAPLE 12 /* Dreamcast Maple mouse */
#define WSMOUSE_TYPE_SGI 13 /* SGI mouse */
#define WSMOUSE_TYPE_BLUETOOTH 14 /* Bluetooth mouse */
#define WSMOUSE_TYPE_ADB 15 /* ADB mouse or touchpad */
#define WSMOUSE_TYPE_PSEUDO 16 /* not actually a mouse */
/* Set resolution. Not applicable to all mouse types. */ /* Set resolution. Not applicable to all mouse types. */
#define WSMOUSEIO_SRES _IOR('W', 33, u_int) #define WSMOUSEIO_SRES _IOW('W', 33, u_int)
#define WSMOUSE_RES_MIN 0 #define WSMOUSE_RES_MIN 0
#define WSMOUSE_RES_DEFAULT 75 #define WSMOUSE_RES_DEFAULT 75
#define WSMOUSE_RES_MAX 100 #define WSMOUSE_RES_MAX 100
/* Set scale factor (num / den). Not applicable to all mouse types. */ /* Set scale factor (num / den). Not applicable to all mouse types. */
#define WSMOUSEIO_SSCALE _IOR('W', 34, u_int[2]) #define WSMOUSEIO_SSCALE _IOW('W', 34, u_int[2])
/* Set sample rate. Not applicable to all mouse types. */ /* Set sample rate. Not applicable to all mouse types. */
#define WSMOUSEIO_SRATE _IOR('W', 35, u_int) #define WSMOUSEIO_SRATE _IOW('W', 35, u_int)
#define WSMOUSE_RATE_MIN 0 #define WSMOUSE_RATE_MIN 0
#define WSMOUSE_RATE_DEFAULT 50 #define WSMOUSE_RATE_DEFAULT 50
#define WSMOUSE_RATE_MAX 100 #define WSMOUSE_RATE_MAX 100
/* Set/get sample coordinates for calibration */ /* Set/get sample coordinates for calibration */
#define WSMOUSE_CALIBCOORDS_MAX 16 #define WSMOUSE_CALIBCOORDS_MAX 16
#define WSMOUSE_CALIBCOORDS_RESET -1 #define WSMOUSE_CALIBCOORDS_RESET -1
struct wsmouse_calibcoords { struct wsmouse_calibcoords {
int minx, miny; /* minimum value of X/Y */ int minx, miny; /* minimum value of X/Y */
int maxx, maxy; /* maximum value of X/Y */ int maxx, maxy; /* maximum value of X/Y */
...@@ -194,36 +244,86 @@ struct wsmouse_calibcoords { ...@@ -194,36 +244,86 @@ struct wsmouse_calibcoords {
#define WSMOUSEIO_SCALIBCOORDS _IOW('W', 36, struct wsmouse_calibcoords) #define WSMOUSEIO_SCALIBCOORDS _IOW('W', 36, struct wsmouse_calibcoords)
#define WSMOUSEIO_GCALIBCOORDS _IOR('W', 37, struct wsmouse_calibcoords) #define WSMOUSEIO_GCALIBCOORDS _IOR('W', 37, struct wsmouse_calibcoords)
/* get device id for calibration */
struct wsmouse_id {
u_int type;
#define WSMOUSE_ID_TYPE_UIDSTR 0 /* ID string (null terminated) */
u_int length;
#define WSMOUSE_ID_MAXLEN 256
u_char data[WSMOUSE_ID_MAXLEN];
};
#define WSMOUSEIO_GETID _IOWR('W', 38, struct wsmouse_id)
/* Get/set button repeating. */
struct wsmouse_repeat {
unsigned long wr_buttons;
unsigned int wr_delay_first;
unsigned int wr_delay_decrement;
unsigned int wr_delay_minimum;
};
#define WSMOUSEIO_GETREPEAT _IOR('W', 39, struct wsmouse_repeat)
#define WSMOUSEIO_SETREPEAT _IOW('W', 40, struct wsmouse_repeat)
#define WSMOUSEIO_SETVERSION _IOW('W', 41, int)
#define WSMOUSE_EVENT_VERSION WSEVENT_VERSION
/* /*
* Display ioctls (64 - 95) * Display ioctls (64 - 95)
*/ */
/* Get display type */ /* Get display type */
#define WSDISPLAYIO_GTYPE _IOR('W', 64, u_int) #define WSDISPLAYIO_GTYPE _IOR('W', 64, u_int)
#define WSDISPLAY_TYPE_UNKNOWN 0 /* unknown */ #define WSDISPLAY_TYPE_UNKNOWN 0 /* unknown */
#define WSDISPLAY_TYPE_PM_MONO 1 /* DEC [23]100 mono */ #define WSDISPLAY_TYPE_PM_MONO 1 /* DEC [23]100 mono */
#define WSDISPLAY_TYPE_PM_COLOR 2 /* DEC [23]100 color */ #define WSDISPLAY_TYPE_PM_COLOR 2 /* DEC [23]100 color */
#define WSDISPLAY_TYPE_CFB 3 /* DEC TC CFB (CX) */ #define WSDISPLAY_TYPE_CFB 3 /* DEC TC CFB (CX) */
#define WSDISPLAY_TYPE_XCFB 4 /* DEC `maxine' onboard fb */ #define WSDISPLAY_TYPE_XCFB 4 /* DEC `maxine' onboard fb */
#define WSDISPLAY_TYPE_MFB 5 /* DEC TC MFB (MX) */ #define WSDISPLAY_TYPE_MFB 5 /* DEC TC MFB (MX) */
#define WSDISPLAY_TYPE_SFB 6 /* DEC TC SFB (HX) */ #define WSDISPLAY_TYPE_SFB 6 /* DEC TC SFB (HX) */
#define WSDISPLAY_TYPE_ISAVGA 7 /* (generic) ISA VGA */ #define WSDISPLAY_TYPE_ISAVGA 7 /* (generic) ISA VGA */
#define WSDISPLAY_TYPE_PCIVGA 8 /* (generic) PCI VGA */ #define WSDISPLAY_TYPE_PCIVGA 8 /* (generic) PCI VGA */
#define WSDISPLAY_TYPE_TGA 9 /* DEC PCI TGA */ #define WSDISPLAY_TYPE_TGA 9 /* DEC PCI TGA */
#define WSDISPLAY_TYPE_SFBP 10 /* DEC TC SFB+ (HX+) */ #define WSDISPLAY_TYPE_SFBP 10 /* DEC TC SFB+ (HX+) */
#define WSDISPLAY_TYPE_PCIMISC 11 /* (generic) PCI misc. disp. */ #define WSDISPLAY_TYPE_PCIMISC 11 /* (generic) PCI misc. disp. */
#define WSDISPLAY_TYPE_NEXTMONO 12 /* NeXT mono display */ #define WSDISPLAY_TYPE_NEXTMONO 12 /* NeXT mono display */
#define WSDISPLAY_TYPE_PX 13 /* DEC TC PX */ #define WSDISPLAY_TYPE_PX 13 /* DEC TC PX */
#define WSDISPLAY_TYPE_PXG 14 /* DEC TC PXG */ #define WSDISPLAY_TYPE_PXG 14 /* DEC TC PXG */
#define WSDISPLAY_TYPE_TX 15 /* DEC TC TX */ #define WSDISPLAY_TYPE_TX 15 /* DEC TC TX */
#define WSDISPLAY_TYPE_HPCFB 16 /* Handheld/PalmSize PC */ #define WSDISPLAY_TYPE_HPCFB 16 /* Handheld/PalmSize PC */
#define WSDISPLAY_TYPE_VIDC 17 /* Acorn/ARM VIDC */ #define WSDISPLAY_TYPE_VIDC 17 /* Acorn/ARM VIDC */
#define WSDISPLAY_TYPE_SPX 18 /* DEC SPX (VS3100/VS4000) */ #define WSDISPLAY_TYPE_SPX 18 /* DEC SPX (VS3100/VS4000) */
#define WSDISPLAY_TYPE_GPX 19 /* DEC GPX (uVAX/VS2K/VS3100 */ #define WSDISPLAY_TYPE_GPX 19 /* DEC GPX (uVAX/VS2K/VS3100 */
#define WSDISPLAY_TYPE_LCG 20 /* DEC LCG (VS4000) */ #define WSDISPLAY_TYPE_LCG 20 /* DEC LCG (VS4000) */
#define WSDISPLAY_TYPE_VAX_MONO 21 /* DEC VS2K/VS3100 mono */ #define WSDISPLAY_TYPE_VAX_MONO 21 /* DEC VS2K/VS3100 mono */
#define WSDISPLAY_TYPE_SB_P9100 22 /* Tadpole SPARCbook P9100 */ #define WSDISPLAY_TYPE_SB_P9100 22 /* Tadpole SPARCbook P9100 */
#define WSDISPLAY_TYPE_EGA 23 /* (generic) EGA */ #define WSDISPLAY_TYPE_EGA 23 /* (generic) EGA */
#define WSDISPLAY_TYPE_DCPVR 24 /* Dreamcast PowerVR */
#define WSDISPLAY_TYPE_GATOR 25 /* HP Gator */
#define WSDISPLAY_TYPE_TOPCAT 26 /* HP TopCat */
#define WSDISPLAY_TYPE_RENAISSANCE 27 /* HP Renaissance */
#define WSDISPLAY_TYPE_CATSEYE 28 /* HP CatsEye */
#define WSDISPLAY_TYPE_DAVINCI 29 /* HP DaVinci */
#define WSDISPLAY_TYPE_TIGER 30 /* HP Tiger */
#define WSDISPLAY_TYPE_HYPERION 31 /* HP Hyperion */
#define WSDISPLAY_TYPE_AMIGACC 32 /* Amiga custom chips */
#define WSDISPLAY_TYPE_SUN24 33 /* Sun 24 bit framebuffers */
#define WSDISPLAY_TYPE_NEWPORT 34 /* SGI Newport */
#define WSDISPLAY_TYPE_GR2 35 /* SGI GR2 */
#define WSDISPLAY_TYPE_SUNCG12 36 /* Sun cgtwelve */
#define WSDISPLAY_TYPE_SUNCG14 37 /* Sun cgfourteen */
#define WSDISPLAY_TYPE_SUNTCX 38 /* Sun TCX */
#define WSDISPLAY_TYPE_SUNFFB 39 /* Sun creator FFB */
#define WSDISPLAY_TYPE_STI 40 /* HP STI framebuffers */
#define WSDISPLAY_TYPE_HDLCD 41 /* Hitachi HD44780 based LCDs */
#define WSDISPLAY_TYPE_VESA 42 /* VESA BIOS framebuffer */
#define WSDISPLAY_TYPE_XILFB 43 /* Xilinx TFT cores */
#define WSDISPLAY_TYPE_LIGHT 44 /* SGI Light (a.k.a. Entry/Starter) */
#define WSDISPLAY_TYPE_GENFB 45 /* generic nondescript framebuffer */
#define WSDISPLAY_TYPE_CRIME 46 /* SGI O2 */
#define WSDISPLAY_TYPE_PXALCD 47 /* PXA2x0 LCD controller */
#define WSDISPLAY_TYPE_AG10 48 /* Fujitsu AG-10e */
#define WSDISPLAY_TYPE_DL 49 /* DisplayLink DL-1x0/DL-1x5 */
#define WSDISPLAY_TYPE_XVR1000 50 /* Sun XVR-1000 */
/* Basic display information. Not applicable to all display types. */ /* Basic display information. Not applicable to all display types. */
struct wsdisplay_fbinfo { struct wsdisplay_fbinfo {
...@@ -242,14 +342,14 @@ struct wsdisplay_cmap { ...@@ -242,14 +342,14 @@ struct wsdisplay_cmap {
u_char *green; /* green color map elements */ u_char *green; /* green color map elements */
u_char *blue; /* blue color map elements */ u_char *blue; /* blue color map elements */
}; };
#define WSDISPLAYIO_GETCMAP _IOW('W', 66, struct wsdisplay_cmap) #define WSDISPLAYIO_GETCMAP _IOW('W', 66, struct wsdisplay_cmap)
#define WSDISPLAYIO_PUTCMAP _IOW('W', 67, struct wsdisplay_cmap) #define WSDISPLAYIO_PUTCMAP _IOW('W', 67, struct wsdisplay_cmap)
/* Video control. Not applicable to all display types. */ /* Video control. Not applicable to all display types. */
#define WSDISPLAYIO_GVIDEO _IOR('W', 68, u_int) #define WSDISPLAYIO_GVIDEO _IOR('W', 68, u_int)
#define WSDISPLAYIO_SVIDEO _IOW('W', 69, u_int) #define WSDISPLAYIO_SVIDEO _IOW('W', 69, u_int)
#define WSDISPLAYIO_VIDEO_OFF 0 /* video off */ #define WSDISPLAYIO_VIDEO_OFF 0 /* video off */
#define WSDISPLAYIO_VIDEO_ON 1 /* video on */ #define WSDISPLAYIO_VIDEO_ON 1 /* video on */
/* Cursor control. Not applicable to all display types. */ /* Cursor control. Not applicable to all display types. */
struct wsdisplay_curpos { /* cursor "position" */ struct wsdisplay_curpos { /* cursor "position" */
...@@ -258,6 +358,12 @@ struct wsdisplay_curpos { /* cursor "position" */ ...@@ -258,6 +358,12 @@ struct wsdisplay_curpos { /* cursor "position" */
struct wsdisplay_cursor { struct wsdisplay_cursor {
u_int which; /* values to get/set */ u_int which; /* values to get/set */
#define WSDISPLAY_CURSOR_DOCUR 0x01 /* get/set enable */
#define WSDISPLAY_CURSOR_DOPOS 0x02 /* get/set pos */
#define WSDISPLAY_CURSOR_DOHOT 0x04 /* get/set hot spot */
#define WSDISPLAY_CURSOR_DOCMAP 0x08 /* get/set cmap */
#define WSDISPLAY_CURSOR_DOSHAPE 0x10 /* get/set img/mask */
#define WSDISPLAY_CURSOR_DOALL 0x1f /* all of the above */
u_int enable; /* enable/disable */ u_int enable; /* enable/disable */
struct wsdisplay_curpos pos; /* position */ struct wsdisplay_curpos pos; /* position */
struct wsdisplay_curpos hot; /* hot spot */ struct wsdisplay_curpos hot; /* hot spot */
...@@ -266,12 +372,6 @@ struct wsdisplay_cursor { ...@@ -266,12 +372,6 @@ struct wsdisplay_cursor {
u_char *image; /* image data */ u_char *image; /* image data */
u_char *mask; /* mask data */ u_char *mask; /* mask data */
}; };
#define WSDISPLAY_CURSOR_DOCUR 0x01 /* get/set enable */
#define WSDISPLAY_CURSOR_DOPOS 0x02 /* get/set pos */
#define WSDISPLAY_CURSOR_DOHOT 0x04 /* get/set hot spot */
#define WSDISPLAY_CURSOR_DOCMAP 0x08 /* get/set cmap */
#define WSDISPLAY_CURSOR_DOSHAPE 0x10 /* get/set img/mask */
#define WSDISPLAY_CURSOR_DOALL 0x1f /* all of the above */
/* Cursor control: get and set position */ /* Cursor control: get and set position */
#define WSDISPLAYIO_GCURPOS _IOR('W', 70, struct wsdisplay_curpos) #define WSDISPLAYIO_GCURPOS _IOR('W', 70, struct wsdisplay_curpos)
...@@ -287,79 +387,154 @@ struct wsdisplay_cursor { ...@@ -287,79 +387,154 @@ struct wsdisplay_cursor {
/* Display mode: Emulation (text) vs. Mapped (graphics) mode */ /* Display mode: Emulation (text) vs. Mapped (graphics) mode */
#define WSDISPLAYIO_GMODE _IOR('W', 75, u_int) #define WSDISPLAYIO_GMODE _IOR('W', 75, u_int)
#define WSDISPLAYIO_SMODE _IOW('W', 76, u_int) #define WSDISPLAYIO_SMODE _IOW('W', 76, u_int)
#define WSDISPLAYIO_MODE_EMUL 0 /* emulation (text) mode */ #define WSDISPLAYIO_MODE_EMUL 0 /* emulation (text) mode */
#define WSDISPLAYIO_MODE_MAPPED 1 /* mapped (graphics) mode */ #define WSDISPLAYIO_MODE_MAPPED 1 /* mapped (graphics) mode */
#define WSDISPLAYIO_MODE_DUMBFB 2 /* mapped (graphics) fb mode */
/* /*
* XXX WARNING * XXX WARNING
* XXX The following definitions are very preliminary and are likely * XXX The following wsdisplay definitions are very preliminary and are likely
* XXX to be changed without care about backwards compatibility! * XXX to be changed without care about backwards compatibility!
*/ */
struct wsdisplay_font { struct wsdisplay_font {
char *name; const char *name;
int firstchar, numchars; int firstchar, numchars;
int encoding; int encoding;
#define WSDISPLAY_FONTENC_ISO 0 #define WSDISPLAY_FONTENC_ISO 0
#define WSDISPLAY_FONTENC_IBM 1 #define WSDISPLAY_FONTENC_IBM 1
#define WSDISPLAY_FONTENC_PCVT 2 #define WSDISPLAY_FONTENC_PCVT 2
int fontwidth, fontheight, stride; #define WSDISPLAY_FONTENC_ISO7 3 /* greek */
#define WSDISPLAY_FONTENC_ISO2 4 /* east european */
u_int fontwidth, fontheight, stride;
#define WSDISPLAY_MAXFONTSZ (512*1024)
int bitorder, byteorder; int bitorder, byteorder;
#define WSDISPLAY_FONTORDER_KNOWN 0 /* i.e, no need to convert */ #define WSDISPLAY_FONTORDER_KNOWN 0 /* i.e, no need to convert */
#define WSDISPLAY_FONTORDER_L2R 1 #define WSDISPLAY_FONTORDER_L2R 1
#define WSDISPLAY_FONTORDER_R2L 2 #define WSDISPLAY_FONTORDER_R2L 2
void *data; void *data;
}; };
#define WSDISPLAYIO_LDFONT _IOW('W', 77, struct wsdisplay_font) #define WSDISPLAYIO_LDFONT _IOW('W', 77, struct wsdisplay_font)
struct wsdisplay_addscreendata { struct wsdisplay_addscreendata {
int idx; /* screen index */ int idx; /* screen index */
char *screentype; char *screentype;
char *emul; char *emul;
}; };
#define WSDISPLAYIO_ADDSCREEN _IOW('W', 78, struct wsdisplay_addscreendata) #define WSDISPLAYIO_ADDSCREEN _IOW('W', 78, struct wsdisplay_addscreendata)
struct wsdisplay_delscreendata { struct wsdisplay_delscreendata {
int idx; /* screen index */ int idx; /* screen index */
int flags; int flags;
#define WSDISPLAY_DELSCR_FORCE 1 #define WSDISPLAY_DELSCR_FORCE 1
}; };
#define WSDISPLAYIO_DELSCREEN _IOW('W', 79, struct wsdisplay_delscreendata) #define WSDISPLAYIO_DELSCREEN _IOW('W', 79, struct wsdisplay_delscreendata)
struct wsdisplay_usefontdata { struct wsdisplay_usefontdata {
char *name; char *name;
}; };
#define WSDISPLAYIO_USEFONT _IOW('W', 80, struct wsdisplay_usefontdata) #define WSDISPLAYIO_SFONT _IOW('W', 80, struct wsdisplay_usefontdata)
/* Replaced by WSMUX_{ADD,REMOVE}_DEVICE */ /* Obsolete, replaced by WSMUXIO_{ADD,REMOVE}_DEVICE */
struct wsdisplay_kbddata { struct wsdisplay_kbddata {
int op; int op;
#define _O_WSDISPLAY_KBD_ADD 0 #define _O_WSDISPLAY_KBD_ADD 0
#define _O_WSDISPLAY_KBD_DEL 1 #define _O_WSDISPLAY_KBD_DEL 1
int idx; int idx;
}; };
#define _O_WSDISPLAYIO_SETKEYBOARD _IOWR('W', 81, struct wsdisplay_kbddata) #define _O_WSDISPLAYIO_SETKEYBOARD _IOWR('W', 81, struct wsdisplay_kbddata)
/* Misc control. Not applicable to all display types. */
struct wsdisplay_param {
int param;
#define WSDISPLAYIO_PARAM_BACKLIGHT 1
#define WSDISPLAYIO_PARAM_BRIGHTNESS 2
#define WSDISPLAYIO_PARAM_CONTRAST 3
int min, max, curval;
int reserved[4];
};
#define WSDISPLAYIO_GETPARAM _IOWR('W', 82, struct wsdisplay_param)
#define WSDISPLAYIO_SETPARAM _IOWR('W', 83, struct wsdisplay_param)
#define WSDISPLAYIO_GETACTIVESCREEN _IOR('W', 84, int)
/* Character functions */
struct wsdisplay_char {
int row, col;
uint16_t letter;
uint8_t background, foreground;
char flags;
#define WSDISPLAY_CHAR_BRIGHT 1
#define WSDISPLAY_CHAR_BLINK 2
};
#define WSDISPLAYIO_GETWSCHAR _IOWR('W', 85, struct wsdisplay_char)
#define WSDISPLAYIO_PUTWSCHAR _IOWR('W', 86, struct wsdisplay_char)
/* Manipulate the scrolling values (how many lines to scroll) */
struct wsdisplay_scroll_data {
u_int which;
#define WSDISPLAY_SCROLL_DOFASTLINES 0x01
#define WSDISPLAY_SCROLL_DOSLOWLINES 0x02
#define WSDISPLAY_SCROLL_DOALL 0x03
u_int fastlines;
u_int slowlines;
};
#define WSDISPLAYIO_DGSCROLL _IOR('W', 87, struct wsdisplay_scroll_data)
#define WSDISPLAYIO_DSSCROLL _IOW('W', 88, struct wsdisplay_scroll_data)
struct wsdisplay_msgattrs {
int default_attrs, default_bg, default_fg;
int kernel_attrs, kernel_bg, kernel_fg;
};
#define WSDISPLAYIO_GMSGATTRS _IOR('W', 89, struct wsdisplay_msgattrs)
#define WSDISPLAYIO_SMSGATTRS _IOW('W', 90, struct wsdisplay_msgattrs)
#define WSDISPLAYIO_GBORDER _IOR('W', 91, int)
#define WSDISPLAYIO_SBORDER _IOW('W', 92, int)
/* Splash screen control */
#define WSDISPLAYIO_SSPLASH _IOW('W', 93, int)
#define WSDISPLAYIO_SPROGRESS _IOW('W', 94, int)
/* XXX NOT YET DEFINED */ /* XXX NOT YET DEFINED */
/* Mapping information retrieval. */ /* Mapping information retrieval. */
/* Mux ioctls (96 - 127) */ /* Display information: number of bytes per row, may be same as pixels */
#define WSMUX_INJECTEVENT _IOW('W', 96, struct wscons_event) #define WSDISPLAYIO_LINEBYTES _IOR('W', 95, u_int)
/* WSMUXIO_OINJECTEVENT was 96, but does not conflict because arg sizes */
#define WSDISPLAYIO_SETVERSION _IOW('W', 96, int)
#define WSDISPLAYIO_EVENT_VERSION WSEVENT_VERSION
/*
* Mux ioctls (97 - 127)
*/
struct wsmux_device { struct wsmux_device {
int type; int type;
#define WSMUX_MOUSE 1 #define WSMUX_MOUSE 1
#define WSMUX_KBD 2 #define WSMUX_KBD 2
#define WSMUX_MUX 3 #define WSMUX_MUX 3
int idx; int idx;
}; };
#define WSMUX_ADD_DEVICE _IOW('W', 97, struct wsmux_device) #define WSMUXIO_ADD_DEVICE _IOW('W', 97, struct wsmux_device)
#define WSMUX_REMOVE_DEVICE _IOW('W', 98, struct wsmux_device) #define WSMUX_ADD_DEVICE WSMUXIO_ADD_DEVICE /* XXX compat */
#define WSMUXIO_REMOVE_DEVICE _IOW('W', 98, struct wsmux_device)
#define WSMUX_REMOVE_DEVICE WSMUXIO_REMOVE_DEVICE /* XXX compat */
#define WSMUX_MAXDEV 32 #define WSMUX_MAXDEV 32
struct wsmux_device_list { struct wsmux_device_list {
int ndevices; int ndevices;
struct wsmux_device devices[WSMUX_MAXDEV]; struct wsmux_device devices[WSMUX_MAXDEV];
}; };
#define WSMUX_LIST_DEVICES _IOWR('W', 99, struct wsmux_device_list) #define WSMUXIO_LIST_DEVICES _IOWR('W', 99, struct wsmux_device_list)
#define WSMUX_LIST_DEVICES WSMUXIO_LIST_DEVICES /* XXX compat */
#define WSMUXIO_INJECTEVENT _IOW('W', 100, struct wscons_event)
#define WSMUX_INJECTEVENT WSMUXIO_INJECTEVENT /* XXX compat */
#endif /* _DEV_WSCONS_WSCONSIO_H_ */ #endif /* _DEV_WSCONS_WSCONSIO_H_ */
/* $NetBSD: wsmousevar.h,v 1.4 2000/01/08 02:57:24 takemura Exp $ */ /* $NetBSD: wsmousevar.h,v 1.11 2009/05/12 14:47:55 cegger Exp $ */
/* /*
* Copyright (c) 1996, 1997 Christopher G. Demetriou. All rights reserved. * Copyright (c) 1996, 1997 Christopher G. Demetriou. All rights reserved.
...@@ -41,10 +41,9 @@ ...@@ -41,10 +41,9 @@
* with these functions, which is passed to them when they are invoked. * with these functions, which is passed to them when they are invoked.
*/ */
struct wsmouse_accessops { struct wsmouse_accessops {
int (*enable) __P((void *)); int (*enable)(void *);
int (*ioctl) __P((void *v, u_long cmd, caddr_t data, int flag, int (*ioctl)(void *, u_long, void *, int, struct lwp *);
struct proc *p)); void (*disable)(void *);
void (*disable) __P((void *));
}; };
/* /*
...@@ -56,14 +55,16 @@ struct wsmousedev_attach_args { ...@@ -56,14 +55,16 @@ struct wsmousedev_attach_args {
void *accesscookie; /* access cookie */ void *accesscookie; /* access cookie */
}; };
//#include "locators.h" #ifndef __riscos
#include "locators.h"
//#define wsmousedevcf_mux cf_loc[WSMOUSEDEVCF_MUX] #define wsmousedevcf_mux cf_loc[WSMOUSEDEVCF_MUX]
#endif
/* /*
* Autoconfiguration helper functions. * Autoconfiguration helper functions.
*/ */
int wsmousedevprint __P((void *, const char *)); int wsmousedevprint(void *, const char *);
/* /*
* Callbacks from the mouse driver to the wsmouse interface driver. * Callbacks from the mouse driver to the wsmouse interface driver.
...@@ -72,5 +73,7 @@ int wsmousedevprint __P((void *, const char *)); ...@@ -72,5 +73,7 @@ int wsmousedevprint __P((void *, const char *));
#define WSMOUSE_INPUT_ABSOLUTE_X (1<<0) #define WSMOUSE_INPUT_ABSOLUTE_X (1<<0)
#define WSMOUSE_INPUT_ABSOLUTE_Y (1<<1) #define WSMOUSE_INPUT_ABSOLUTE_Y (1<<1)
#define WSMOUSE_INPUT_ABSOLUTE_Z (1<<2) #define WSMOUSE_INPUT_ABSOLUTE_Z (1<<2)
void wsmouse_input __P((struct device *kbddev, u_int btns, #define WSMOUSE_INPUT_ABSOLUTE_W (1<<3)
int x, int y, int z, u_int flags)); #ifndef __riscos
void wsmouse_input(device_t, u_int, int, int, int, int, u_int);
#endif