Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at v3.2 64 lines 1.4 kB view raw
1/* 2 * ZIO Motherboard USB driver 3 * 4 * Copyright (C) 2010 Zilogic Systems <code@zilogic.com> 5 * 6 * This program is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU General Public License version 8 * 2 as published by the Free Software Foundation. 9 */ 10 11#include <linux/kernel.h> 12#include <linux/init.h> 13#include <linux/tty.h> 14#include <linux/module.h> 15#include <linux/usb.h> 16#include <linux/usb/serial.h> 17#include <linux/uaccess.h> 18 19static const struct usb_device_id id_table[] = { 20 { USB_DEVICE(0x1CBE, 0x0103) }, 21 { }, 22}; 23MODULE_DEVICE_TABLE(usb, id_table); 24 25static struct usb_driver zio_driver = { 26 .name = "zio", 27 .probe = usb_serial_probe, 28 .disconnect = usb_serial_disconnect, 29 .id_table = id_table, 30 .no_dynamic_id = 1, 31}; 32 33static struct usb_serial_driver zio_device = { 34 .driver = { 35 .owner = THIS_MODULE, 36 .name = "zio", 37 }, 38 .id_table = id_table, 39 .usb_driver = &zio_driver, 40 .num_ports = 1, 41}; 42 43static int __init zio_init(void) 44{ 45 int retval; 46 47 retval = usb_serial_register(&zio_device); 48 if (retval) 49 return retval; 50 retval = usb_register(&zio_driver); 51 if (retval) 52 usb_serial_deregister(&zio_device); 53 return retval; 54} 55 56static void __exit zio_exit(void) 57{ 58 usb_deregister(&zio_driver); 59 usb_serial_deregister(&zio_device); 60} 61 62module_init(zio_init); 63module_exit(zio_exit); 64MODULE_LICENSE("GPL");