linux-stable/drivers/usb/misc
Manu Gautam 9841f37a1c usb: ehci: Add support for SINGLE_STEP_SET_FEATURE test of EHSET
The USB Embedded High-speed Host Electrical Test (EHSET) defines the
SINGLE_STEP_SET_FEATURE test as follows:

1) The host enumerates the test device with VID:0x1A0A, PID:0x0108
2) The host sends the SETUP stage of a GetDescriptor(Device)
3) The device ACKs the request
4) The host issues SOFs for 15 seconds allowing the test operator to
   raise the scope trigger just above the SOF voltage level
5) The host sends the IN packet
6) The device sends data in response, triggering the scope
7) The host sends an ACK in response to the data

This patch adds additional handling to the EHCI hub driver and allows
the EHSET driver to initiate this test mode by issuing a a SetFeature
request to the root hub with a Test Selector value of 0x06. From there
it mimics ehci_urb_enqueue() but separately submits QTDs for the
SETUP and DATA/STATUS stages in order to insert a delay in between.

Signed-off-by: Manu Gautam <mgautam@codeaurora.org>
Acked-by: Alan Stern <stern@rowland.harvard.edu>
[jackp@codeaurora.org: imported from commit c2084930 on codeaurora.org;
 minor cleanup and updated author email]
Signed-off-by: Jack Pham <jackp@codeaurora.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-08-12 13:13:32 -07:00
..
sisusbvga USB: misc: Add Manhattan Hi-Speed USB DVI Converter to sisusbvga 2013-07-22 11:29:26 -07:00
adutux.c USB: adutux: remove direct calls to printk() 2013-07-23 16:19:57 -07:00
appledisplay.c usb/misc/appledisplay: Add 24" LED Cinema display 2013-04-03 11:38:53 -07:00
cypress_cy7c63.c USB: convert drivers/usb/* to use module_usb_driver() 2011-11-18 09:34:02 -08:00
cytherm.c USB: convert drivers/usb/* to use module_usb_driver() 2011-11-18 09:34:02 -08:00
ehset.c usb: ehci: Add support for SINGLE_STEP_SET_FEATURE test of EHSET 2013-08-12 13:13:32 -07:00
emi26.c USB: emi26.c: remove err() usage 2012-04-20 16:53:37 -07:00
emi62.c USB: emi62: remove __devinit* from the struct usb_device_id table 2012-08-17 17:50:45 -07:00
ezusb.c Merge 3.7-rc3 into usb-next. 2012-10-29 09:04:39 -07:00
ftdi-elan.c module_param: make bool parameters really bool (drivers & misc) 2012-01-13 09:32:20 +10:30
idmouse.c USB: idmouse.c: remove dbg() usage 2012-05-01 21:33:58 -07:00
iowarrior.c treewide: Fix typo in printks 2013-04-12 15:21:36 +02:00
isight_firmware.c Merge branch 'usb-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb 2012-01-09 12:09:47 -08:00
Kconfig usb: misc: usb3503: Convert to regmap 2013-08-12 12:20:26 -07:00
ldusb.c USB: ldusb: remove custom dbg_info() macro 2013-07-23 16:10:02 -07:00
legousbtower.c USB: legotower: remove direct calls to printk() 2013-07-23 16:10:02 -07:00
Makefile usb: misc: EHSET Test Fixture device driver for host compliance 2013-07-25 11:49:30 -07:00
rio500.c drivers/usb/misc/rio500.c: removes unnecessary semicolon 2012-09-13 21:48:48 -07:00
rio500_usb.h
trancevibrator.c USB: convert drivers/usb/* to use module_usb_driver() 2011-11-18 09:34:02 -08:00
usb3503.c usb: misc: usb3503: Support operation with no I2C control 2013-08-12 12:20:27 -07:00
usb_u132.h
usblcd.c USB: usblcd.c: remove dbg() usage 2012-05-01 21:34:03 -07:00
usbled.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid 2012-01-10 10:48:28 -08:00
usbsevseg.c USB: usbsevseg: fix max length 2012-01-24 12:08:36 -08:00
usbtest.c USB: simplify the interface of usb_get_status() 2013-07-31 17:29:02 -07:00
uss720.c treewide: Fix typos in printk and comment 2013-03-18 14:57:53 +01:00
yurex.c yurex: don't wank with fasync on ->release()... 2013-04-29 15:41:43 -04:00