In Test 10 of usbtest module, it queues multiple control messages and
thereby tests control message queuing, protocol stalls, short reads, and
fault handling. And this patch add a test case to support queue BOS control
request for USB 3.0 SPEC.

Signed-off-by: Huang Rui <ray.hu...@amd.com>
---
 drivers/usb/misc/usbtest.c | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/drivers/usb/misc/usbtest.c b/drivers/usb/misc/usbtest.c
index b415282..f3c3136 100644
--- a/drivers/usb/misc/usbtest.c
+++ b/drivers/usb/misc/usbtest.c
@@ -944,7 +944,7 @@ struct ctrl_ctx {
        int                     last;
 };
 
-#define NUM_SUBCASES   15              /* how many test subcases here? */
+#define NUM_SUBCASES   16              /* how many test subcases here? */
 
 struct subcase {
        struct usb_ctrlrequest  setup;
@@ -1218,6 +1218,15 @@ test_ctrl_queue(struct usbtest_dev *dev, struct 
usbtest_param *param)
                        }
                        expected = -EREMOTEIO;
                        break;
+               case 15:
+                       req.wValue = cpu_to_le16(USB_DT_BOS << 8);
+                       if (udev->bos)
+                               len = 
le16_to_cpu(udev->bos->desc->wTotalLength);
+                       else
+                               len = sizeof(struct usb_bos_descriptor);
+                       if (udev->speed != USB_SPEED_SUPER)
+                               expected = -EPIPE;
+                       break;
                default:
                        ERROR(dev, "bogus number of ctrl queue testcases!\n");
                        context.status = -EINVAL;
-- 
1.7.11.7


--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to