Linux Audio

Check our new training course

Loading...
Note: File does not exist in v6.8.
  1/*
  2 * IO Edgeport Driver tables
  3 *
  4 *	Copyright (C) 2001
  5 *	    Greg Kroah-Hartman (greg@kroah.com)
  6 *
  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.
 11 *
 12 */
 13
 14#ifndef IO_TABLES_H
 15#define IO_TABLES_H
 16
 17static const 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) },
 23	{ }
 24};
 25
 26static const 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) },
 37	{ }
 38};
 39
 40static const 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) },
 47	{ }
 48};
 49
 50static const struct usb_device_id Epic_port_id_table[] = {
 51	{ USB_DEVICE(USB_VENDOR_ID_NCR, NCR_DEVICE_ID_EPIC_0202) },
 52	{ USB_DEVICE(USB_VENDOR_ID_NCR, NCR_DEVICE_ID_EPIC_0203) },
 53	{ USB_DEVICE(USB_VENDOR_ID_NCR, NCR_DEVICE_ID_EPIC_0310) },
 54	{ USB_DEVICE(USB_VENDOR_ID_NCR, NCR_DEVICE_ID_EPIC_0311) },
 55	{ USB_DEVICE(USB_VENDOR_ID_NCR, NCR_DEVICE_ID_EPIC_0312) },
 56	{ USB_DEVICE(USB_VENDOR_ID_AXIOHM, AXIOHM_DEVICE_ID_EPIC_A758) },
 57	{ USB_DEVICE(USB_VENDOR_ID_AXIOHM, AXIOHM_DEVICE_ID_EPIC_A794) },
 58	{ USB_DEVICE(USB_VENDOR_ID_AXIOHM, AXIOHM_DEVICE_ID_EPIC_A225) },
 59	{ }
 60};
 61
 62/* Devices that this driver supports */
 63static const struct usb_device_id id_table_combined[] = {
 64	{ USB_DEVICE(USB_VENDOR_ID_ION,	ION_DEVICE_ID_EDGEPORT_4) },
 65	{ USB_DEVICE(USB_VENDOR_ID_ION,	ION_DEVICE_ID_RAPIDPORT_4) },
 66	{ USB_DEVICE(USB_VENDOR_ID_ION,	ION_DEVICE_ID_EDGEPORT_4T) },
 67	{ USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_MT4X56USB) },
 68	{ USB_DEVICE(USB_VENDOR_ID_ION,	ION_DEVICE_ID_EDGEPORT_2) },
 69	{ USB_DEVICE(USB_VENDOR_ID_ION,	ION_DEVICE_ID_EDGEPORT_4I) },
 70	{ USB_DEVICE(USB_VENDOR_ID_ION,	ION_DEVICE_ID_EDGEPORT_2I) },
 71	{ USB_DEVICE(USB_VENDOR_ID_ION,	ION_DEVICE_ID_EDGEPORT_421) },
 72	{ USB_DEVICE(USB_VENDOR_ID_ION,	ION_DEVICE_ID_EDGEPORT_21) },
 73	{ USB_DEVICE(USB_VENDOR_ID_ION,	ION_DEVICE_ID_EDGEPORT_8_DUAL_CPU) },
 74	{ USB_DEVICE(USB_VENDOR_ID_ION,	ION_DEVICE_ID_EDGEPORT_8) },
 75	{ USB_DEVICE(USB_VENDOR_ID_ION,	ION_DEVICE_ID_EDGEPORT_2_DIN) },
 76	{ USB_DEVICE(USB_VENDOR_ID_ION,	ION_DEVICE_ID_EDGEPORT_4_DIN) },
 77	{ USB_DEVICE(USB_VENDOR_ID_ION,	ION_DEVICE_ID_EDGEPORT_16_DUAL_CPU) },
 78	{ USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_22I) },
 79	{ USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_412_4) },
 80	{ USB_DEVICE(USB_VENDOR_ID_ION,	ION_DEVICE_ID_EDGEPORT_COMPATIBLE) },
 81	{ USB_DEVICE(USB_VENDOR_ID_ION,	ION_DEVICE_ID_EDGEPORT_8I) },
 82	{ USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_8R) },
 83	{ USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_8RR) },
 84	{ USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_412_8) },
 85	{ USB_DEVICE(USB_VENDOR_ID_NCR, NCR_DEVICE_ID_EPIC_0202) },
 86	{ USB_DEVICE(USB_VENDOR_ID_NCR, NCR_DEVICE_ID_EPIC_0203) },
 87	{ USB_DEVICE(USB_VENDOR_ID_NCR, NCR_DEVICE_ID_EPIC_0310) },
 88	{ USB_DEVICE(USB_VENDOR_ID_NCR, NCR_DEVICE_ID_EPIC_0311) },
 89	{ USB_DEVICE(USB_VENDOR_ID_NCR, NCR_DEVICE_ID_EPIC_0312) },
 90	{ USB_DEVICE(USB_VENDOR_ID_AXIOHM, AXIOHM_DEVICE_ID_EPIC_A758) },
 91	{ USB_DEVICE(USB_VENDOR_ID_AXIOHM, AXIOHM_DEVICE_ID_EPIC_A794) },
 92	{ USB_DEVICE(USB_VENDOR_ID_AXIOHM, AXIOHM_DEVICE_ID_EPIC_A225) },
 93	{ } /* Terminating entry */
 94};
 95
 96MODULE_DEVICE_TABLE(usb, id_table_combined);
 97
 98static struct usb_serial_driver edgeport_2port_device = {
 99	.driver = {
100		.owner		= THIS_MODULE,
101		.name		= "edgeport_2",
102	},
103	.description		= "Edgeport 2 port adapter",
104	.id_table		= edgeport_2port_id_table,
105	.num_ports		= 2,
106	.open			= edge_open,
107	.close			= edge_close,
108	.throttle		= edge_throttle,
109	.unthrottle		= edge_unthrottle,
110	.attach			= edge_startup,
111	.disconnect		= edge_disconnect,
112	.release		= edge_release,
113	.port_probe		= edge_port_probe,
114	.port_remove		= edge_port_remove,
115	.ioctl			= edge_ioctl,
116	.set_termios		= edge_set_termios,
117	.tiocmget		= edge_tiocmget,
118	.tiocmset		= edge_tiocmset,
119	.tiocmiwait		= usb_serial_generic_tiocmiwait,
120	.get_icount		= usb_serial_generic_get_icount,
121	.write			= edge_write,
122	.write_room		= edge_write_room,
123	.chars_in_buffer	= edge_chars_in_buffer,
124	.break_ctl		= edge_break,
125	.read_int_callback	= edge_interrupt_callback,
126	.read_bulk_callback	= edge_bulk_in_callback,
127	.write_bulk_callback	= edge_bulk_out_data_callback,
128};
129
130static struct usb_serial_driver edgeport_4port_device = {
131	.driver = {
132		.owner		= THIS_MODULE,
133		.name		= "edgeport_4",
134	},
135	.description		= "Edgeport 4 port adapter",
136	.id_table		= edgeport_4port_id_table,
137	.num_ports		= 4,
138	.open			= edge_open,
139	.close			= edge_close,
140	.throttle		= edge_throttle,
141	.unthrottle		= edge_unthrottle,
142	.attach			= edge_startup,
143	.disconnect		= edge_disconnect,
144	.release		= edge_release,
145	.port_probe		= edge_port_probe,
146	.port_remove		= edge_port_remove,
147	.ioctl			= edge_ioctl,
148	.set_termios		= edge_set_termios,
149	.tiocmget		= edge_tiocmget,
150	.tiocmset		= edge_tiocmset,
151	.tiocmiwait		= usb_serial_generic_tiocmiwait,
152	.get_icount		= usb_serial_generic_get_icount,
153	.write			= edge_write,
154	.write_room		= edge_write_room,
155	.chars_in_buffer	= edge_chars_in_buffer,
156	.break_ctl		= edge_break,
157	.read_int_callback	= edge_interrupt_callback,
158	.read_bulk_callback	= edge_bulk_in_callback,
159	.write_bulk_callback	= edge_bulk_out_data_callback,
160};
161
162static struct usb_serial_driver edgeport_8port_device = {
163	.driver = {
164		.owner		= THIS_MODULE,
165		.name		= "edgeport_8",
166	},
167	.description		= "Edgeport 8 port adapter",
168	.id_table		= edgeport_8port_id_table,
169	.num_ports		= 8,
170	.open			= edge_open,
171	.close			= edge_close,
172	.throttle		= edge_throttle,
173	.unthrottle		= edge_unthrottle,
174	.attach			= edge_startup,
175	.disconnect		= edge_disconnect,
176	.release		= edge_release,
177	.port_probe		= edge_port_probe,
178	.port_remove		= edge_port_remove,
179	.ioctl			= edge_ioctl,
180	.set_termios		= edge_set_termios,
181	.tiocmget		= edge_tiocmget,
182	.tiocmset		= edge_tiocmset,
183	.tiocmiwait		= usb_serial_generic_tiocmiwait,
184	.get_icount		= usb_serial_generic_get_icount,
185	.write			= edge_write,
186	.write_room		= edge_write_room,
187	.chars_in_buffer	= edge_chars_in_buffer,
188	.break_ctl		= edge_break,
189	.read_int_callback	= edge_interrupt_callback,
190	.read_bulk_callback	= edge_bulk_in_callback,
191	.write_bulk_callback	= edge_bulk_out_data_callback,
192};
193
194static struct usb_serial_driver epic_device = {
195	.driver = {
196		.owner		= THIS_MODULE,
197		.name		= "epic",
198	},
199	.description		= "EPiC device",
200	.id_table		= Epic_port_id_table,
201	.num_ports		= 1,
202	.open			= edge_open,
203	.close			= edge_close,
204	.throttle		= edge_throttle,
205	.unthrottle		= edge_unthrottle,
206	.attach			= edge_startup,
207	.disconnect		= edge_disconnect,
208	.release		= edge_release,
209	.port_probe		= edge_port_probe,
210	.port_remove		= edge_port_remove,
211	.ioctl			= edge_ioctl,
212	.set_termios		= edge_set_termios,
213	.tiocmget		= edge_tiocmget,
214	.tiocmset		= edge_tiocmset,
215	.tiocmiwait		= usb_serial_generic_tiocmiwait,
216	.get_icount		= usb_serial_generic_get_icount,
217	.write			= edge_write,
218	.write_room		= edge_write_room,
219	.chars_in_buffer	= edge_chars_in_buffer,
220	.break_ctl		= edge_break,
221	.read_int_callback	= edge_interrupt_callback,
222	.read_bulk_callback	= edge_bulk_in_callback,
223	.write_bulk_callback	= edge_bulk_out_data_callback,
224};
225
226static struct usb_serial_driver * const serial_drivers[] = {
227	&edgeport_2port_device, &edgeport_4port_device,
228	&edgeport_8port_device, &epic_device, NULL
229};
230
231#endif
232