usb: f_gsi: Send zero length packet for MBIM/GPS on cable connect
Qmuxd bridge daemon is opening /dev/gps before USB enumerated with
USB composition having GPS interface as part of it. This daemon
performs EP_LOOKUP ioctl and encounters failure. It keeps retrying
for some iterations, and later goes into sleep and doesn't perform
any IOs. This results into no GPS related IOs between daemon and
host side QMUXD driver. Hence this change sends zero length packet
for MBIM (as QBI also faces same issue) and GPS interface when
USB cable is connected and those interfaces are part of USB
composition. Both QBI and Qmuxd bridge daemon are now wait for zero
length packet as indication for change in USB cable status, and
queries using GSI_MBIM_GPS_USB_STATUS IOCTL (newly added). Based on
this IOCTL related response, both daemons performs read/write with
created control devices.
Change-Id: Ib47443fe0e473ab4e27facb3f2927b8c13966158
Signed-off-by:
Mayank Rana <mrana@codeaurora.org>
Loading
Please register or sign in to comment