]> Gentwo Git Trees - linux/.git/commit
media: uvcvideo: Run uvc_ctrl_init_ctrl for all controls
authorRicardo Ribalda <ribalda@chromium.org>
Mon, 18 Aug 2025 20:15:38 +0000 (20:15 +0000)
committerHans Verkuil <hverkuil+cisco@kernel.org>
Sat, 13 Sep 2025 16:35:02 +0000 (18:35 +0200)
commit04ddfcdb711d94d05a5b4c8a8c3f9c283bbb518a
tree856d6528eb6978d913d5e17a4ce55b0a32f46860
parentc01ae95eeb145892f9ed325a5947ed2f108170c4
media: uvcvideo: Run uvc_ctrl_init_ctrl for all controls

The function uvc_ctrl_init_ctrl() is called for every control for every
entity, but it exits early if the entity is a extension unit. The comment
claims that this is done to avoid querying XU controls during probe.

We only query a control if its entity GUIDs and index matches the
uvc_ctrls list. There are only controls for the following GUIDs:
UVC_GUID_UVC_PROCESSING, UVC_GUID_UVC_CAMERA and
UVC_GUID_EXT_GPIO_CONTROLLER.

In other words, XU controls will not be queried even without this
condition.

In future patches we want to add ChromeOS XU controls that need to the
initialized. We will make sure that all cameras with ChromeOS XU can
be queried at probe time.

Signed-off-by: Ricardo Ribalda <ribalda@chromium.org>
Reviewed-by: Hans de Goede <hansg@kernel.org>
Signed-off-by: Hans de Goede <hansg@kernel.org>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Hans Verkuil <hverkuil+cisco@kernel.org>
drivers/media/usb/uvc/uvc_ctrl.c