mos7720.c (c69263c66e5b2a5d0c7e5a41c189b1846ae1de92) mos7720.c (4d2a7aff1062048ea59214b49ca1d915586d6d6d)
1/*
2 * mos7720.c
3 * Controls the Moschip 7720 usb to dual port serial convertor
4 *
5 * Copyright 2006 Moschip Semiconductor Tech. Ltd.
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

--- 2155 unchanged lines hidden (view full) ---

2164 kfree(usb_get_serial_port_data(serial->port[i]));
2165}
2166
2167static struct usb_driver usb_driver = {
2168 .name = "moschip7720",
2169 .probe = usb_serial_probe,
2170 .disconnect = usb_serial_disconnect,
2171 .id_table = moschip_port_id_table,
1/*
2 * mos7720.c
3 * Controls the Moschip 7720 usb to dual port serial convertor
4 *
5 * Copyright 2006 Moschip Semiconductor Tech. Ltd.
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

--- 2155 unchanged lines hidden (view full) ---

2164 kfree(usb_get_serial_port_data(serial->port[i]));
2165}
2166
2167static struct usb_driver usb_driver = {
2168 .name = "moschip7720",
2169 .probe = usb_serial_probe,
2170 .disconnect = usb_serial_disconnect,
2171 .id_table = moschip_port_id_table,
2172 .no_dynamic_id = 1,
2173};
2174
2175static struct usb_serial_driver moschip7720_2port_driver = {
2176 .driver = {
2177 .owner = THIS_MODULE,
2178 .name = "moschip7720",
2179 },
2180 .description = "Moschip 2 port adapter",
2172};
2173
2174static struct usb_serial_driver moschip7720_2port_driver = {
2175 .driver = {
2176 .owner = THIS_MODULE,
2177 .name = "moschip7720",
2178 },
2179 .description = "Moschip 2 port adapter",
2181 .usb_driver = &usb_driver,
2182 .id_table = moschip_port_id_table,
2183 .calc_num_ports = mos77xx_calc_num_ports,
2184 .open = mos7720_open,
2185 .close = mos7720_close,
2186 .throttle = mos7720_throttle,
2187 .unthrottle = mos7720_unthrottle,
2188 .probe = mos77xx_probe,
2189 .attach = mos7720_startup,

--- 6 unchanged lines hidden (view full) ---

2196 .write = mos7720_write,
2197 .write_room = mos7720_write_room,
2198 .chars_in_buffer = mos7720_chars_in_buffer,
2199 .break_ctl = mos7720_break,
2200 .read_bulk_callback = mos7720_bulk_in_callback,
2201 .read_int_callback = NULL /* dynamically assigned in probe() */
2202};
2203
2180 .id_table = moschip_port_id_table,
2181 .calc_num_ports = mos77xx_calc_num_ports,
2182 .open = mos7720_open,
2183 .close = mos7720_close,
2184 .throttle = mos7720_throttle,
2185 .unthrottle = mos7720_unthrottle,
2186 .probe = mos77xx_probe,
2187 .attach = mos7720_startup,

--- 6 unchanged lines hidden (view full) ---

2194 .write = mos7720_write,
2195 .write_room = mos7720_write_room,
2196 .chars_in_buffer = mos7720_chars_in_buffer,
2197 .break_ctl = mos7720_break,
2198 .read_bulk_callback = mos7720_bulk_in_callback,
2199 .read_int_callback = NULL /* dynamically assigned in probe() */
2200};
2201
2202static struct usb_serial_driver * const serial_drivers[] = {
2203 &moschip7720_2port_driver, NULL
2204};
2205
2204static int __init moschip7720_init(void)
2205{
2206 int retval;
2207
2208 dbg("%s: Entering ..........", __func__);
2209
2206static int __init moschip7720_init(void)
2207{
2208 int retval;
2209
2210 dbg("%s: Entering ..........", __func__);
2211
2210 /* Register with the usb serial */
2211 retval = usb_serial_register(&moschip7720_2port_driver);
2212 if (retval)
2213 goto failed_port_device_register;
2214
2215 printk(KERN_INFO KBUILD_MODNAME ": " DRIVER_VERSION ":"
2216 DRIVER_DESC "\n");
2217
2218 /* Register with the usb */
2219 retval = usb_register(&usb_driver);
2220 if (retval)
2221 goto failed_usb_register;
2222
2223 return 0;
2224
2225failed_usb_register:
2226 usb_serial_deregister(&moschip7720_2port_driver);
2227
2228failed_port_device_register:
2212 retval = usb_serial_register_drivers(&usb_driver, serial_drivers);
2213 if (retval == 0)
2214 printk(KERN_INFO KBUILD_MODNAME ": " DRIVER_VERSION ":"
2215 DRIVER_DESC "\n");
2229 return retval;
2230}
2231
2232static void __exit moschip7720_exit(void)
2233{
2216 return retval;
2217}
2218
2219static void __exit moschip7720_exit(void)
2220{
2234 usb_deregister(&usb_driver);
2235 usb_serial_deregister(&moschip7720_2port_driver);
2221 usb_serial_deregister_drivers(&usb_driver, serial_drivers);
2236}
2237
2238module_init(moschip7720_init);
2239module_exit(moschip7720_exit);
2240
2241/* Module information */
2242MODULE_AUTHOR(DRIVER_AUTHOR);
2243MODULE_DESCRIPTION(DRIVER_DESC);
2244MODULE_LICENSE("GPL");
2245
2246module_param(debug, bool, S_IRUGO | S_IWUSR);
2247MODULE_PARM_DESC(debug, "Debug enabled or not");
2222}
2223
2224module_init(moschip7720_init);
2225module_exit(moschip7720_exit);
2226
2227/* Module information */
2228MODULE_AUTHOR(DRIVER_AUTHOR);
2229MODULE_DESCRIPTION(DRIVER_DESC);
2230MODULE_LICENSE("GPL");
2231
2232module_param(debug, bool, S_IRUGO | S_IWUSR);
2233MODULE_PARM_DESC(debug, "Debug enabled or not");