diff options
author | Felipe Balbi <felipe.balbi@linux.intel.com> | 2017-06-08 12:16:18 +0200 |
---|---|---|
committer | Felipe Balbi <felipe.balbi@linux.intel.com> | 2017-06-13 12:21:05 +0200 |
commit | 9b0a1f95c4b48a18ae95e204b1bcde47436b0248 (patch) | |
tree | a40d2fca202d31bffbbe8f5b2907ef9304b6a5d7 /drivers/usb | |
parent | Documentation: ABI: sysfs-class-udc: remove duplicated entry (diff) | |
download | linux-9b0a1f95c4b48a18ae95e204b1bcde47436b0248.tar.xz linux-9b0a1f95c4b48a18ae95e204b1bcde47436b0248.zip |
usb: dwc3: ep0: make sure wValue is 0 on GetStatus()
We don't (yet) support PTM_STATUS messages so let's not reply to them
erroneously.
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
Diffstat (limited to 'drivers/usb')
-rw-r--r-- | drivers/usb/dwc3/ep0.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/usb/dwc3/ep0.c b/drivers/usb/dwc3/ep0.c index 8cfce8425101..827e376bfa97 100644 --- a/drivers/usb/dwc3/ep0.c +++ b/drivers/usb/dwc3/ep0.c @@ -319,10 +319,16 @@ static int dwc3_ep0_handle_status(struct dwc3 *dwc, { struct dwc3_ep *dep; u32 recip; + u32 value; u32 reg; u16 usb_status = 0; __le16 *response_pkt; + /* We don't support PTM_STATUS */ + value = le16_to_cpu(ctrl->wValue); + if (value != 0) + return -EINVAL; + recip = ctrl->bRequestType & USB_RECIP_MASK; switch (recip) { case USB_RECIP_DEVICE: |