X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=drivers%2Fusb%2Fserial%2Fir-usb.c;h=3003cd04300ef401c31f95433ad976dd9f82a580;hb=6a77f38946aaee1cd85eeec6cf4229b204c15071;hp=3d1571695bde33b94e6b0b393e7bf7ae1917084c;hpb=87fc8d1bb10cd459024a742c6a10961fefcef18f;p=linux-2.6.git diff --git a/drivers/usb/serial/ir-usb.c b/drivers/usb/serial/ir-usb.c index 3d1571695..3003cd043 100644 --- a/drivers/usb/serial/ir-usb.c +++ b/drivers/usb/serial/ir-usb.c @@ -105,7 +105,7 @@ static int xbof = -1; static int ir_startup (struct usb_serial *serial); static int ir_open (struct usb_serial_port *port, struct file *filep); static void ir_close (struct usb_serial_port *port, struct file *filep); -static int ir_write (struct usb_serial_port *port, int from_user, const unsigned char *buf, int count); +static int ir_write (struct usb_serial_port *port, const unsigned char *buf, int count); static void ir_write_bulk_callback (struct urb *urb, struct pt_regs *regs); static void ir_read_bulk_callback (struct urb *urb, struct pt_regs *regs); static void ir_set_termios (struct usb_serial_port *port, struct termios *old_termios); @@ -322,10 +322,10 @@ static void ir_close (struct usb_serial_port *port, struct file * filp) dbg("%s - port %d", __FUNCTION__, port->number); /* shutdown our bulk read */ - usb_unlink_urb (port->read_urb); + usb_kill_urb(port->read_urb); } -static int ir_write (struct usb_serial_port *port, int from_user, const unsigned char *buf, int count) +static int ir_write (struct usb_serial_port *port, const unsigned char *buf, int count) { unsigned char *transfer_buffer; int result; @@ -359,12 +359,7 @@ static int ir_write (struct usb_serial_port *port, int from_user, const unsigned *transfer_buffer = ir_xbof | ir_baud; ++transfer_buffer; - if (from_user) { - if (copy_from_user (transfer_buffer, buf, transfer_size)) - return -EFAULT; - } else { - memcpy (transfer_buffer, buf, transfer_size); - } + memcpy (transfer_buffer, buf, transfer_size); usb_fill_bulk_urb ( port->write_urb,