belkin_sa: clean up code
Coding style tidy up for belkin_sa Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
@@ -13,7 +13,8 @@
|
|||||||
* the Free Software Foundation; either version 2 of the License, or
|
* the Free Software Foundation; either version 2 of the License, or
|
||||||
* (at your option) any later version.
|
* (at your option) any later version.
|
||||||
*
|
*
|
||||||
* See Documentation/usb/usb-serial.txt for more information on using this driver
|
* See Documentation/usb/usb-serial.txt for more information on using this
|
||||||
|
* driver
|
||||||
*
|
*
|
||||||
* TODO:
|
* TODO:
|
||||||
* -- Add true modem contol line query capability. Currently we track the
|
* -- Add true modem contol line query capability. Currently we track the
|
||||||
@@ -28,7 +29,8 @@
|
|||||||
* compressed all the differnent device entries into 1.
|
* compressed all the differnent device entries into 1.
|
||||||
*
|
*
|
||||||
* 30-May-2001 gkh
|
* 30-May-2001 gkh
|
||||||
* switched from using spinlock to a semaphore, which fixes lots of problems.
|
* switched from using spinlock to a semaphore, which fixes lots of
|
||||||
|
* problems.
|
||||||
*
|
*
|
||||||
* 08-Apr-2001 gb
|
* 08-Apr-2001 gb
|
||||||
* - Identify version on module load.
|
* - Identify version on module load.
|
||||||
@@ -72,7 +74,7 @@
|
|||||||
#include <linux/tty_flip.h>
|
#include <linux/tty_flip.h>
|
||||||
#include <linux/module.h>
|
#include <linux/module.h>
|
||||||
#include <linux/spinlock.h>
|
#include <linux/spinlock.h>
|
||||||
#include <asm/uaccess.h>
|
#include <linux/uaccess.h>
|
||||||
#include <linux/usb.h>
|
#include <linux/usb.h>
|
||||||
#include <linux/usb/serial.h>
|
#include <linux/usb/serial.h>
|
||||||
#include "belkin_sa.h"
|
#include "belkin_sa.h"
|
||||||
@@ -89,13 +91,17 @@ static int debug;
|
|||||||
/* function prototypes for a Belkin USB Serial Adapter F5U103 */
|
/* function prototypes for a Belkin USB Serial Adapter F5U103 */
|
||||||
static int belkin_sa_startup(struct usb_serial *serial);
|
static int belkin_sa_startup(struct usb_serial *serial);
|
||||||
static void belkin_sa_shutdown(struct usb_serial *serial);
|
static void belkin_sa_shutdown(struct usb_serial *serial);
|
||||||
static int belkin_sa_open (struct tty_struct *tty, struct usb_serial_port *port, struct file *filp);
|
static int belkin_sa_open(struct tty_struct *tty,
|
||||||
static void belkin_sa_close (struct tty_struct *tty, struct usb_serial_port *port, struct file *filp);
|
struct usb_serial_port *port, struct file *filp);
|
||||||
|
static void belkin_sa_close(struct tty_struct *tty,
|
||||||
|
struct usb_serial_port *port, struct file *filp);
|
||||||
static void belkin_sa_read_int_callback(struct urb *urb);
|
static void belkin_sa_read_int_callback(struct urb *urb);
|
||||||
static void belkin_sa_set_termios (struct tty_struct *tty, struct usb_serial_port *port, struct ktermios * old);
|
static void belkin_sa_set_termios(struct tty_struct *tty,
|
||||||
|
struct usb_serial_port *port, struct ktermios * old);
|
||||||
static void belkin_sa_break_ctl(struct tty_struct *tty, int break_state);
|
static void belkin_sa_break_ctl(struct tty_struct *tty, int break_state);
|
||||||
static int belkin_sa_tiocmget(struct tty_struct *tty, struct file *file);
|
static int belkin_sa_tiocmget(struct tty_struct *tty, struct file *file);
|
||||||
static int belkin_sa_tiocmset (struct tty_struct *tty, struct file *file, unsigned int set, unsigned int clear);
|
static int belkin_sa_tiocmset(struct tty_struct *tty, struct file *file,
|
||||||
|
unsigned int set, unsigned int clear);
|
||||||
|
|
||||||
|
|
||||||
static struct usb_device_id id_table_combined [] = {
|
static struct usb_device_id id_table_combined [] = {
|
||||||
@@ -130,7 +136,8 @@ static struct usb_serial_driver belkin_device = {
|
|||||||
.num_ports = 1,
|
.num_ports = 1,
|
||||||
.open = belkin_sa_open,
|
.open = belkin_sa_open,
|
||||||
.close = belkin_sa_close,
|
.close = belkin_sa_close,
|
||||||
.read_int_callback = belkin_sa_read_int_callback, /* How we get the status info */
|
.read_int_callback = belkin_sa_read_int_callback,
|
||||||
|
/* How we get the status info */
|
||||||
.set_termios = belkin_sa_set_termios,
|
.set_termios = belkin_sa_set_termios,
|
||||||
.break_ctl = belkin_sa_break_ctl,
|
.break_ctl = belkin_sa_break_ctl,
|
||||||
.tiocmget = belkin_sa_tiocmget,
|
.tiocmget = belkin_sa_tiocmget,
|
||||||
@@ -171,20 +178,23 @@ static int belkin_sa_startup (struct usb_serial *serial)
|
|||||||
/* allocate the private data structure */
|
/* allocate the private data structure */
|
||||||
priv = kmalloc(sizeof(struct belkin_sa_private), GFP_KERNEL);
|
priv = kmalloc(sizeof(struct belkin_sa_private), GFP_KERNEL);
|
||||||
if (!priv)
|
if (!priv)
|
||||||
return (-1); /* error */
|
return -1; /* error */
|
||||||
/* set initial values for control structures */
|
/* set initial values for control structures */
|
||||||
spin_lock_init(&priv->lock);
|
spin_lock_init(&priv->lock);
|
||||||
priv->control_state = 0;
|
priv->control_state = 0;
|
||||||
priv->last_lsr = 0;
|
priv->last_lsr = 0;
|
||||||
priv->last_msr = 0;
|
priv->last_msr = 0;
|
||||||
/* see comments at top of file */
|
/* see comments at top of file */
|
||||||
priv->bad_flow_control = (le16_to_cpu(dev->descriptor.bcdDevice) <= 0x0206) ? 1 : 0;
|
priv->bad_flow_control =
|
||||||
info("bcdDevice: %04x, bfc: %d", le16_to_cpu(dev->descriptor.bcdDevice), priv->bad_flow_control);
|
(le16_to_cpu(dev->descriptor.bcdDevice) <= 0x0206) ? 1 : 0;
|
||||||
|
info("bcdDevice: %04x, bfc: %d",
|
||||||
|
le16_to_cpu(dev->descriptor.bcdDevice),
|
||||||
|
priv->bad_flow_control);
|
||||||
|
|
||||||
init_waitqueue_head(&serial->port[0]->write_wait);
|
init_waitqueue_head(&serial->port[0]->write_wait);
|
||||||
usb_set_serial_port_data(serial->port[0], priv);
|
usb_set_serial_port_data(serial->port[0], priv);
|
||||||
|
|
||||||
return (0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -204,7 +214,8 @@ static void belkin_sa_shutdown(struct usb_serial *serial)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static int belkin_sa_open(struct tty_struct *tty, struct usb_serial_port *port, struct file *filp)
|
static int belkin_sa_open(struct tty_struct *tty,
|
||||||
|
struct usb_serial_port *port, struct file *filp)
|
||||||
{
|
{
|
||||||
int retval = 0;
|
int retval = 0;
|
||||||
|
|
||||||
@@ -271,7 +282,8 @@ static void belkin_sa_read_int_callback(struct urb *urb)
|
|||||||
goto exit;
|
goto exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
usb_serial_debug_data(debug, &port->dev, __func__, urb->actual_length, data);
|
usb_serial_debug_data(debug, &port->dev, __func__,
|
||||||
|
urb->actual_length, data);
|
||||||
|
|
||||||
/* Handle known interrupt data */
|
/* Handle known interrupt data */
|
||||||
/* ignore data[0] and data[1] */
|
/* ignore data[0] and data[1] */
|
||||||
@@ -372,7 +384,8 @@ static void belkin_sa_set_termios(struct tty_struct *tty,
|
|||||||
err("Set DTR error");
|
err("Set DTR error");
|
||||||
/* don't set RTS if using hardware flow control */
|
/* don't set RTS if using hardware flow control */
|
||||||
if (!(old_cflag & CRTSCTS))
|
if (!(old_cflag & CRTSCTS))
|
||||||
if (BSA_USB_CMD(BELKIN_SA_SET_RTS_REQUEST, 1) < 0)
|
if (BSA_USB_CMD(BELKIN_SA_SET_RTS_REQUEST
|
||||||
|
, 1) < 0)
|
||||||
err("Set RTS error");
|
err("Set RTS error");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -392,7 +405,8 @@ static void belkin_sa_set_termios(struct tty_struct *tty,
|
|||||||
err("Set baudrate error");
|
err("Set baudrate error");
|
||||||
} else {
|
} else {
|
||||||
/* Disable flow control */
|
/* Disable flow control */
|
||||||
if (BSA_USB_CMD(BELKIN_SA_SET_FLOW_CTRL_REQUEST, BELKIN_SA_FLOW_NONE) < 0)
|
if (BSA_USB_CMD(BELKIN_SA_SET_FLOW_CTRL_REQUEST,
|
||||||
|
BELKIN_SA_FLOW_NONE) < 0)
|
||||||
err("Disable flowcontrol error");
|
err("Disable flowcontrol error");
|
||||||
/* Drop RTS and DTR */
|
/* Drop RTS and DTR */
|
||||||
control_state &= ~(TIOCM_DTR | TIOCM_RTS);
|
control_state &= ~(TIOCM_DTR | TIOCM_RTS);
|
||||||
@@ -403,9 +417,10 @@ static void belkin_sa_set_termios(struct tty_struct *tty,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* set the parity */
|
/* set the parity */
|
||||||
if( (cflag&(PARENB|PARODD)) != (old_cflag&(PARENB|PARODD)) ) {
|
if ((cflag ^ old_cflag) & (PARENB | PARODD)) {
|
||||||
if (cflag & PARENB)
|
if (cflag & PARENB)
|
||||||
urb_value = (cflag & PARODD) ? BELKIN_SA_PARITY_ODD : BELKIN_SA_PARITY_EVEN;
|
urb_value = (cflag & PARODD) ? BELKIN_SA_PARITY_ODD
|
||||||
|
: BELKIN_SA_PARITY_EVEN;
|
||||||
else
|
else
|
||||||
urb_value = BELKIN_SA_PARITY_NONE;
|
urb_value = BELKIN_SA_PARITY_NONE;
|
||||||
if (BSA_USB_CMD(BELKIN_SA_SET_PARITY_REQUEST, urb_value) < 0)
|
if (BSA_USB_CMD(BELKIN_SA_SET_PARITY_REQUEST, urb_value) < 0)
|
||||||
@@ -415,10 +430,18 @@ static void belkin_sa_set_termios(struct tty_struct *tty,
|
|||||||
/* set the number of data bits */
|
/* set the number of data bits */
|
||||||
if ((cflag & CSIZE) != (old_cflag & CSIZE)) {
|
if ((cflag & CSIZE) != (old_cflag & CSIZE)) {
|
||||||
switch (cflag & CSIZE) {
|
switch (cflag & CSIZE) {
|
||||||
case CS5: urb_value = BELKIN_SA_DATA_BITS(5); break;
|
case CS5:
|
||||||
case CS6: urb_value = BELKIN_SA_DATA_BITS(6); break;
|
urb_value = BELKIN_SA_DATA_BITS(5);
|
||||||
case CS7: urb_value = BELKIN_SA_DATA_BITS(7); break;
|
break;
|
||||||
case CS8: urb_value = BELKIN_SA_DATA_BITS(8); break;
|
case CS6:
|
||||||
|
urb_value = BELKIN_SA_DATA_BITS(6);
|
||||||
|
break;
|
||||||
|
case CS7:
|
||||||
|
urb_value = BELKIN_SA_DATA_BITS(7);
|
||||||
|
break;
|
||||||
|
case CS8:
|
||||||
|
urb_value = BELKIN_SA_DATA_BITS(8);
|
||||||
|
break;
|
||||||
default: dbg("CSIZE was not CS5-CS8, using default of 8");
|
default: dbg("CSIZE was not CS5-CS8, using default of 8");
|
||||||
urb_value = BELKIN_SA_DATA_BITS(8);
|
urb_value = BELKIN_SA_DATA_BITS(8);
|
||||||
break;
|
break;
|
||||||
@@ -429,15 +452,16 @@ static void belkin_sa_set_termios(struct tty_struct *tty,
|
|||||||
|
|
||||||
/* set the number of stop bits */
|
/* set the number of stop bits */
|
||||||
if ((cflag & CSTOPB) != (old_cflag & CSTOPB)) {
|
if ((cflag & CSTOPB) != (old_cflag & CSTOPB)) {
|
||||||
urb_value = (cflag & CSTOPB) ? BELKIN_SA_STOP_BITS(2) : BELKIN_SA_STOP_BITS(1);
|
urb_value = (cflag & CSTOPB) ? BELKIN_SA_STOP_BITS(2)
|
||||||
if (BSA_USB_CMD(BELKIN_SA_SET_STOP_BITS_REQUEST, urb_value) < 0)
|
: BELKIN_SA_STOP_BITS(1);
|
||||||
|
if (BSA_USB_CMD(BELKIN_SA_SET_STOP_BITS_REQUEST,
|
||||||
|
urb_value) < 0)
|
||||||
err("Set stop bits error");
|
err("Set stop bits error");
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Set flow control */
|
/* Set flow control */
|
||||||
if( (iflag&IXOFF) != (old_iflag&IXOFF)
|
if (((iflag ^ old_iflag) & (IXOFF | IXON)) ||
|
||||||
|| (iflag&IXON) != (old_iflag&IXON)
|
((cflag ^ old_cflag) & CRTSCTS)) {
|
||||||
|| (cflag&CRTSCTS) != (old_cflag&CRTSCTS) ) {
|
|
||||||
urb_value = 0;
|
urb_value = 0;
|
||||||
if ((iflag & IXOFF) || (iflag & IXON))
|
if ((iflag & IXOFF) || (iflag & IXON))
|
||||||
urb_value |= (BELKIN_SA_FLOW_OXON | BELKIN_SA_FLOW_IXON);
|
urb_value |= (BELKIN_SA_FLOW_OXON | BELKIN_SA_FLOW_IXON);
|
||||||
|
@@ -13,7 +13,8 @@
|
|||||||
* the Free Software Foundation; either version 2 of the License, or
|
* the Free Software Foundation; either version 2 of the License, or
|
||||||
* (at your option) any later version.
|
* (at your option) any later version.
|
||||||
*
|
*
|
||||||
* See Documentation/usb/usb-serial.txt for more information on using this driver
|
* See Documentation/usb/usb-serial.txt for more information on using this
|
||||||
|
* driver
|
||||||
*
|
*
|
||||||
* 12-Mar-2001 gkh
|
* 12-Mar-2001 gkh
|
||||||
* Added GoHubs GO-COM232 device id.
|
* Added GoHubs GO-COM232 device id.
|
||||||
@@ -105,7 +106,7 @@
|
|||||||
#define BELKIN_SA_LSR_PE 0x04 /* parity error */
|
#define BELKIN_SA_LSR_PE 0x04 /* parity error */
|
||||||
#define BELKIN_SA_LSR_FE 0x08 /* framing error */
|
#define BELKIN_SA_LSR_FE 0x08 /* framing error */
|
||||||
#define BELKIN_SA_LSR_BI 0x10 /* break indicator */
|
#define BELKIN_SA_LSR_BI 0x10 /* break indicator */
|
||||||
#define BELKIN_SA_LSR_THE 0x20 /* transmit holding register empty */
|
#define BELKIN_SA_LSR_THE 0x20 /* tx holding register empty */
|
||||||
#define BELKIN_SA_LSR_TE 0x40 /* transmit register empty */
|
#define BELKIN_SA_LSR_TE 0x40 /* transmit register empty */
|
||||||
#define BELKIN_SA_LSR_ERR 0x80 /* OE | PE | FE | BI */
|
#define BELKIN_SA_LSR_ERR 0x80 /* OE | PE | FE | BI */
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user