Hi Veeraiyan, > From: Veeraiyan Chidambaram, Sent: Tuesday, September 10, 2019 12:46 AM <snip> > > 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 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@xxxxxxxxxxxx> > Signed-off-by: Eugeniu Rosca <erosca@xxxxxxxxxxxxxx> Thank you for the patch! Reviewed-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@xxxxxxxxxxx> And, I tested this patch on my environment [1] and works correctly. So, Tested-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@xxxxxxxxxxx> [1] - Two R-Car Gen3 boards. - Connected a usb cable to each CN9. -- Use g_mass_storage.ko. Best regards, Yoshihiro Shimoda