aboutsummaryrefslogtreecommitdiff
path: root/drivers/usb/gadget/serial.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-09-11 10:13:01 -0700
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-09-11 10:13:01 -0700
commitae292dbd2e9385d4c63f0c7099ab73b60d1b26d3 (patch)
tree58b9b1524f71d3d7709ce5f971dc88805d8f80ef /drivers/usb/gadget/serial.c
parentaf5b14c49aad13de1c8e9e1abfbabe127c3af92e (diff)
parent03fc370bdc1b31f3d09bd88d65bc50c03f450a9d (diff)
Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6: USB: drivers/usb/serial/bus.c: Fix incompatible pointer type warning USB: another quirky device (LCD display) USB: fix serial gadget ACM breakage USB: More USB_QUIRK_RESET_RESUME devices USB Mass Storage: limit "Rockchip ROCK MP3" device (071b:3203) max I/O to 64 sectors per command USB: Nikon D40 Quirks USB: Add Sony Ericsson P1i to unusual_devs.h USB: option: Add Dell HSDPA 5520 to driver USB: option: Add a new device ID for the HUAWEI E220 HSDPA modem. USB: fix linked list insertion bugfix for usb core USB: quirky flash drive USB: prevent Genesys USB-IDE from autosuspending USB: prevent Thomson card reader from autosuspending USB: Add iPhone device id to the quirk list. USB: ftdi_sio: add of a new product/manufacturer, TML usb/misc/sisusbvga: add product ID of TARGUS/MCT device USB: oti6858: Remove broken ioctl code in -mm tree and also the broken fixes
Diffstat (limited to 'drivers/usb/gadget/serial.c')
-rw-r--r--drivers/usb/gadget/serial.c25
1 files changed, 15 insertions, 10 deletions
diff --git a/drivers/usb/gadget/serial.c b/drivers/usb/gadget/serial.c
index 9cd98e73dc1..ce4d2e09633 100644
--- a/drivers/usb/gadget/serial.c
+++ b/drivers/usb/gadget/serial.c
@@ -1691,14 +1691,12 @@ static int gs_setup_class(struct usb_gadget *gadget,
switch (ctrl->bRequest) {
case USB_CDC_REQ_SET_LINE_CODING:
- ret = min(wLength,
- (u16)sizeof(struct usb_cdc_line_coding));
- if (port) {
- spin_lock(&port->port_lock);
- memcpy(&port->port_line_coding, req->buf, ret);
- spin_unlock(&port->port_lock);
- }
- ret = 0;
+ /* FIXME Submit req to read the data; have its completion
+ * handler copy that data to port->port_line_coding (iff
+ * it's valid) and maybe pass it on. Until then, fail.
+ */
+ printk(KERN_WARNING "gs_setup: set_line_coding "
+ "unuspported\n");
break;
case USB_CDC_REQ_GET_LINE_CODING:
@@ -1713,11 +1711,18 @@ static int gs_setup_class(struct usb_gadget *gadget,
break;
case USB_CDC_REQ_SET_CONTROL_LINE_STATE:
- ret = 0;
+ /* FIXME Submit req to read the data; have its completion
+ * handler use that to set the state (iff it's valid) and
+ * maybe pass it on. Until then, fail.
+ */
+ printk(KERN_WARNING "gs_setup: set_control_line_state "
+ "unuspported\n");
break;
default:
- printk(KERN_ERR "gs_setup: unknown class request, type=%02x, request=%02x, value=%04x, index=%04x, length=%d\n",
+ printk(KERN_ERR "gs_setup: unknown class request, "
+ "type=%02x, request=%02x, value=%04x, "
+ "index=%04x, length=%d\n",
ctrl->bRequestType, ctrl->bRequest,
wValue, wIndex, wLength);
break;