lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID:
 <TYUPR06MB62176DB2198FF5E5AF5825DED2B12@TYUPR06MB6217.apcprd06.prod.outlook.com>
Date: Wed, 31 Jul 2024 08:46:25 +0000
From: 胡连勤 <hulianqin@...o.com>
To: "gregkh@...uxfoundation.org" <gregkh@...uxfoundation.org>
CC: "akpm@...ux-foundation.org" <akpm@...ux-foundation.org>,
	"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
	opensource.kernel <opensource.kernel@...o.com>
Subject:
 答复: [PATCH v1] usb: gadget: uvc: Fixed the abnormal enumeration problem of mobile phone as UVC camera.

Hello linux community expert:

The following are answers to several questions about this patch:

1.Why does the dwc3 controller matter here?  What about other controllers?
 We have tested that both the dwc3 controller and the mtu3 controller 
 have such problems under the uvc function combination.

2.Why was this set to be true to start with?  What commit id does this
fix?  Should it be backported to older kernels, and if so, how far back?
 Set to true for commit records:
 https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=f277bf27cf5cd56bcd1c4b95ae140f61680a6e83
 
 It seems that the f_uvc driver logic is optimized, and the code logic is more reasonable.
 
 kernel5.10, kernel 5.15, kernel6.1, and kernel6.6 versions all need to be synchronized, 
 From the current point of view, these kernel versions will be compatible with Android 14 and newer versions.

3.What user-visable changes does this patch cause?  What used to work that
now will not as that was added for a reason, right?
 After merging this patch, the webcam function will become normal, 
 The webcam function seems to be used for the first time on Android 15.

Thanks

-----邮件原件-----
发件人: 胡连勤 
发送时间: 2024年7月31日 16:46
收件人: gregkh@...uxfoundation.org
抄送: akpm@...ux-foundation.org; linux-kernel@...r.kernel.org; opensource.kernel <opensource.kernel@...o.com>
主题: [PATCH v1] usb: gadget: uvc: Fixed the abnormal enumeration problem of mobile phone as UVC camera.

When the phone is connected to the computer to use the webcam function, the phone needs to be enumerated as a uvc camera function.

Because uvc->func.bind_deactivated is configured as true in the f_uvc driver uvc_alloc function, the usb_gadget_deactivate function is called during the execution of the configfs_composite_bind function to set gadget->deactivated to true, which in turn causes the usb_gadget_connect_locked function to fail to call the corresponding controller pullup operation (such as: dwc3_gadget_pullup, mtu3_gadget_pullup), and the USB cannot be enumerated normally under the uvc function combination.

After applying this patch, we measured that under the uvc function, the dwc3 controller and the mtu3 controller can be enumerated normally, and the webcam function is normal.

Therefore, modify the f_uvc driver to remove the operation of setting
uvc->func.bind_deactivated to true.

Signed-off-by: Lianqin Hu <hulianqin@...o.com>
---
v1:
  - Modify description information.
---
 drivers/usb/gadget/function/f_uvc.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/usb/gadget/function/f_uvc.c b/drivers/usb/gadget/function/f_uvc.c
index 40187b7112e7..6d63bea14211 100644
--- a/drivers/usb/gadget/function/f_uvc.c
+++ b/drivers/usb/gadget/function/f_uvc.c
@@ -1107,7 +1107,6 @@ static struct usb_function *uvc_alloc(struct usb_function_instance *fi)
 	uvc->func.disable = uvc_function_disable;
 	uvc->func.setup = uvc_function_setup;
 	uvc->func.free_func = uvc_free;
-	uvc->func.bind_deactivated = true;
 
 	return &uvc->func;
 
--
2.39.0


-----邮件原件-----
发件人: gregkh@...uxfoundation.org <gregkh@...uxfoundation.org> 
发送时间: 2024年7月31日 15:28
收件人: 胡连勤 <hulianqin@...o.com>
抄送: akpm@...ux-foundation.org; linux-kernel@...r.kernel.org; opensource.kernel <opensource.kernel@...o.com>
主题: Re: [PATCH] usb: gadget: uvc: Fixed the abnormal enumeration problem of mobile phone as UVC camera.

On Wed, Jul 31, 2024 at 06:48:57AM +0000, 胡连勤 wrote:
> From c464558a70e1ca36c0e4bd0a121fb50565b44610 Mon Sep 17 00:00:00 2001
> From: Lianqin Hu <hulianqin@...o.com>
> Date: Wed, 31 Jul 2024 14:21:52 +0800
> Subject: [PATCH] usb: gadget: uvc: Fixed the abnormal enumeration 
> problem of  mobile phone as UVC camera.

Why is this in the body of the email?  Please fix up, and also, properly handle this being a new version of an old submission as the documentation asks you to.

thanks,

greg k-h

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ