io_tables.h 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163
  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. #ifndef IO_TABLES_H
  14. #define IO_TABLES_H
  15. static struct usb_device_id edgeport_2port_id_table [] = {
  16. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_2) },
  17. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_2I) },
  18. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_421) },
  19. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_21) },
  20. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_2_DIN) },
  21. { }
  22. };
  23. static struct usb_device_id edgeport_4port_id_table [] = {
  24. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_4) },
  25. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_RAPIDPORT_4) },
  26. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_4T) },
  27. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_MT4X56USB) },
  28. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_4I) },
  29. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_8_DUAL_CPU) },
  30. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_4_DIN) },
  31. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_22I) },
  32. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_412_4) },
  33. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_COMPATIBLE) },
  34. { }
  35. };
  36. static struct usb_device_id edgeport_8port_id_table [] = {
  37. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_8) },
  38. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_16_DUAL_CPU) },
  39. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_8I) },
  40. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_8R) },
  41. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_8RR) },
  42. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_412_8) },
  43. { }
  44. };
  45. /* Devices that this driver supports */
  46. static struct usb_device_id id_table_combined [] = {
  47. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_4) },
  48. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_RAPIDPORT_4) },
  49. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_4T) },
  50. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_MT4X56USB) },
  51. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_2) },
  52. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_4I) },
  53. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_2I) },
  54. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_421) },
  55. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_21) },
  56. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_8_DUAL_CPU) },
  57. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_8) },
  58. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_2_DIN) },
  59. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_4_DIN) },
  60. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_16_DUAL_CPU) },
  61. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_22I) },
  62. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_412_4) },
  63. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_COMPATIBLE) },
  64. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_8I) },
  65. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_8R) },
  66. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_8RR) },
  67. { USB_DEVICE(USB_VENDOR_ID_ION, ION_DEVICE_ID_EDGEPORT_412_8) },
  68. { } /* Terminating entry */
  69. };
  70. MODULE_DEVICE_TABLE (usb, id_table_combined);
  71. static struct usb_serial_device_type edgeport_2port_device = {
  72. .owner = THIS_MODULE,
  73. .name = "Edgeport 2 port adapter",
  74. .short_name = "edgeport_2",
  75. .id_table = edgeport_2port_id_table,
  76. .num_interrupt_in = 1,
  77. .num_bulk_in = 1,
  78. .num_bulk_out = 1,
  79. .num_ports = 2,
  80. .open = edge_open,
  81. .close = edge_close,
  82. .throttle = edge_throttle,
  83. .unthrottle = edge_unthrottle,
  84. .attach = edge_startup,
  85. .shutdown = edge_shutdown,
  86. .ioctl = edge_ioctl,
  87. .set_termios = edge_set_termios,
  88. .tiocmget = edge_tiocmget,
  89. .tiocmset = edge_tiocmset,
  90. .write = edge_write,
  91. .write_room = edge_write_room,
  92. .chars_in_buffer = edge_chars_in_buffer,
  93. .break_ctl = edge_break,
  94. .read_int_callback = edge_interrupt_callback,
  95. .read_bulk_callback = edge_bulk_in_callback,
  96. .write_bulk_callback = edge_bulk_out_data_callback,
  97. };
  98. static struct usb_serial_device_type edgeport_4port_device = {
  99. .owner = THIS_MODULE,
  100. .name = "Edgeport 4 port adapter",
  101. .short_name = "edgeport_4",
  102. .id_table = edgeport_4port_id_table,
  103. .num_interrupt_in = 1,
  104. .num_bulk_in = 1,
  105. .num_bulk_out = 1,
  106. .num_ports = 4,
  107. .open = edge_open,
  108. .close = edge_close,
  109. .throttle = edge_throttle,
  110. .unthrottle = edge_unthrottle,
  111. .attach = edge_startup,
  112. .shutdown = edge_shutdown,
  113. .ioctl = edge_ioctl,
  114. .set_termios = edge_set_termios,
  115. .tiocmget = edge_tiocmget,
  116. .tiocmset = edge_tiocmset,
  117. .write = edge_write,
  118. .write_room = edge_write_room,
  119. .chars_in_buffer = edge_chars_in_buffer,
  120. .break_ctl = edge_break,
  121. .read_int_callback = edge_interrupt_callback,
  122. .read_bulk_callback = edge_bulk_in_callback,
  123. .write_bulk_callback = edge_bulk_out_data_callback,
  124. };
  125. static struct usb_serial_device_type edgeport_8port_device = {
  126. .owner = THIS_MODULE,
  127. .name = "Edgeport 8 port adapter",
  128. .short_name = "edgeport_8",
  129. .id_table = edgeport_8port_id_table,
  130. .num_interrupt_in = 1,
  131. .num_bulk_in = 1,
  132. .num_bulk_out = 1,
  133. .num_ports = 8,
  134. .open = edge_open,
  135. .close = edge_close,
  136. .throttle = edge_throttle,
  137. .unthrottle = edge_unthrottle,
  138. .attach = edge_startup,
  139. .shutdown = edge_shutdown,
  140. .ioctl = edge_ioctl,
  141. .set_termios = edge_set_termios,
  142. .tiocmget = edge_tiocmget,
  143. .tiocmset = edge_tiocmset,
  144. .write = edge_write,
  145. .write_room = edge_write_room,
  146. .chars_in_buffer = edge_chars_in_buffer,
  147. .break_ctl = edge_break,
  148. .read_int_callback = edge_interrupt_callback,
  149. .read_bulk_callback = edge_bulk_in_callback,
  150. .write_bulk_callback = edge_bulk_out_data_callback,
  151. };
  152. #endif