diff options
Diffstat (limited to 'drivers/usb/serial/keyspan.h')
| -rw-r--r-- | drivers/usb/serial/keyspan.h | 43 | 
1 files changed, 26 insertions, 17 deletions
diff --git a/drivers/usb/serial/keyspan.h b/drivers/usb/serial/keyspan.h index 2d8baf6ac47..0273dda303a 100644 --- a/drivers/usb/serial/keyspan.h +++ b/drivers/usb/serial/keyspan.h @@ -42,6 +42,8 @@ static void keyspan_dtr_rts		(struct usb_serial_port *port, int on);  static int  keyspan_startup		(struct usb_serial *serial);  static void keyspan_disconnect		(struct usb_serial *serial);  static void keyspan_release		(struct usb_serial *serial); +static int keyspan_port_probe(struct usb_serial_port *port); +static int keyspan_port_remove(struct usb_serial_port *port);  static int  keyspan_write_room		(struct tty_struct *tty);  static int  keyspan_write		(struct tty_struct *tty, @@ -58,26 +60,29 @@ static void keyspan_set_termios		(struct tty_struct *tty,  					 struct ktermios *old);  static void keyspan_break_ctl		(struct tty_struct *tty,  					 int break_state); -static int  keyspan_tiocmget		(struct tty_struct *tty, -					 struct file *file); +static int  keyspan_tiocmget		(struct tty_struct *tty);  static int  keyspan_tiocmset		(struct tty_struct *tty, -					 struct file *file, unsigned int set, +					 unsigned int set,  					 unsigned int clear);  static int  keyspan_fake_startup	(struct usb_serial *serial); -static int  keyspan_usa19_calc_baud	(u32 baud_rate, u32 baudclk,  +static int  keyspan_usa19_calc_baud	(struct usb_serial_port *port, +					 u32 baud_rate, u32 baudclk,  					 u8 *rate_hi, u8 *rate_low,  					 u8 *prescaler, int portnum); -static int  keyspan_usa19w_calc_baud	(u32 baud_rate, u32 baudclk, +static int  keyspan_usa19w_calc_baud	(struct usb_serial_port *port, +					 u32 baud_rate, u32 baudclk,  					 u8 *rate_hi, u8 *rate_low,  					 u8 *prescaler, int portnum); -static int  keyspan_usa28_calc_baud	(u32 baud_rate, u32 baudclk, +static int  keyspan_usa28_calc_baud	(struct usb_serial_port *port, +					 u32 baud_rate, u32 baudclk,  					 u8 *rate_hi, u8 *rate_low,  					 u8 *prescaler, int portnum); -static int  keyspan_usa19hs_calc_baud	(u32 baud_rate, u32 baudclk, +static int  keyspan_usa19hs_calc_baud	(struct usb_serial_port *port, +					 u32 baud_rate, u32 baudclk,  					 u8 *rate_hi, u8 *rate_low,  					 u8 *prescaler, int portnum); @@ -189,8 +194,9 @@ struct keyspan_device_details {  		/* Endpoint used for global control functions */  	int	glocont_endpoint; -	int	(*calculate_baud_rate) (u32 baud_rate, u32 baudclk, -			u8 *rate_hi, u8 *rate_low, u8 *prescaler, int portnum); +	int	(*calculate_baud_rate) (struct usb_serial_port *port, +					u32 baud_rate, u32 baudclk, +					u8 *rate_hi, u8 *rate_low, u8 *prescaler, int portnum);  	u32	baudclk;  };  @@ -488,14 +494,6 @@ static const struct usb_device_id keyspan_ids_combined[] = {  MODULE_DEVICE_TABLE(usb, keyspan_ids_combined); -static struct usb_driver keyspan_driver = { -	.name =		"keyspan",                 -	.probe =	usb_serial_probe, -	.disconnect =	usb_serial_disconnect, -	.id_table =	keyspan_ids_combined, -	.no_dynamic_id = 	1, -}; -  /* usb_device_id table for the pre-firmware download keyspan devices */  static const struct usb_device_id keyspan_pre_ids[] = {  	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa18x_pre_product_id) }, @@ -571,6 +569,8 @@ static struct usb_serial_driver keyspan_1port_device = {  	.attach			= keyspan_startup,  	.disconnect		= keyspan_disconnect,  	.release		= keyspan_release, +	.port_probe		= keyspan_port_probe, +	.port_remove		= keyspan_port_remove,  };  static struct usb_serial_driver keyspan_2port_device = { @@ -593,6 +593,8 @@ static struct usb_serial_driver keyspan_2port_device = {  	.attach			= keyspan_startup,  	.disconnect		= keyspan_disconnect,  	.release		= keyspan_release, +	.port_probe		= keyspan_port_probe, +	.port_remove		= keyspan_port_remove,  };  static struct usb_serial_driver keyspan_4port_device = { @@ -615,6 +617,13 @@ static struct usb_serial_driver keyspan_4port_device = {  	.attach			= keyspan_startup,  	.disconnect		= keyspan_disconnect,  	.release		= keyspan_release, +	.port_probe		= keyspan_port_probe, +	.port_remove		= keyspan_port_remove, +}; + +static struct usb_serial_driver * const serial_drivers[] = { +	&keyspan_pre_device, &keyspan_1port_device, +	&keyspan_2port_device, &keyspan_4port_device, NULL  };  #endif  | 
