Commit b19d402a authored by Oliver Neukum's avatar Oliver Neukum Committed by Greg Kroah-Hartman

USB: aircable cleanup

- proper endianness macros
- scheduling in interrupt in error case
Signed-off-by: default avatarOliver Neukum <oneukum@suse.de>
Signed-off-by: default avatarNaranjo Manuel Francisco <naranjo.manuel@gmail.com>
parent 9f8b17e6
...@@ -209,6 +209,7 @@ static void aircable_send(struct usb_serial_port *port) ...@@ -209,6 +209,7 @@ static void aircable_send(struct usb_serial_port *port)
int count, result; int count, result;
struct aircable_private *priv = usb_get_serial_port_data(port); struct aircable_private *priv = usb_get_serial_port_data(port);
unsigned char* buf; unsigned char* buf;
u16 *dbuf;
dbg("%s - port %d", __FUNCTION__, port->number); dbg("%s - port %d", __FUNCTION__, port->number);
if (port->write_urb_busy) if (port->write_urb_busy)
return; return;
...@@ -226,8 +227,8 @@ static void aircable_send(struct usb_serial_port *port) ...@@ -226,8 +227,8 @@ static void aircable_send(struct usb_serial_port *port)
buf[0] = TX_HEADER_0; buf[0] = TX_HEADER_0;
buf[1] = TX_HEADER_1; buf[1] = TX_HEADER_1;
buf[2] = (unsigned char)count; dbuf = (u16 *)&buf[2];
buf[3] = (unsigned char)(count >> 8); *dbuf = cpu_to_le16((u16)count);
serial_buf_get(priv->tx_buf,buf + HCI_HEADER_LENGTH, MAX_HCI_FRAMESIZE); serial_buf_get(priv->tx_buf,buf + HCI_HEADER_LENGTH, MAX_HCI_FRAMESIZE);
memcpy(port->write_urb->transfer_buffer, buf, memcpy(port->write_urb->transfer_buffer, buf,
...@@ -434,7 +435,7 @@ static void aircable_write_bulk_callback(struct urb *urb) ...@@ -434,7 +435,7 @@ static void aircable_write_bulk_callback(struct urb *urb)
__FUNCTION__, urb->status); __FUNCTION__, urb->status);
port->write_urb->transfer_buffer_length = 1; port->write_urb->transfer_buffer_length = 1;
port->write_urb->dev = port->serial->dev; port->write_urb->dev = port->serial->dev;
result = usb_submit_urb(port->write_urb, GFP_KERNEL); result = usb_submit_urb(port->write_urb, GFP_ATOMIC);
if (result) if (result)
dev_err(&urb->dev->dev, dev_err(&urb->dev->dev,
"%s - failed resubmitting write urb, error %d\n", "%s - failed resubmitting write urb, error %d\n",
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment