aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/cdns3/cdns3-ti.c
diff options
context:
space:
mode:
authorVeeraiyan Chidambaram <veeraiyan.chidambaram@in.bosch.com>2019-09-09 12:54:41 +0200
committerFelipe Balbi <felipe.balbi@linux.intel.com>2019-10-22 10:31:08 +0300
commitf2b06c953911276eaa25259f9b77e717d78392b2 (patch)
tree759ceac3fd7c4a54b72a069b0d271d574188f0f7 /drivers/usb/cdns3/cdns3-ti.c
parentusb: renesas_usbhs: simplify usbhs_status_get_device_state() (diff)
downloadlinux-dev-f2b06c953911276eaa25259f9b77e717d78392b2.tar.xz
linux-dev-f2b06c953911276eaa25259f9b77e717d78392b2.zip
usb: renesas_usbhs: add suspend event support in gadget mode
When R-Car Gen3 USB 2.0 is in Gadget mode, if host is detached an interrupt will be generated and Suspended state bit is set in interrupt status register. Interrupt handler will call driver->suspend(composite_suspend) if suspended state bit is set. composite_suspend will call ffs_func_suspend which will post FUNCTIONFS_SUSPEND and will be consumed by user space application via /dev/ep0. To be able to detect host detach, extend the DVSQ_MASK to cover the Suspended bit of the DVSQ[2:0] bitfield from the Interrupt Status Register 0 (INTSTS0) register and perform appropriate action in the DVST interrupt handler (usbhsg_irq_dev_state). Without this commit, disconnection of the phone from R-Car H3 ES2.0 Salvator-X CN9 port is not recognized and reverse role switch does not not happen. If phone is connected again it does not enumerate. With this commit, disconnection will be recognized and reverse role switch will happen by a user space application. If phone is connected again it will enumerate properly and will become visible in the output of 'lsusb'. Signed-off-by: Veeraiyan Chidambaram <veeraiyan.chidambaram@in.bosch.com> Signed-off-by: Eugeniu Rosca <erosca@de.adit-jv.com> Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
Diffstat (limited to 'drivers/usb/cdns3/cdns3-ti.c')
0 files changed, 0 insertions, 0 deletions