On 11/06/2026 09:01, Hans Verkuil wrote:
> I saw that you added a quirk for this device in this patch series:
>
> https://lore.kernel.org/all/[email protected]/
>
> Should we add a quirk for this as well? It's not worth it if that's a lot of 
> work,
> but if it is easy to add, then I think that's the better approach for this.

Hi Hans,

thanks for the suggestion. A quirk would indeed be easy to add.
drm_dp_cec.c already reads the branch ident for its status debugfs,
so gating the relaxed ESI check on a DPCD quirk entry is a handful
of lines.

However, while validating which devices such a quirk should cover,
I found a firmware problem that makes me withdraw this patch
instead.

I tested all three Synaptics VMM7100 based devices I have:

- Club3D CAC-2505 (branch ID "SYNAq", FW 7.1): CEC works with my
  patch. This is the device the patch was written for.
- A USB-C to HDMI dongle with the macOS 4K120 firmware (branch ID
  "SYNAq", FW 7.2): announces CEC capability but never services the
  tunneling registers. TX requests and incoming bus traffic are
  both ignored.
- A Thunderbolt 4 dock (branch ID "SYNAa", FW 6.5): same dead stub.

On the one working device the firmware causes an audible audio
dropout of roughly 100 ms for every CEC message it handles while
CEC tunneling is enabled.
This affects its own transmissions, directed traffic and even
broadcasts it does not ack.
My LG TV broadcasts its vendor ID and polls for playback devices
every 14 seconds, around the clock.
With a configured CEC adapter that means a dropout every few
seconds during audio playback.
I verified this by correlating heard dropouts against monitored
CEC messages, 9 out of 9 matched to the second with no false
positives.
With tunneling disabled the same bus traffic causes no dropouts
at all.

The dropout length matches the frame time on the CEC wire and AUX
stays fully responsive during the stall.
It also reproduces with the kernel completely uninvolved when I
drive the DPCD tunneling registers directly from userspace.
So the stall happens inside the dongle MCU while it bit-bangs the
CEC line and I see no host-reachable way to fix or mitigate it.

That changes the picture for the patch.
The only known device family with working CEC tunneling has this
defect.
Merging it would hand users working CEC plus broken audio, and
setups like Kodi configure CEC automatically, so exactly those
users would then have to disable CEC again to get clean audio.
That is a bad trade, even behind a quirk.

My guess is that Synaptics never shipped the CEC firmware glue
before.
The CAC-2505 is a recent product and probably carries the newest
firmware branch, the other two devices are older designs.
If a future firmware shows up with working CEC and without the
audio stall, I will resubmit this together with the device quirk
you suggested.

Sorry for the noise, and thanks for the review.

Alexander

Reply via email to