mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-29 15:14:18 +08:00
USB: serial: make usb_serial_driver::write_room return uint
Line disciplines expect a positive value or zero returned from tty->ops->write_room (invoked by tty_write_room). Both of them are being updated to return an unsigned int. Switch also usb_serial_driver::write_room and all its users. Signed-off-by: Jiri Slaby <jslaby@suse.cz> [ johan: amend commit message, drop unrelated comment change ] Signed-off-by: Johan Hovold <johan@kernel.org>
This commit is contained in:
parent
d07f6ca923
commit
94cc7aeaf6
@ -53,7 +53,7 @@ static int cyberjack_open(struct tty_struct *tty,
|
||||
static void cyberjack_close(struct usb_serial_port *port);
|
||||
static int cyberjack_write(struct tty_struct *tty,
|
||||
struct usb_serial_port *port, const unsigned char *buf, int count);
|
||||
static int cyberjack_write_room(struct tty_struct *tty);
|
||||
static unsigned int cyberjack_write_room(struct tty_struct *tty);
|
||||
static void cyberjack_read_int_callback(struct urb *urb);
|
||||
static void cyberjack_read_bulk_callback(struct urb *urb);
|
||||
static void cyberjack_write_bulk_callback(struct urb *urb);
|
||||
@ -240,7 +240,7 @@ static int cyberjack_write(struct tty_struct *tty,
|
||||
return count;
|
||||
}
|
||||
|
||||
static int cyberjack_write_room(struct tty_struct *tty)
|
||||
static unsigned int cyberjack_write_room(struct tty_struct *tty)
|
||||
{
|
||||
/* FIXME: .... */
|
||||
return CYBERJACK_LOCAL_BUF_SIZE;
|
||||
|
@ -122,7 +122,7 @@ static void cypress_dtr_rts(struct usb_serial_port *port, int on);
|
||||
static int cypress_write(struct tty_struct *tty, struct usb_serial_port *port,
|
||||
const unsigned char *buf, int count);
|
||||
static void cypress_send(struct usb_serial_port *port);
|
||||
static int cypress_write_room(struct tty_struct *tty);
|
||||
static unsigned int cypress_write_room(struct tty_struct *tty);
|
||||
static void cypress_earthmate_init_termios(struct tty_struct *tty);
|
||||
static void cypress_set_termios(struct tty_struct *tty,
|
||||
struct usb_serial_port *port, struct ktermios *old);
|
||||
@ -789,18 +789,18 @@ send:
|
||||
|
||||
|
||||
/* returns how much space is available in the soft buffer */
|
||||
static int cypress_write_room(struct tty_struct *tty)
|
||||
static unsigned int cypress_write_room(struct tty_struct *tty)
|
||||
{
|
||||
struct usb_serial_port *port = tty->driver_data;
|
||||
struct cypress_private *priv = usb_get_serial_port_data(port);
|
||||
int room = 0;
|
||||
unsigned int room;
|
||||
unsigned long flags;
|
||||
|
||||
spin_lock_irqsave(&priv->lock, flags);
|
||||
room = kfifo_avail(&priv->write_fifo);
|
||||
spin_unlock_irqrestore(&priv->lock, flags);
|
||||
|
||||
dev_dbg(&port->dev, "%s - returns %d\n", __func__, room);
|
||||
dev_dbg(&port->dev, "%s - returns %u\n", __func__, room);
|
||||
return room;
|
||||
}
|
||||
|
||||
|
@ -223,7 +223,7 @@ static int digi_tiocmset(struct tty_struct *tty, unsigned int set,
|
||||
static int digi_write(struct tty_struct *tty, struct usb_serial_port *port,
|
||||
const unsigned char *buf, int count);
|
||||
static void digi_write_bulk_callback(struct urb *urb);
|
||||
static int digi_write_room(struct tty_struct *tty);
|
||||
static unsigned int digi_write_room(struct tty_struct *tty);
|
||||
static int digi_chars_in_buffer(struct tty_struct *tty);
|
||||
static int digi_open(struct tty_struct *tty, struct usb_serial_port *port);
|
||||
static void digi_close(struct usb_serial_port *port);
|
||||
@ -1020,11 +1020,11 @@ static void digi_write_bulk_callback(struct urb *urb)
|
||||
tty_port_tty_wakeup(&port->port);
|
||||
}
|
||||
|
||||
static int digi_write_room(struct tty_struct *tty)
|
||||
static unsigned int digi_write_room(struct tty_struct *tty)
|
||||
{
|
||||
struct usb_serial_port *port = tty->driver_data;
|
||||
struct digi_port *priv = usb_get_serial_port_data(port);
|
||||
int room;
|
||||
unsigned int room;
|
||||
unsigned long flags = 0;
|
||||
|
||||
spin_lock_irqsave(&priv->dp_port_lock, flags);
|
||||
@ -1035,7 +1035,7 @@ static int digi_write_room(struct tty_struct *tty)
|
||||
room = port->bulk_out_size - 2 - priv->dp_out_buf_len;
|
||||
|
||||
spin_unlock_irqrestore(&priv->dp_port_lock, flags);
|
||||
dev_dbg(&port->dev, "digi_write_room: port=%d, room=%d\n", priv->dp_port_num, room);
|
||||
dev_dbg(&port->dev, "digi_write_room: port=%d, room=%u\n", priv->dp_port_num, room);
|
||||
return room;
|
||||
|
||||
}
|
||||
|
@ -1113,7 +1113,7 @@ static int garmin_write(struct tty_struct *tty, struct usb_serial_port *port,
|
||||
}
|
||||
|
||||
|
||||
static int garmin_write_room(struct tty_struct *tty)
|
||||
static unsigned int garmin_write_room(struct tty_struct *tty)
|
||||
{
|
||||
struct usb_serial_port *port = tty->driver_data;
|
||||
/*
|
||||
|
@ -230,11 +230,11 @@ int usb_serial_generic_write(struct tty_struct *tty,
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(usb_serial_generic_write);
|
||||
|
||||
int usb_serial_generic_write_room(struct tty_struct *tty)
|
||||
unsigned int usb_serial_generic_write_room(struct tty_struct *tty)
|
||||
{
|
||||
struct usb_serial_port *port = tty->driver_data;
|
||||
unsigned long flags;
|
||||
int room;
|
||||
unsigned int room;
|
||||
|
||||
if (!port->bulk_out_size)
|
||||
return 0;
|
||||
@ -243,7 +243,7 @@ int usb_serial_generic_write_room(struct tty_struct *tty)
|
||||
room = kfifo_avail(&port->write_fifo);
|
||||
spin_unlock_irqrestore(&port->lock, flags);
|
||||
|
||||
dev_dbg(&port->dev, "%s - returns %d\n", __func__, room);
|
||||
dev_dbg(&port->dev, "%s - returns %u\n", __func__, room);
|
||||
return room;
|
||||
}
|
||||
|
||||
|
@ -1355,11 +1355,11 @@ exit_send:
|
||||
* we return the amount of room that we have for this port (the txCredits)
|
||||
* otherwise we return a negative error number.
|
||||
*****************************************************************************/
|
||||
static int edge_write_room(struct tty_struct *tty)
|
||||
static unsigned int edge_write_room(struct tty_struct *tty)
|
||||
{
|
||||
struct usb_serial_port *port = tty->driver_data;
|
||||
struct edgeport_port *edge_port = usb_get_serial_port_data(port);
|
||||
int room;
|
||||
unsigned int room;
|
||||
unsigned long flags;
|
||||
|
||||
if (edge_port == NULL)
|
||||
@ -1377,7 +1377,7 @@ static int edge_write_room(struct tty_struct *tty)
|
||||
room = edge_port->txCredits - edge_port->txfifo.count;
|
||||
spin_unlock_irqrestore(&edge_port->ep_lock, flags);
|
||||
|
||||
dev_dbg(&port->dev, "%s - returns %d\n", __func__, room);
|
||||
dev_dbg(&port->dev, "%s - returns %u\n", __func__, room);
|
||||
return room;
|
||||
}
|
||||
|
||||
|
@ -2067,11 +2067,11 @@ static void edge_send(struct usb_serial_port *port, struct tty_struct *tty)
|
||||
tty_wakeup(tty);
|
||||
}
|
||||
|
||||
static int edge_write_room(struct tty_struct *tty)
|
||||
static unsigned int edge_write_room(struct tty_struct *tty)
|
||||
{
|
||||
struct usb_serial_port *port = tty->driver_data;
|
||||
struct edgeport_port *edge_port = usb_get_serial_port_data(port);
|
||||
int room = 0;
|
||||
unsigned int room;
|
||||
unsigned long flags;
|
||||
|
||||
if (edge_port == NULL)
|
||||
@ -2083,7 +2083,7 @@ static int edge_write_room(struct tty_struct *tty)
|
||||
room = kfifo_avail(&port->write_fifo);
|
||||
spin_unlock_irqrestore(&edge_port->ep_lock, flags);
|
||||
|
||||
dev_dbg(&port->dev, "%s - returns %d\n", __func__, room);
|
||||
dev_dbg(&port->dev, "%s - returns %u\n", __func__, room);
|
||||
return room;
|
||||
}
|
||||
|
||||
|
@ -47,7 +47,7 @@ static int xbof = -1;
|
||||
static int ir_startup (struct usb_serial *serial);
|
||||
static int ir_write(struct tty_struct *tty, struct usb_serial_port *port,
|
||||
const unsigned char *buf, int count);
|
||||
static int ir_write_room(struct tty_struct *tty);
|
||||
static unsigned int ir_write_room(struct tty_struct *tty);
|
||||
static void ir_write_bulk_callback(struct urb *urb);
|
||||
static void ir_process_read_urb(struct urb *urb);
|
||||
static void ir_set_termios(struct tty_struct *tty,
|
||||
@ -339,10 +339,10 @@ static void ir_write_bulk_callback(struct urb *urb)
|
||||
usb_serial_port_softint(port);
|
||||
}
|
||||
|
||||
static int ir_write_room(struct tty_struct *tty)
|
||||
static unsigned int ir_write_room(struct tty_struct *tty)
|
||||
{
|
||||
struct usb_serial_port *port = tty->driver_data;
|
||||
int count = 0;
|
||||
unsigned int count = 0;
|
||||
|
||||
if (port->bulk_out_size == 0)
|
||||
return 0;
|
||||
|
@ -1453,13 +1453,13 @@ static void usa67_glocont_callback(struct urb *urb)
|
||||
}
|
||||
}
|
||||
|
||||
static int keyspan_write_room(struct tty_struct *tty)
|
||||
static unsigned int keyspan_write_room(struct tty_struct *tty)
|
||||
{
|
||||
struct usb_serial_port *port = tty->driver_data;
|
||||
struct keyspan_port_private *p_priv;
|
||||
const struct keyspan_device_details *d_details;
|
||||
int flip;
|
||||
int data_len;
|
||||
unsigned int data_len;
|
||||
struct urb *this_urb;
|
||||
|
||||
p_priv = usb_get_serial_port_data(port);
|
||||
|
@ -53,7 +53,7 @@ static int kobil_open(struct tty_struct *tty, struct usb_serial_port *port);
|
||||
static void kobil_close(struct usb_serial_port *port);
|
||||
static int kobil_write(struct tty_struct *tty, struct usb_serial_port *port,
|
||||
const unsigned char *buf, int count);
|
||||
static int kobil_write_room(struct tty_struct *tty);
|
||||
static unsigned int kobil_write_room(struct tty_struct *tty);
|
||||
static int kobil_ioctl(struct tty_struct *tty,
|
||||
unsigned int cmd, unsigned long arg);
|
||||
static int kobil_tiocmget(struct tty_struct *tty);
|
||||
@ -358,7 +358,7 @@ static int kobil_write(struct tty_struct *tty, struct usb_serial_port *port,
|
||||
}
|
||||
|
||||
|
||||
static int kobil_write_room(struct tty_struct *tty)
|
||||
static unsigned int kobil_write_room(struct tty_struct *tty)
|
||||
{
|
||||
/* FIXME */
|
||||
return 8;
|
||||
|
@ -1033,11 +1033,11 @@ static void mos7720_break(struct tty_struct *tty, int break_state)
|
||||
* If successful, we return the amount of room that we have for this port
|
||||
* Otherwise we return a negative error number.
|
||||
*/
|
||||
static int mos7720_write_room(struct tty_struct *tty)
|
||||
static unsigned int mos7720_write_room(struct tty_struct *tty)
|
||||
{
|
||||
struct usb_serial_port *port = tty->driver_data;
|
||||
struct moschip_port *mos7720_port;
|
||||
int room = 0;
|
||||
unsigned int room = 0;
|
||||
int i;
|
||||
|
||||
mos7720_port = usb_get_serial_port_data(port);
|
||||
@ -1051,7 +1051,7 @@ static int mos7720_write_room(struct tty_struct *tty)
|
||||
room += URB_TRANSFER_BUFFER_SIZE;
|
||||
}
|
||||
|
||||
dev_dbg(&port->dev, "%s - returns %d\n", __func__, room);
|
||||
dev_dbg(&port->dev, "%s - returns %u\n", __func__, room);
|
||||
return room;
|
||||
}
|
||||
|
||||
|
@ -818,12 +818,12 @@ static void mos7840_break(struct tty_struct *tty, int break_state)
|
||||
* Otherwise we return a negative error number.
|
||||
*****************************************************************************/
|
||||
|
||||
static int mos7840_write_room(struct tty_struct *tty)
|
||||
static unsigned int mos7840_write_room(struct tty_struct *tty)
|
||||
{
|
||||
struct usb_serial_port *port = tty->driver_data;
|
||||
struct moschip_port *mos7840_port = usb_get_serial_port_data(port);
|
||||
int i;
|
||||
int room = 0;
|
||||
unsigned int room = 0;
|
||||
unsigned long flags;
|
||||
|
||||
spin_lock_irqsave(&mos7840_port->pool_lock, flags);
|
||||
@ -834,7 +834,7 @@ static int mos7840_write_room(struct tty_struct *tty)
|
||||
spin_unlock_irqrestore(&mos7840_port->pool_lock, flags);
|
||||
|
||||
room = (room == 0) ? 0 : room - URB_TRANSFER_BUFFER_SIZE + 1;
|
||||
dev_dbg(&mos7840_port->port->dev, "%s - returns %d\n", __func__, room);
|
||||
dev_dbg(&mos7840_port->port->dev, "%s - returns %u\n", __func__, room);
|
||||
return room;
|
||||
|
||||
}
|
||||
|
@ -267,7 +267,7 @@ error_no_buffer:
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int opticon_write_room(struct tty_struct *tty)
|
||||
static unsigned int opticon_write_room(struct tty_struct *tty)
|
||||
{
|
||||
struct usb_serial_port *port = tty->driver_data;
|
||||
struct opticon_private *priv = usb_get_serial_port_data(port);
|
||||
|
@ -126,7 +126,7 @@ static void oti6858_read_bulk_callback(struct urb *urb);
|
||||
static void oti6858_write_bulk_callback(struct urb *urb);
|
||||
static int oti6858_write(struct tty_struct *tty, struct usb_serial_port *port,
|
||||
const unsigned char *buf, int count);
|
||||
static int oti6858_write_room(struct tty_struct *tty);
|
||||
static unsigned int oti6858_write_room(struct tty_struct *tty);
|
||||
static int oti6858_chars_in_buffer(struct tty_struct *tty);
|
||||
static int oti6858_tiocmget(struct tty_struct *tty);
|
||||
static int oti6858_tiocmset(struct tty_struct *tty,
|
||||
@ -363,10 +363,10 @@ static int oti6858_write(struct tty_struct *tty, struct usb_serial_port *port,
|
||||
return count;
|
||||
}
|
||||
|
||||
static int oti6858_write_room(struct tty_struct *tty)
|
||||
static unsigned int oti6858_write_room(struct tty_struct *tty)
|
||||
{
|
||||
struct usb_serial_port *port = tty->driver_data;
|
||||
int room = 0;
|
||||
unsigned int room;
|
||||
unsigned long flags;
|
||||
|
||||
spin_lock_irqsave(&port->lock, flags);
|
||||
|
@ -870,12 +870,12 @@ static void qt2_update_lsr(struct usb_serial_port *port, unsigned char *ch)
|
||||
|
||||
}
|
||||
|
||||
static int qt2_write_room(struct tty_struct *tty)
|
||||
static unsigned int qt2_write_room(struct tty_struct *tty)
|
||||
{
|
||||
struct usb_serial_port *port = tty->driver_data;
|
||||
struct qt2_port_private *port_priv;
|
||||
unsigned long flags = 0;
|
||||
int r;
|
||||
unsigned int r;
|
||||
|
||||
port_priv = usb_get_serial_port_data(port);
|
||||
|
||||
|
@ -613,7 +613,7 @@ static void sierra_instat_callback(struct urb *urb)
|
||||
}
|
||||
}
|
||||
|
||||
static int sierra_write_room(struct tty_struct *tty)
|
||||
static unsigned int sierra_write_room(struct tty_struct *tty)
|
||||
{
|
||||
struct usb_serial_port *port = tty->driver_data;
|
||||
struct sierra_port_private *portdata = usb_get_serial_port_data(port);
|
||||
|
@ -307,7 +307,7 @@ static int ti_open(struct tty_struct *tty, struct usb_serial_port *port);
|
||||
static void ti_close(struct usb_serial_port *port);
|
||||
static int ti_write(struct tty_struct *tty, struct usb_serial_port *port,
|
||||
const unsigned char *data, int count);
|
||||
static int ti_write_room(struct tty_struct *tty);
|
||||
static unsigned int ti_write_room(struct tty_struct *tty);
|
||||
static int ti_chars_in_buffer(struct tty_struct *tty);
|
||||
static bool ti_tx_empty(struct usb_serial_port *port);
|
||||
static void ti_throttle(struct tty_struct *tty);
|
||||
@ -810,18 +810,18 @@ static int ti_write(struct tty_struct *tty, struct usb_serial_port *port,
|
||||
}
|
||||
|
||||
|
||||
static int ti_write_room(struct tty_struct *tty)
|
||||
static unsigned int ti_write_room(struct tty_struct *tty)
|
||||
{
|
||||
struct usb_serial_port *port = tty->driver_data;
|
||||
struct ti_port *tport = usb_get_serial_port_data(port);
|
||||
int room = 0;
|
||||
unsigned int room;
|
||||
unsigned long flags;
|
||||
|
||||
spin_lock_irqsave(&tport->tp_lock, flags);
|
||||
room = kfifo_avail(&port->write_fifo);
|
||||
spin_unlock_irqrestore(&tport->tp_lock, flags);
|
||||
|
||||
dev_dbg(&port->dev, "%s - returns %d\n", __func__, room);
|
||||
dev_dbg(&port->dev, "%s - returns %u\n", __func__, room);
|
||||
return room;
|
||||
}
|
||||
|
||||
|
@ -11,7 +11,7 @@ extern int usb_wwan_open(struct tty_struct *tty, struct usb_serial_port *port);
|
||||
extern void usb_wwan_close(struct usb_serial_port *port);
|
||||
extern int usb_wwan_port_probe(struct usb_serial_port *port);
|
||||
extern void usb_wwan_port_remove(struct usb_serial_port *port);
|
||||
extern int usb_wwan_write_room(struct tty_struct *tty);
|
||||
extern unsigned int usb_wwan_write_room(struct tty_struct *tty);
|
||||
extern int usb_wwan_tiocmget(struct tty_struct *tty);
|
||||
extern int usb_wwan_tiocmset(struct tty_struct *tty,
|
||||
unsigned int set, unsigned int clear);
|
||||
|
@ -278,12 +278,12 @@ static void usb_wwan_outdat_callback(struct urb *urb)
|
||||
}
|
||||
}
|
||||
|
||||
int usb_wwan_write_room(struct tty_struct *tty)
|
||||
unsigned int usb_wwan_write_room(struct tty_struct *tty)
|
||||
{
|
||||
struct usb_serial_port *port = tty->driver_data;
|
||||
struct usb_wwan_port_private *portdata;
|
||||
int i;
|
||||
int data_len = 0;
|
||||
unsigned int data_len = 0;
|
||||
struct urb *this_urb;
|
||||
|
||||
portdata = usb_get_serial_port_data(port);
|
||||
@ -294,7 +294,7 @@ int usb_wwan_write_room(struct tty_struct *tty)
|
||||
data_len += OUT_BUFLEN;
|
||||
}
|
||||
|
||||
dev_dbg(&port->dev, "%s: %d\n", __func__, data_len);
|
||||
dev_dbg(&port->dev, "%s: %u\n", __func__, data_len);
|
||||
return data_len;
|
||||
}
|
||||
EXPORT_SYMBOL(usb_wwan_write_room);
|
||||
|
@ -276,7 +276,7 @@ struct usb_serial_driver {
|
||||
int (*write)(struct tty_struct *tty, struct usb_serial_port *port,
|
||||
const unsigned char *buf, int count);
|
||||
/* Called only by the tty layer */
|
||||
int (*write_room)(struct tty_struct *tty);
|
||||
unsigned int (*write_room)(struct tty_struct *tty);
|
||||
int (*ioctl)(struct tty_struct *tty,
|
||||
unsigned int cmd, unsigned long arg);
|
||||
void (*get_serial)(struct tty_struct *tty, struct serial_struct *ss);
|
||||
@ -347,7 +347,7 @@ int usb_serial_generic_write(struct tty_struct *tty, struct usb_serial_port *por
|
||||
const unsigned char *buf, int count);
|
||||
void usb_serial_generic_close(struct usb_serial_port *port);
|
||||
int usb_serial_generic_resume(struct usb_serial *serial);
|
||||
int usb_serial_generic_write_room(struct tty_struct *tty);
|
||||
unsigned int usb_serial_generic_write_room(struct tty_struct *tty);
|
||||
int usb_serial_generic_chars_in_buffer(struct tty_struct *tty);
|
||||
void usb_serial_generic_wait_until_sent(struct tty_struct *tty, long timeout);
|
||||
void usb_serial_generic_read_bulk_callback(struct urb *urb);
|
||||
|
Loading…
Reference in New Issue
Block a user