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 v2.6.17-rc6 67 lines 1.6 kB view raw
1/* 2 * AirPrime CDMA Wireless Serial USB driver 3 * 4 * Copyright (C) 2005 Greg Kroah-Hartman <gregkh@suse.de> 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 "usb-serial.h" 17 18static struct usb_device_id id_table [] = { 19 { USB_DEVICE(0xf3d, 0x0112) }, /* AirPrime CDMA Wireless PC Card */ 20 { USB_DEVICE(0x1410, 0x1110) }, /* Novatel Wireless Merlin CDMA */ 21 { USB_DEVICE(0x1199, 0x0112) }, /* Sierra Wireless Aircard 580 */ 22 { }, 23}; 24MODULE_DEVICE_TABLE(usb, id_table); 25 26static struct usb_driver airprime_driver = { 27 .name = "airprime", 28 .probe = usb_serial_probe, 29 .disconnect = usb_serial_disconnect, 30 .id_table = id_table, 31 .no_dynamic_id = 1, 32}; 33 34static struct usb_serial_driver airprime_device = { 35 .driver = { 36 .owner = THIS_MODULE, 37 .name = "airprime", 38 }, 39 .id_table = id_table, 40 .num_interrupt_in = NUM_DONT_CARE, 41 .num_bulk_in = NUM_DONT_CARE, 42 .num_bulk_out = NUM_DONT_CARE, 43 .num_ports = 1, 44}; 45 46static int __init airprime_init(void) 47{ 48 int retval; 49 50 retval = usb_serial_register(&airprime_device); 51 if (retval) 52 return retval; 53 retval = usb_register(&airprime_driver); 54 if (retval) 55 usb_serial_deregister(&airprime_device); 56 return retval; 57} 58 59static void __exit airprime_exit(void) 60{ 61 usb_deregister(&airprime_driver); 62 usb_serial_deregister(&airprime_device); 63} 64 65module_init(airprime_init); 66module_exit(airprime_exit); 67MODULE_LICENSE("GPL");