Re: [PATCH v4 1/4] media: uvcvideo: report AUTO_UPDATE controls as volatile
From: Michael Jordan
Date: Fri Oct 02 2026 - 08:45:14 EST
Hi Hans,
Thanks for pointing me to `v4l2_ctrl_auto_cluster()`. I’m trying to
understand how to apply that model correctly here.
>From UVC 1.5 §4.1.2, Table 4-3, I understand that GET_INFO distinguishes
“Disabled due to automatic mode” (D2, a state bit) from “Autoupdate
Control” (D3, a capability bit). That helps me understand why AUTO_UPDATE
alone should not determine the flags for controls with an auto/manual
master.
The Tiny 2 and Tail 2 pan/tilt case is what I’m unsure about. These are
the only cameras I have available to test. On both, writing the V4L2
pan/tilt controls sends a target position to the camera. With the
AUTO_UPDATE fixups applied, subsequent V4L2 reads retrieve values from
the camera that follow its movement towards that target, rather than
immediately returning the commanded target. I observed this with tracking
disabled as well. The pan/tilt mappings in uvcvideo have no `master_id`.
This is what I observed on these devices; I’m not assuming the
specification requires live position feedback. In particular,
§4.2.2.1.14 describes pan/tilt “settings,” and both cameras advertise
UVC 1.00.
Would the appropriate approach be to follow the mode-dependent flag
handling you described for controls with an auto/manual master, and use
`VOLATILE | EXECUTE_ON_WRITE` for writable PTZ controls exhibiting this
behavior? Or am I misunderstanding how that read/write behavior should
be represented in V4L2?
The v5 I sent fixes the event-notification issue but retains the blanket
flag mapping, so your feedback still applies.
Thanks for helping me understand this.
Michael