diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-03-20 14:26:30 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-03-20 14:26:30 -0400 |
commit | ed378a52dabf77b406b447fd3238f83ea24b71fa (patch) | |
tree | 07e1a7ec2d1c08767ee81b9910f5912b80502632 /drivers/staging | |
parent | 843ec558f91b8e8fdb6efc908f2c0506407cc750 (diff) | |
parent | 11207b6fe05438b2e87a26435cd98db3d55e6fa7 (diff) |
Merge tag 'usb-3.3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb
Pull USB merge for 3.4-rc1 from Greg KH:
"Here's the big USB merge for the 3.4-rc1 merge window.
Lots of gadget driver reworks here, driver updates, xhci changes, some
new drivers added, usb-serial core reworking to fix some bugs, and
other various minor things.
There are some patches touching arch code, but they have all been
acked by the various arch maintainers."
* tag 'usb-3.3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (302 commits)
net: qmi_wwan: add support for ZTE MF820D
USB: option: add ZTE MF820D
usb: gadget: f_fs: Remove lock is held before freeing checks
USB: option: make interface blacklist work again
usb/ub: deprecate & schedule for removal the "Low Performance USB Block" driver
USB: ohci-pxa27x: add clk_prepare/clk_unprepare calls
USB: use generic platform driver on ath79
USB: EHCI: Add a generic platform device driver
USB: OHCI: Add a generic platform device driver
USB: ftdi_sio: new PID: LUMEL PD12
USB: ftdi_sio: add support for FT-X series devices
USB: serial: mos7840: Fixed MCS7820 device attach problem
usb: Don't make USB_ARCH_HAS_{XHCI,OHCI,EHCI} depend on USB_SUPPORT.
usb gadget: fix a section mismatch when compiling g_ffs with CONFIG_USB_FUNCTIONFS_ETH
USB: ohci-nxp: Remove i2c_write(), use smbus
USB: ohci-nxp: Support for LPC32xx
USB: ohci-nxp: Rename symbols from pnx4008 to nxp
USB: OHCI-HCD: Rename ohci-pnx4008 to ohci-nxp
usb: gadget: Kconfig: fix typo for 'different'
usb: dwc3: pci: fix another failure path in dwc3_pci_probe()
...
Diffstat (limited to 'drivers/staging')
-rw-r--r-- | drivers/staging/keucr/transport.h | 37 | ||||
-rw-r--r-- | drivers/staging/quatech_usb2/quatech_usb2.c | 40 | ||||
-rw-r--r-- | drivers/staging/serqt_usb2/serqt_usb2.c | 40 |
3 files changed, 8 insertions, 109 deletions
diff --git a/drivers/staging/keucr/transport.h b/drivers/staging/keucr/transport.h index 4ae57d0145b2..2a11a98375d7 100644 --- a/drivers/staging/keucr/transport.h +++ b/drivers/staging/keucr/transport.h | |||
@@ -3,43 +3,6 @@ | |||
3 | 3 | ||
4 | #include <linux/blkdev.h> | 4 | #include <linux/blkdev.h> |
5 | 5 | ||
6 | /* Bulk only data structures */ | ||
7 | |||
8 | /* command block wrapper */ | ||
9 | struct bulk_cb_wrap { | ||
10 | __le32 Signature; /* contains 'USBC' */ | ||
11 | __u32 Tag; /* unique per command id */ | ||
12 | __le32 DataTransferLength; /* size of data */ | ||
13 | __u8 Flags; /* direction in bit 0 */ | ||
14 | __u8 Lun; /* LUN normally 0 */ | ||
15 | __u8 Length; /* of of the CDB */ | ||
16 | __u8 CDB[16]; /* max command */ | ||
17 | }; | ||
18 | |||
19 | #define US_BULK_CB_WRAP_LEN 31 | ||
20 | #define US_BULK_CB_SIGN 0x43425355 /*spells out USBC */ | ||
21 | #define US_BULK_FLAG_IN 1 | ||
22 | #define US_BULK_FLAG_OUT 0 | ||
23 | |||
24 | /* command status wrapper */ | ||
25 | struct bulk_cs_wrap { | ||
26 | __le32 Signature; /* should = 'USBS' */ | ||
27 | __u32 Tag; /* same as original command */ | ||
28 | __le32 Residue; /* amount not transferred */ | ||
29 | __u8 Status; /* see below */ | ||
30 | __u8 Filler[18]; | ||
31 | }; | ||
32 | |||
33 | #define US_BULK_CS_WRAP_LEN 13 | ||
34 | #define US_BULK_CS_SIGN 0x53425355 /* spells out 'USBS' */ | ||
35 | #define US_BULK_STAT_OK 0 | ||
36 | #define US_BULK_STAT_FAIL 1 | ||
37 | #define US_BULK_STAT_PHASE 2 | ||
38 | |||
39 | /* bulk-only class specific requests */ | ||
40 | #define US_BULK_RESET_REQUEST 0xff | ||
41 | #define US_BULK_GET_MAX_LUN 0xfe | ||
42 | |||
43 | /* usb_stor_bulk_transfer_xxx() return codes, in order of severity */ | 6 | /* usb_stor_bulk_transfer_xxx() return codes, in order of severity */ |
44 | #define USB_STOR_XFER_GOOD 0 /* good transfer */ | 7 | #define USB_STOR_XFER_GOOD 0 /* good transfer */ |
45 | #define USB_STOR_XFER_SHORT 1 /* transferred less than expected */ | 8 | #define USB_STOR_XFER_SHORT 1 /* transferred less than expected */ |
diff --git a/drivers/staging/quatech_usb2/quatech_usb2.c b/drivers/staging/quatech_usb2/quatech_usb2.c index 897a3a99c794..bb977e00cc86 100644 --- a/drivers/staging/quatech_usb2/quatech_usb2.c +++ b/drivers/staging/quatech_usb2/quatech_usb2.c | |||
@@ -135,7 +135,6 @@ static struct usb_driver quausb2_usb_driver = { | |||
135 | .probe = usb_serial_probe, | 135 | .probe = usb_serial_probe, |
136 | .disconnect = usb_serial_disconnect, | 136 | .disconnect = usb_serial_disconnect, |
137 | .id_table = quausb2_id_table, | 137 | .id_table = quausb2_id_table, |
138 | .no_dynamic_id = 1, | ||
139 | }; | 138 | }; |
140 | 139 | ||
141 | /** | 140 | /** |
@@ -1942,7 +1941,6 @@ static struct usb_serial_driver quatech2_device = { | |||
1942 | .name = "quatech_usb2", | 1941 | .name = "quatech_usb2", |
1943 | }, | 1942 | }, |
1944 | .description = DRIVER_DESC, | 1943 | .description = DRIVER_DESC, |
1945 | .usb_driver = &quausb2_usb_driver, | ||
1946 | .id_table = quausb2_id_table, | 1944 | .id_table = quausb2_id_table, |
1947 | .num_ports = 8, | 1945 | .num_ports = 8, |
1948 | .open = qt2_open, | 1946 | .open = qt2_open, |
@@ -1964,41 +1962,11 @@ static struct usb_serial_driver quatech2_device = { | |||
1964 | .write_bulk_callback = qt2_write_bulk_callback, | 1962 | .write_bulk_callback = qt2_write_bulk_callback, |
1965 | }; | 1963 | }; |
1966 | 1964 | ||
1967 | static int __init quausb2_usb_init(void) | 1965 | static struct usb_serial_driver * const serial_drivers[] = { |
1968 | { | 1966 | &quatech2_device, NULL |
1969 | int retval; | 1967 | }; |
1970 | |||
1971 | dbg("%s\n", __func__); | ||
1972 | |||
1973 | /* register with usb-serial */ | ||
1974 | retval = usb_serial_register(&quatech2_device); | ||
1975 | |||
1976 | if (retval) | ||
1977 | goto failed_usb_serial_register; | ||
1978 | |||
1979 | printk(KERN_INFO KBUILD_MODNAME ": " DRIVER_VERSION ":" | ||
1980 | DRIVER_DESC "\n"); | ||
1981 | |||
1982 | /* register with usb */ | ||
1983 | |||
1984 | retval = usb_register(&quausb2_usb_driver); | ||
1985 | if (retval == 0) | ||
1986 | return 0; | ||
1987 | |||
1988 | /* if we're here, usb_register() failed */ | ||
1989 | usb_serial_deregister(&quatech2_device); | ||
1990 | failed_usb_serial_register: | ||
1991 | return retval; | ||
1992 | } | ||
1993 | |||
1994 | static void __exit quausb2_usb_exit(void) | ||
1995 | { | ||
1996 | usb_deregister(&quausb2_usb_driver); | ||
1997 | usb_serial_deregister(&quatech2_device); | ||
1998 | } | ||
1999 | 1968 | ||
2000 | module_init(quausb2_usb_init); | 1969 | module_usb_serial_driver(quausb2_usb_driver, serial_drivers); |
2001 | module_exit(quausb2_usb_exit); | ||
2002 | 1970 | ||
2003 | MODULE_AUTHOR(DRIVER_AUTHOR); | 1971 | MODULE_AUTHOR(DRIVER_AUTHOR); |
2004 | MODULE_DESCRIPTION(DRIVER_DESC); | 1972 | MODULE_DESCRIPTION(DRIVER_DESC); |
diff --git a/drivers/staging/serqt_usb2/serqt_usb2.c b/drivers/staging/serqt_usb2/serqt_usb2.c index 1c5780f1571b..ae1d815e2a53 100644 --- a/drivers/staging/serqt_usb2/serqt_usb2.c +++ b/drivers/staging/serqt_usb2/serqt_usb2.c | |||
@@ -200,7 +200,6 @@ static struct usb_driver serqt_usb_driver = { | |||
200 | .probe = usb_serial_probe, | 200 | .probe = usb_serial_probe, |
201 | .disconnect = usb_serial_disconnect, | 201 | .disconnect = usb_serial_disconnect, |
202 | .id_table = serqt_id_table, | 202 | .id_table = serqt_id_table, |
203 | .no_dynamic_id = 1, | ||
204 | }; | 203 | }; |
205 | 204 | ||
206 | static int port_paranoia_check(struct usb_serial_port *port, | 205 | static int port_paranoia_check(struct usb_serial_port *port, |
@@ -1590,7 +1589,6 @@ static struct usb_serial_driver quatech_device = { | |||
1590 | .name = "serqt", | 1589 | .name = "serqt", |
1591 | }, | 1590 | }, |
1592 | .description = DRIVER_DESC, | 1591 | .description = DRIVER_DESC, |
1593 | .usb_driver = &serqt_usb_driver, | ||
1594 | .id_table = serqt_id_table, | 1592 | .id_table = serqt_id_table, |
1595 | .num_ports = 8, | 1593 | .num_ports = 8, |
1596 | .open = qt_open, | 1594 | .open = qt_open, |
@@ -1610,41 +1608,11 @@ static struct usb_serial_driver quatech_device = { | |||
1610 | .release = qt_release, | 1608 | .release = qt_release, |
1611 | }; | 1609 | }; |
1612 | 1610 | ||
1613 | static int __init serqt_usb_init(void) | 1611 | static struct usb_serial_driver * const serial_drivers[] = { |
1614 | { | 1612 | &quatech_device, NULL |
1615 | int retval; | 1613 | }; |
1616 | |||
1617 | dbg("%s\n", __func__); | ||
1618 | |||
1619 | /* register with usb-serial */ | ||
1620 | retval = usb_serial_register(&quatech_device); | ||
1621 | |||
1622 | if (retval) | ||
1623 | goto failed_usb_serial_register; | ||
1624 | |||
1625 | printk(KERN_INFO KBUILD_MODNAME ": " DRIVER_VERSION ":" | ||
1626 | DRIVER_DESC "\n"); | ||
1627 | |||
1628 | /* register with usb */ | ||
1629 | |||
1630 | retval = usb_register(&serqt_usb_driver); | ||
1631 | if (retval == 0) | ||
1632 | return 0; | ||
1633 | |||
1634 | /* if we're here, usb_register() failed */ | ||
1635 | usb_serial_deregister(&quatech_device); | ||
1636 | failed_usb_serial_register: | ||
1637 | return retval; | ||
1638 | } | ||
1639 | |||
1640 | static void __exit serqt_usb_exit(void) | ||
1641 | { | ||
1642 | usb_deregister(&serqt_usb_driver); | ||
1643 | usb_serial_deregister(&quatech_device); | ||
1644 | } | ||
1645 | 1614 | ||
1646 | module_init(serqt_usb_init); | 1615 | module_usb_serial_driver(serqt_usb_driver, serial_drivers); |
1647 | module_exit(serqt_usb_exit); | ||
1648 | 1616 | ||
1649 | MODULE_AUTHOR(DRIVER_AUTHOR); | 1617 | MODULE_AUTHOR(DRIVER_AUTHOR); |
1650 | MODULE_DESCRIPTION(DRIVER_DESC); | 1618 | MODULE_DESCRIPTION(DRIVER_DESC); |