1/*
2 * Copyright 2011-2012 Haiku, Inc. All rights reserved.
3 * Distributed under the terms of the MIT License.
4 *
5 * Authors:
6 *		Alexander von Gluck IV, kallisti5@unixzen.com
7 */
8#ifndef _USB_OPTION_H_
9#define _USB_OPTION_H_
10
11
12#include "ACM.h"
13
14
15/* supported vendor and product ids */
16#define VENDOR_AIRPLUS		0x1011
17#define VENDOR_ALCATEL		0x1bbb
18#define VENDOR_ALINK		0x1e0e
19#define VENDOR_AMOI			0x1614
20#define VENDOR_ANYDATA		0x16d5
21#define VENDOR_AXESSTEL		0x1726
22#define VENDOR_BANDRICH		0x1A8D
23#define VENDOR_BENQ			0x04a5
24#define VENDOR_CELOT		0x211f
25#define VENDOR_CMOTECH		0x16d8
26#define VENDOR_DELL			0x413C
27#define VENDOR_DLINK		0x1186
28#define VENDOR_HAIER		0x201e
29#define VENDOR_HUAWEI		0x12D1
30#define VENDOR_KYOCERA		0x0c88
31#define VENDOR_LG			0x1004
32#define VENDOR_LONGCHEER	0x1c9e
33#define VENDOR_MEDIATEK		0x0e8d
34#define VENDOR_NOVATEL		0x1410
35#define VENDOR_OLIVETTI		0x0b3c
36#define VENDOR_ONDA			0x1ee8
37#define VENDOR_OPTION		0x0AF0
38#define VENDOR_QISDA		0x1da5
39#define VENDOR_QUALCOMM		0x05C6
40#define VENDOR_SAMSUNG		0x04e8
41#define VENDOR_TELIT		0x1bc7
42#define VENDOR_TLAYTECH		0x20B9
43#define VENDOR_TOSHIBA		0x0930
44#define VENDOR_VIETTEL		0x2262
45#define VENDOR_YISO			0x0EAB
46#define VENDOR_YUGA			0x257A
47#define VENDOR_ZD			0x0685
48#define VENDOR_ZTE			0x19d2
49
50const usb_serial_device kOptionDevices[] = {
51	{VENDOR_CMOTECH, 0x6008, "CMOTECH CDMA Modem"},
52	{VENDOR_CMOTECH, 0x5553, "CMOTECH CDU550"},
53	{VENDOR_CMOTECH, 0x6512, "CMOTECH CDX650"}
54};
55
56
57class OptionDevice : public ACMDevice {
58public:
59							OptionDevice(usb_device device,
60								uint16 vendorID, uint16 productID,
61								const char *description);
62
63	virtual	status_t		AddDevice(const usb_configuration_info *config);
64	virtual	status_t		ResetDevice();
65};
66
67
68#endif /*_USB_OPTION_H_ */
69