2 * IO Edgeport Driver tables
5 * Greg Kroah-Hartman (greg@kroah.com)
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2 of the License, or
10 * (at your option) any later version.
17 static struct usb_device_id edgeport_2port_id_table
[] = {
18 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_2
) },
19 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_2I
) },
20 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_421
) },
21 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_21
) },
22 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_2_DIN
) },
26 static struct usb_device_id edgeport_4port_id_table
[] = {
27 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_4
) },
28 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_RAPIDPORT_4
) },
29 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_4T
) },
30 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_MT4X56USB
) },
31 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_4I
) },
32 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_8_DUAL_CPU
) },
33 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_4_DIN
) },
34 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_22I
) },
35 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_412_4
) },
36 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_COMPATIBLE
) },
40 static struct usb_device_id edgeport_8port_id_table
[] = {
41 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_8
) },
42 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_16_DUAL_CPU
) },
43 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_8I
) },
44 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_8R
) },
45 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_8RR
) },
46 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_412_8
) },
50 /* Devices that this driver supports */
51 static struct usb_device_id id_table_combined
[] = {
52 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_4
) },
53 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_RAPIDPORT_4
) },
54 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_4T
) },
55 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_MT4X56USB
) },
56 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_2
) },
57 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_4I
) },
58 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_2I
) },
59 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_421
) },
60 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_21
) },
61 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_8_DUAL_CPU
) },
62 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_8
) },
63 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_2_DIN
) },
64 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_4_DIN
) },
65 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_16_DUAL_CPU
) },
66 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_22I
) },
67 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_412_4
) },
68 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_COMPATIBLE
) },
69 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_8I
) },
70 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_8R
) },
71 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_8RR
) },
72 { USB_DEVICE(USB_VENDOR_ID_ION
, ION_DEVICE_ID_EDGEPORT_412_8
) },
73 { } /* Terminating entry */
76 MODULE_DEVICE_TABLE (usb
, id_table_combined
);
78 static struct usb_serial_device_type edgeport_2port_device
= {
80 .name
= "Edgeport 2 port adapter",
81 .short_name
= "edgeport_2",
82 .id_table
= edgeport_2port_id_table
,
83 .num_interrupt_in
= 1,
89 .throttle
= edge_throttle
,
90 .unthrottle
= edge_unthrottle
,
91 .attach
= edge_startup
,
92 .shutdown
= edge_shutdown
,
94 .set_termios
= edge_set_termios
,
95 .tiocmget
= edge_tiocmget
,
96 .tiocmset
= edge_tiocmset
,
98 .write_room
= edge_write_room
,
99 .chars_in_buffer
= edge_chars_in_buffer
,
100 .break_ctl
= edge_break
,
103 static struct usb_serial_device_type edgeport_4port_device
= {
104 .owner
= THIS_MODULE
,
105 .name
= "Edgeport 4 port adapter",
106 .short_name
= "edgeport_4",
107 .id_table
= edgeport_4port_id_table
,
108 .num_interrupt_in
= 1,
114 .throttle
= edge_throttle
,
115 .unthrottle
= edge_unthrottle
,
116 .attach
= edge_startup
,
117 .shutdown
= edge_shutdown
,
119 .set_termios
= edge_set_termios
,
120 .tiocmget
= edge_tiocmget
,
121 .tiocmset
= edge_tiocmset
,
123 .write_room
= edge_write_room
,
124 .chars_in_buffer
= edge_chars_in_buffer
,
125 .break_ctl
= edge_break
,
128 static struct usb_serial_device_type edgeport_8port_device
= {
129 .owner
= THIS_MODULE
,
130 .name
= "Edgeport 8 port adapter",
131 .short_name
= "edgeport_8",
132 .id_table
= edgeport_8port_id_table
,
133 .num_interrupt_in
= 1,
139 .throttle
= edge_throttle
,
140 .unthrottle
= edge_unthrottle
,
141 .attach
= edge_startup
,
142 .shutdown
= edge_shutdown
,
144 .set_termios
= edge_set_termios
,
145 .tiocmget
= edge_tiocmget
,
146 .tiocmset
= edge_tiocmset
,
148 .write_room
= edge_write_room
,
149 .chars_in_buffer
= edge_chars_in_buffer
,
150 .break_ctl
= edge_break
,