mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-08 11:50:43 +09:00
If we use usb gadget as uvc and adb composite function, the adb will be disconnected if the uvc camera apk is closed. I can reproduce this issue by the following steps on rk3399/rk3288 platforms. 1. Set usb gadget as uvc and adb composite function, and open uvc camera apk on rk3399/rk3288 platforms. 2. Connect usb to PC, and use adb shell; 3. Close the uvc camera apk; And then, the adb will also be disconnected. It's because that when close the uvc camera apk, the userspace calls v4l2_release -> uvc_v4l2_release -> uvc_function_disconnect -> usb_gadget_deactivate -> usb_gadget_disconnect -> pullup(gadget, 0), this cause usb controller disconnect the usb connection. This patch adds a uvc_enabled flag to indicate that usb is connected, don't call pullup(gadget, 0) to disconnet usb if we only close uvc camera apk but not plug out usb cable. Change-Id: I0cc5ce8a24e8e06e0dc9215dfd1b92ef702e4311 Signed-off-by: William Wu <william.wu@rock-chips.com>