⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 keyspan.h

📁 基于S3CEB2410平台LINUX操作系统下 USB驱动源代码
💻 H
📖 第 1 页 / 共 2 页
字号:
/* Eventually, we will not need separate id tables for each USB   ID pattern.  But, for now, it looks like we need slightly different   behavior for each match. */static __devinitdata struct usb_device_id keyspan_usa18x_pre_ids[] = {	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa18x_pre_product_id) },	{ }	/* Terminating entry */};static __devinitdata struct usb_device_id keyspan_usa19_pre_ids[] = {	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa19_pre_product_id) },	{ } /* Terminating entry */};static __devinitdata struct usb_device_id keyspan_usa19w_pre_ids[] = {	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa19w_pre_product_id) },	{ } /* Terminating entry */};static __devinitdata struct usb_device_id keyspan_usa28_pre_ids[] = {	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa28_pre_product_id) },	{ } /* Terminating entry */};static __devinitdata struct usb_device_id keyspan_usa28x_pre_ids[] = {	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa28x_pre_product_id) },	{ } /* Terminating entry */};static __devinitdata struct usb_device_id keyspan_usa28xa_pre_ids[] = {	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa28xa_pre_product_id) },	{ } /* Terminating entry */};static __devinitdata struct usb_device_id keyspan_usa28xb_pre_ids[] = {	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa28xb_pre_product_id) },	{ } /* Terminating entry */};static __devinitdata struct usb_device_id keyspan_usa49w_pre_ids[] = {	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa49w_pre_product_id) },	{ } /* Terminating entry */};static __devinitdata struct usb_device_id keyspan_usa18x_ids[] = {	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa18x_product_id) },	{ } /* Terminating entry */};static __devinitdata struct usb_device_id keyspan_usa19_ids[] = {	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa19_product_id) },	{ } /* Terminating entry */};static __devinitdata struct usb_device_id keyspan_usa19w_ids[] = {	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa19w_product_id) },	{ } /* Terminating entry */};static __devinitdata struct usb_device_id keyspan_usa28_ids[] = {	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa28_product_id) },	{ } /* Terminating entry */};static __devinitdata struct usb_device_id keyspan_usa28x_ids[] = {	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa28x_product_id) },	{ } /* Terminating entry */};static __devinitdata struct usb_device_id keyspan_usa28xa_ids[] = {	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa28xa_product_id) },	{ } /* Terminating entry */};static __devinitdata struct usb_device_id keyspan_usa49w_ids[] = {	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa49w_product_id) },	{ } /* Terminating entry */};    /* Structs for the devices, pre and post renumeration. */static struct usb_serial_device_type keyspan_usa18x_pre_device = {	name:			"Keyspan USA18X - (without firmware)",	id_table:		keyspan_usa18x_pre_ids,	needs_interrupt_in:	DONT_CARE,	needs_bulk_in:		DONT_CARE,	needs_bulk_out:		DONT_CARE,	num_interrupt_in:	NUM_DONT_CARE,	num_bulk_in:		NUM_DONT_CARE,	num_bulk_out:		NUM_DONT_CARE,	num_ports:		1,	startup:		keyspan_fake_startup	};static struct usb_serial_device_type keyspan_usa19_pre_device = {	name:			"Keyspan USA19 - (without firmware)",	id_table:		keyspan_usa19_pre_ids,	needs_interrupt_in:	DONT_CARE,	needs_bulk_in:		DONT_CARE,	needs_bulk_out:		DONT_CARE,	num_interrupt_in:	NUM_DONT_CARE,	num_bulk_in:		NUM_DONT_CARE,	num_bulk_out:		NUM_DONT_CARE,	num_ports:		1,	startup:		keyspan_fake_startup	};static struct usb_serial_device_type keyspan_usa19w_pre_device = {	name:			"Keyspan USA19W - (without firmware)",	id_table:		keyspan_usa19w_pre_ids,	needs_interrupt_in:	DONT_CARE,	needs_bulk_in:		DONT_CARE,	needs_bulk_out:		DONT_CARE,	num_interrupt_in:	NUM_DONT_CARE,	num_bulk_in:		NUM_DONT_CARE,	num_bulk_out:		NUM_DONT_CARE,	num_ports:		1,	startup:		keyspan_fake_startup	};static struct usb_serial_device_type keyspan_usa28_pre_device = {	name:			"Keyspan USA28 - (without firmware)",	id_table:		keyspan_usa28_pre_ids,	needs_interrupt_in:	DONT_CARE,	needs_bulk_in:		DONT_CARE,	needs_bulk_out:		DONT_CARE,	num_interrupt_in:	NUM_DONT_CARE,	num_bulk_in:		NUM_DONT_CARE,	num_bulk_out:		NUM_DONT_CARE,	num_ports:		2,	startup:		keyspan_fake_startup	};static struct usb_serial_device_type keyspan_usa28x_pre_device = {	name:			"Keyspan USA28X - (without firmware)",	id_table:		keyspan_usa28x_pre_ids,	needs_interrupt_in:	DONT_CARE,	needs_bulk_in:		DONT_CARE,	needs_bulk_out:		DONT_CARE,	num_interrupt_in:	NUM_DONT_CARE,	num_bulk_in:		NUM_DONT_CARE,	num_bulk_out:		NUM_DONT_CARE,	num_ports:		2,	startup:		keyspan_fake_startup	};static struct usb_serial_device_type keyspan_usa28xa_pre_device = {	name:			"Keyspan USA28XA - (without firmware)",	id_table:		keyspan_usa28xa_pre_ids,	needs_interrupt_in:	DONT_CARE,	needs_bulk_in:		DONT_CARE,	needs_bulk_out:		DONT_CARE,	num_interrupt_in:	NUM_DONT_CARE,	num_bulk_in:		NUM_DONT_CARE,	num_bulk_out:		NUM_DONT_CARE,	num_ports:		2,	startup:		keyspan_fake_startup	};static struct usb_serial_device_type keyspan_usa28xb_pre_device = {	name:			"Keyspan USA28XB - (without firmware)",	id_table:		keyspan_usa28xb_pre_ids,	needs_interrupt_in:	DONT_CARE,	needs_bulk_in:		DONT_CARE,	needs_bulk_out:		DONT_CARE,	num_interrupt_in:	NUM_DONT_CARE,	num_bulk_in:		NUM_DONT_CARE,	num_bulk_out:		NUM_DONT_CARE,	num_ports:		2,	startup:		keyspan_fake_startup	};static struct usb_serial_device_type keyspan_usa49w_pre_device = {	name:			"Keyspan USA49W - (without firmware)",	id_table:		keyspan_usa49w_pre_ids,	needs_interrupt_in:	DONT_CARE,	needs_bulk_in:		DONT_CARE,	needs_bulk_out:		DONT_CARE,	num_interrupt_in:	NUM_DONT_CARE,	num_bulk_in:		NUM_DONT_CARE,	num_bulk_out:		NUM_DONT_CARE,	num_ports:		4,	startup:		keyspan_fake_startup	};static struct usb_serial_device_type keyspan_usa18x_device = {	name:			"Keyspan USA18X",	id_table:		keyspan_usa18x_ids,	needs_interrupt_in:	DONT_CARE,		needs_bulk_in:		MUST_HAVE,	needs_bulk_out:		MUST_HAVE,	num_interrupt_in:	NUM_DONT_CARE,	num_bulk_in:		3,	num_bulk_out:		4,	num_ports:		1,	open:			keyspan_open,	close:			keyspan_close,	write:			keyspan_write,	write_room:		keyspan_write_room,	//write_bulk_callback: 	Not used - we define our own herbs	//read_int_callback:	keyspan_usa26_read_int_callback,	chars_in_buffer:	keyspan_chars_in_buffer,	throttle:		keyspan_rx_throttle,	unthrottle:		keyspan_rx_unthrottle,	ioctl:			keyspan_ioctl,	set_termios:		keyspan_set_termios,	break_ctl:		keyspan_break_ctl,	startup:		keyspan_startup,	shutdown:		keyspan_shutdown,};static struct usb_serial_device_type keyspan_usa19_device = {	name:			"Keyspan USA19",	id_table:		keyspan_usa19_ids,	needs_interrupt_in:	DONT_CARE,		needs_bulk_in:		MUST_HAVE,	needs_bulk_out:		MUST_HAVE,	num_interrupt_in:	NUM_DONT_CARE,	num_bulk_in:		3,	num_bulk_out:		4,	num_ports:		1,	open:			keyspan_open,	close:			keyspan_close,	write:			keyspan_write,	write_room:		keyspan_write_room,//	write_bulk_callback: 	keyspan_write_bulk_callback,//	read_int_callback:	keyspan_usa28_read_int_callback,	chars_in_buffer:	keyspan_chars_in_buffer,	throttle:		keyspan_rx_throttle,	unthrottle:		keyspan_rx_unthrottle,	ioctl:			keyspan_ioctl,	set_termios:		keyspan_set_termios,	break_ctl:		keyspan_break_ctl,	startup:		keyspan_startup,	shutdown:		keyspan_shutdown,};static struct usb_serial_device_type keyspan_usa19w_device = {	name:			"Keyspan USA19W",	id_table:		keyspan_usa19w_ids,	needs_interrupt_in:	DONT_CARE,		needs_bulk_in:		MUST_HAVE,	needs_bulk_out:		MUST_HAVE,	num_interrupt_in:	NUM_DONT_CARE,	num_bulk_in:		3,	num_bulk_out:		4,	num_ports:		1,	open:			keyspan_open,	close:			keyspan_close,	write:			keyspan_write,	write_room:		keyspan_write_room,	//write_bulk_callback: 	Not used - we define our own herbs	//read_int_callback:	keyspan_usa26_read_int_callback,	chars_in_buffer:	keyspan_chars_in_buffer,	throttle:		keyspan_rx_throttle,	unthrottle:		keyspan_rx_unthrottle,	ioctl:			keyspan_ioctl,	set_termios:		keyspan_set_termios,	break_ctl:		keyspan_break_ctl,	startup:		keyspan_startup,	shutdown:		keyspan_shutdown,};static struct usb_serial_device_type keyspan_usa28_device = {	name:			"Keyspan USA28",	id_table:		keyspan_usa28_ids,	needs_interrupt_in:	DONT_CARE,		needs_bulk_in:		DONT_CARE,	needs_bulk_out:		DONT_CARE,	num_interrupt_in:	NUM_DONT_CARE,	num_bulk_in:		NUM_DONT_CARE,	num_bulk_out:		NUM_DONT_CARE,	num_ports:		2,	open:			keyspan_open,	close:			keyspan_close,	throttle:		keyspan_rx_throttle,	unthrottle:		keyspan_rx_unthrottle,	set_termios:		keyspan_set_termios,};static struct usb_serial_device_type keyspan_usa28x_device = {	name:			"Keyspan USA28X/XB",	id_table:		keyspan_usa28x_ids,	needs_interrupt_in:	DONT_CARE,		needs_bulk_in:		DONT_CARE,	needs_bulk_out:		DONT_CARE,	num_interrupt_in:	NUM_DONT_CARE,	num_bulk_in:		NUM_DONT_CARE,	num_bulk_out:		NUM_DONT_CARE,	num_ports:		2,	open:			keyspan_open,	close:			keyspan_close,	write:			keyspan_write,	write_room:		keyspan_write_room,//	write_bulk_callback: 	keyspan_write_bulk_callback,//	read_int_callback:	keyspan_usa26_read_int_callback,	chars_in_buffer:	keyspan_chars_in_buffer,	throttle:		keyspan_rx_throttle,	unthrottle:		keyspan_rx_unthrottle,	ioctl:			keyspan_ioctl,	set_termios:		keyspan_set_termios,	break_ctl:		keyspan_break_ctl,	startup:		keyspan_startup,	shutdown:		keyspan_shutdown,};static struct usb_serial_device_type keyspan_usa28xa_device = {	name:			"Keyspan USA28XA",	id_table:		keyspan_usa28xa_ids,	needs_interrupt_in:	DONT_CARE,		needs_bulk_in:		DONT_CARE,	needs_bulk_out:		DONT_CARE,	num_interrupt_in:	NUM_DONT_CARE,	num_bulk_in:		NUM_DONT_CARE,	num_bulk_out:		NUM_DONT_CARE,	num_ports:		2,	open:			keyspan_open,	close:			keyspan_close,	write:			keyspan_write,	write_room:		keyspan_write_room,//	write_bulk_callback: 	keyspan_write_bulk_callback,//	read_int_callback:	keyspan_usa26_read_int_callback,	chars_in_buffer:	keyspan_chars_in_buffer,	throttle:		keyspan_rx_throttle,	unthrottle:		keyspan_rx_unthrottle,	ioctl:			keyspan_ioctl,	set_termios:		keyspan_set_termios,	break_ctl:		keyspan_break_ctl,	startup:		keyspan_startup,	shutdown:		keyspan_shutdown,};static struct usb_serial_device_type keyspan_usa49w_device = {	name:			"Keyspan USA49W",	id_table:		keyspan_usa49w_ids,	needs_interrupt_in:	DONT_CARE,		needs_bulk_in:		MUST_HAVE,	needs_bulk_out:		MUST_HAVE,	num_interrupt_in:	NUM_DONT_CARE,	num_bulk_in:		5,	num_bulk_out:		5,	num_ports:		4,	open:			keyspan_open,	close:			keyspan_close,	write:			keyspan_write,	write_room:		keyspan_write_room,	//write_bulk_callback: 	Not used - we define our own herbs	//read_int_callback:	keyspan_usa26_read_int_callback,	chars_in_buffer:	keyspan_chars_in_buffer,	throttle:		keyspan_rx_throttle,	unthrottle:		keyspan_rx_unthrottle,	ioctl:			keyspan_ioctl,	set_termios:		keyspan_set_termios,	break_ctl:		keyspan_break_ctl,	startup:		keyspan_startup,	shutdown:		keyspan_shutdown,};#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -