11da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/* 21da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * IO Edgeport Driver tables 31da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * 41da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * Copyright (C) 2001 51da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * Greg Kroah-Hartman (greg@kroah.com) 61da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * 71da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * This program is free software; you can redistribute it and/or modify 81da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * it under the terms of the GNU General Public License as published by 91da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * the Free Software Foundation; either version 2 of the License, or 101da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * (at your option) any later version. 1103f0dbf74c7a117c270e63d62d5e4927af6f295bAlan Cox * 121da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds */ 131da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 141da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#ifndef IO_TABLES_H 151da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define IO_TABLES_H 161da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 177d40d7e85a25e01948bcb4dc3eda1355af318337Németh Mártonstatic const struct usb_device_id edgeport_2port_id_table[] = { 181da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_2) }, 191da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_2I) }, 201da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_421) }, 211da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_21) }, 221da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_2_DIN) }, 231da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { } 241da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds}; 251da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 267d40d7e85a25e01948bcb4dc3eda1355af318337Németh Mártonstatic const struct usb_device_id edgeport_4port_id_table[] = { 271da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_4) }, 281da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_RAPIDPORT_4) }, 291da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_4T) }, 301da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_MT4X56USB) }, 311da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_4I) }, 321da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_8_DUAL_CPU) }, 331da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_4_DIN) }, 341da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_22I) }, 351da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_412_4) }, 361da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_COMPATIBLE) }, 371da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { } 381da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds}; 391da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 407d40d7e85a25e01948bcb4dc3eda1355af318337Németh Mártonstatic const struct usb_device_id edgeport_8port_id_table[] = { 411da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_8) }, 421da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_16_DUAL_CPU) }, 431da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_8I) }, 441da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_8R) }, 451da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_8RR) }, 461da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_412_8) }, 471da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { } 481da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds}; 491da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 507d40d7e85a25e01948bcb4dc3eda1355af318337Németh Mártonstatic const struct usb_device_id Epic_port_id_table[] = { 516e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman { USB_DEVICE(USB_VENDOR_ID_NCR, NCR_DEVICE_ID_EPIC_0202) }, 526e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman { USB_DEVICE(USB_VENDOR_ID_NCR, NCR_DEVICE_ID_EPIC_0203) }, 536e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman { USB_DEVICE(USB_VENDOR_ID_NCR, NCR_DEVICE_ID_EPIC_0310) }, 546e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman { USB_DEVICE(USB_VENDOR_ID_NCR, NCR_DEVICE_ID_EPIC_0311) }, 556e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman { USB_DEVICE(USB_VENDOR_ID_NCR, NCR_DEVICE_ID_EPIC_0312) }, 566e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman { USB_DEVICE(USB_VENDOR_ID_AXIOHM, AXIOHM_DEVICE_ID_EPIC_A758) }, 576e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman { USB_DEVICE(USB_VENDOR_ID_AXIOHM, AXIOHM_DEVICE_ID_EPIC_A794) }, 586e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman { USB_DEVICE(USB_VENDOR_ID_AXIOHM, AXIOHM_DEVICE_ID_EPIC_A225) }, 596e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman { } 606e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman}; 616e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman 621da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/* Devices that this driver supports */ 637d40d7e85a25e01948bcb4dc3eda1355af318337Németh Mártonstatic const struct usb_device_id id_table_combined[] = { 641da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_4) }, 651da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_RAPIDPORT_4) }, 661da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_4T) }, 671da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_MT4X56USB) }, 681da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_2) }, 691da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_4I) }, 701da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_2I) }, 711da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_421) }, 721da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_21) }, 731da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_8_DUAL_CPU) }, 741da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_8) }, 751da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_2_DIN) }, 761da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_4_DIN) }, 771da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_16_DUAL_CPU) }, 781da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_22I) }, 791da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_412_4) }, 801da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_COMPATIBLE) }, 811da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_8I) }, 821da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_8R) }, 831da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_8RR) }, 841da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_412_8) }, 856e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman { USB_DEVICE(USB_VENDOR_ID_NCR, NCR_DEVICE_ID_EPIC_0202) }, 866e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman { USB_DEVICE(USB_VENDOR_ID_NCR, NCR_DEVICE_ID_EPIC_0203) }, 876e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman { USB_DEVICE(USB_VENDOR_ID_NCR, NCR_DEVICE_ID_EPIC_0310) }, 886e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman { USB_DEVICE(USB_VENDOR_ID_NCR, NCR_DEVICE_ID_EPIC_0311) }, 896e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman { USB_DEVICE(USB_VENDOR_ID_NCR, NCR_DEVICE_ID_EPIC_0312) }, 906e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman { USB_DEVICE(USB_VENDOR_ID_AXIOHM, AXIOHM_DEVICE_ID_EPIC_A758) }, 916e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman { USB_DEVICE(USB_VENDOR_ID_AXIOHM, AXIOHM_DEVICE_ID_EPIC_A794) }, 926e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman { USB_DEVICE(USB_VENDOR_ID_AXIOHM, AXIOHM_DEVICE_ID_EPIC_A225) }, 9303f0dbf74c7a117c270e63d62d5e4927af6f295bAlan Cox { } /* Terminating entry */ 941da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds}; 951da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 9603f0dbf74c7a117c270e63d62d5e4927af6f295bAlan CoxMODULE_DEVICE_TABLE(usb, id_table_combined); 971da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 98d9b1b787736852f462dbf277b3ca708cbbf693aeJohannes Hölzlstatic struct usb_driver io_driver = { 99d9b1b787736852f462dbf277b3ca708cbbf693aeJohannes Hölzl .name = "io_edgeport", 100d9b1b787736852f462dbf277b3ca708cbbf693aeJohannes Hölzl .probe = usb_serial_probe, 101d9b1b787736852f462dbf277b3ca708cbbf693aeJohannes Hölzl .disconnect = usb_serial_disconnect, 102d9b1b787736852f462dbf277b3ca708cbbf693aeJohannes Hölzl .id_table = id_table_combined, 103d9b1b787736852f462dbf277b3ca708cbbf693aeJohannes Hölzl}; 104d9b1b787736852f462dbf277b3ca708cbbf693aeJohannes Hölzl 105ea65370d025f5005649e5cb37c4d025e92c6fc38Greg Kroah-Hartmanstatic struct usb_serial_driver edgeport_2port_device = { 10618fcac353fdc7cd072b0d24c8667042e675a4c11Greg Kroah-Hartman .driver = { 10718fcac353fdc7cd072b0d24c8667042e675a4c11Greg Kroah-Hartman .owner = THIS_MODULE, 108269bda1c123c7caf88e1deb2264f9086f0344192Greg Kroah-Hartman .name = "edgeport_2", 10918fcac353fdc7cd072b0d24c8667042e675a4c11Greg Kroah-Hartman }, 110269bda1c123c7caf88e1deb2264f9086f0344192Greg Kroah-Hartman .description = "Edgeport 2 port adapter", 1111da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .id_table = edgeport_2port_id_table, 1121da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .num_ports = 2, 1131da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .open = edge_open, 1141da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .close = edge_close, 1151da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .throttle = edge_throttle, 1161da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .unthrottle = edge_unthrottle, 1171da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .attach = edge_startup, 118f9c99bb8b3a1ec81af68d484a551307326c2e933Alan Stern .disconnect = edge_disconnect, 119f9c99bb8b3a1ec81af68d484a551307326c2e933Alan Stern .release = edge_release, 1201da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .ioctl = edge_ioctl, 1211da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .set_termios = edge_set_termios, 1221da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .tiocmget = edge_tiocmget, 1231da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .tiocmset = edge_tiocmset, 1240bca1b913affbd7e2fdaffee62a499659a466eb5Alan Cox .get_icount = edge_get_icount, 1251da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .write = edge_write, 1261da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .write_room = edge_write_room, 1271da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .chars_in_buffer = edge_chars_in_buffer, 1281da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .break_ctl = edge_break, 1291da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .read_int_callback = edge_interrupt_callback, 1301da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .read_bulk_callback = edge_bulk_in_callback, 1311da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .write_bulk_callback = edge_bulk_out_data_callback, 1321da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds}; 1331da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 134ea65370d025f5005649e5cb37c4d025e92c6fc38Greg Kroah-Hartmanstatic struct usb_serial_driver edgeport_4port_device = { 13518fcac353fdc7cd072b0d24c8667042e675a4c11Greg Kroah-Hartman .driver = { 13618fcac353fdc7cd072b0d24c8667042e675a4c11Greg Kroah-Hartman .owner = THIS_MODULE, 137269bda1c123c7caf88e1deb2264f9086f0344192Greg Kroah-Hartman .name = "edgeport_4", 13818fcac353fdc7cd072b0d24c8667042e675a4c11Greg Kroah-Hartman }, 139269bda1c123c7caf88e1deb2264f9086f0344192Greg Kroah-Hartman .description = "Edgeport 4 port adapter", 1401da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .id_table = edgeport_4port_id_table, 1411da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .num_ports = 4, 1421da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .open = edge_open, 1431da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .close = edge_close, 1441da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .throttle = edge_throttle, 1451da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .unthrottle = edge_unthrottle, 1461da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .attach = edge_startup, 147f9c99bb8b3a1ec81af68d484a551307326c2e933Alan Stern .disconnect = edge_disconnect, 148f9c99bb8b3a1ec81af68d484a551307326c2e933Alan Stern .release = edge_release, 1491da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .ioctl = edge_ioctl, 1501da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .set_termios = edge_set_termios, 1511da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .tiocmget = edge_tiocmget, 1521da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .tiocmset = edge_tiocmset, 1530bca1b913affbd7e2fdaffee62a499659a466eb5Alan Cox .get_icount = edge_get_icount, 1541da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .write = edge_write, 1551da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .write_room = edge_write_room, 1561da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .chars_in_buffer = edge_chars_in_buffer, 1571da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .break_ctl = edge_break, 1581da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .read_int_callback = edge_interrupt_callback, 1591da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .read_bulk_callback = edge_bulk_in_callback, 1601da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .write_bulk_callback = edge_bulk_out_data_callback, 1611da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds}; 1621da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 163ea65370d025f5005649e5cb37c4d025e92c6fc38Greg Kroah-Hartmanstatic struct usb_serial_driver edgeport_8port_device = { 16418fcac353fdc7cd072b0d24c8667042e675a4c11Greg Kroah-Hartman .driver = { 16518fcac353fdc7cd072b0d24c8667042e675a4c11Greg Kroah-Hartman .owner = THIS_MODULE, 166269bda1c123c7caf88e1deb2264f9086f0344192Greg Kroah-Hartman .name = "edgeport_8", 16718fcac353fdc7cd072b0d24c8667042e675a4c11Greg Kroah-Hartman }, 168269bda1c123c7caf88e1deb2264f9086f0344192Greg Kroah-Hartman .description = "Edgeport 8 port adapter", 1691da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .id_table = edgeport_8port_id_table, 1701da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .num_ports = 8, 1711da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .open = edge_open, 1721da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .close = edge_close, 1731da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .throttle = edge_throttle, 1741da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .unthrottle = edge_unthrottle, 1751da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .attach = edge_startup, 176f9c99bb8b3a1ec81af68d484a551307326c2e933Alan Stern .disconnect = edge_disconnect, 177f9c99bb8b3a1ec81af68d484a551307326c2e933Alan Stern .release = edge_release, 1781da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .ioctl = edge_ioctl, 1791da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .set_termios = edge_set_termios, 1801da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .tiocmget = edge_tiocmget, 1811da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .tiocmset = edge_tiocmset, 1820bca1b913affbd7e2fdaffee62a499659a466eb5Alan Cox .get_icount = edge_get_icount, 1831da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .write = edge_write, 1841da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .write_room = edge_write_room, 1851da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .chars_in_buffer = edge_chars_in_buffer, 1861da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .break_ctl = edge_break, 1871da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .read_int_callback = edge_interrupt_callback, 1881da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .read_bulk_callback = edge_bulk_in_callback, 1891da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds .write_bulk_callback = edge_bulk_out_data_callback, 1901da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds}; 1911da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 1926e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartmanstatic struct usb_serial_driver epic_device = { 1936e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman .driver = { 1946e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman .owner = THIS_MODULE, 1956e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman .name = "epic", 1966e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman }, 1976e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman .description = "EPiC device", 1986e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman .id_table = Epic_port_id_table, 1996e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman .num_ports = 1, 2006e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman .open = edge_open, 2016e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman .close = edge_close, 2026e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman .throttle = edge_throttle, 2036e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman .unthrottle = edge_unthrottle, 2046e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman .attach = edge_startup, 205f9c99bb8b3a1ec81af68d484a551307326c2e933Alan Stern .disconnect = edge_disconnect, 206f9c99bb8b3a1ec81af68d484a551307326c2e933Alan Stern .release = edge_release, 2076e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman .ioctl = edge_ioctl, 2086e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman .set_termios = edge_set_termios, 2096e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman .tiocmget = edge_tiocmget, 2106e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman .tiocmset = edge_tiocmset, 2110bca1b913affbd7e2fdaffee62a499659a466eb5Alan Cox .get_icount = edge_get_icount, 2126e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman .write = edge_write, 2136e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman .write_room = edge_write_room, 2146e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman .chars_in_buffer = edge_chars_in_buffer, 2156e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman .break_ctl = edge_break, 2166e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman .read_int_callback = edge_interrupt_callback, 2176e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman .read_bulk_callback = edge_bulk_in_callback, 2186e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman .write_bulk_callback = edge_bulk_out_data_callback, 2196e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman}; 2206e8cf7751f9fb913095d6142d068f41fbf0424bbGreg Kroah-Hartman 2217dbe2460989b10644651e779b17b683627feea48Alan Sternstatic struct usb_serial_driver * const serial_drivers[] = { 2227dbe2460989b10644651e779b17b683627feea48Alan Stern &edgeport_2port_device, &edgeport_4port_device, 2237dbe2460989b10644651e779b17b683627feea48Alan Stern &edgeport_8port_device, &epic_device, NULL 2247dbe2460989b10644651e779b17b683627feea48Alan Stern}; 2257dbe2460989b10644651e779b17b683627feea48Alan Stern 2261da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#endif 2271da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 228