Subject: Re: [PATCH] drm/nouveau/disp: don't reject HDMI config on cards without SCDC
Hi Lyude, Happy to - that was my intent, and I'd rather the credit sit with Giuseppe. The reason I sent it under my own authorship is that the public list archive I could reach redacts his email address, so I had no way to set From: and Signed-off-by: correctly. If you can point me at it, or CC him on this thread, I'll resend as: From: Giuseppe Ranieri <...> Signed-off-by: Giuseppe Ranieri <...> Co-authored-by: Tano Dzhinski <[email protected]> Signed-off-by: Tano Dzhinski <[email protected]> For what it's worth on the testing side: I hit this on a GK104 (GTX 670MX) against a BenQ PD2700U and an EW2790U, and the uoutp.c hunk is what restores audio there. I'll add a Tested-by to the v2. Thanks, Tano На чт, 17.09.2026 г. в 19:28 <[email protected]> написа: > Hi - apologies for missing the patch previously, and thank you for > bringing this to my attention! > > Would you mind re-sending with the original authorship + a Co-authored- > by tag for yourself to make sure we give the original author credit? > > On Thu, 2026-09-17 at 13:50 +0000, Tano Dzhinski wrote: > > nv50_hdmi_enable() passes the sink's SCDC capability from its EDID > > straight through to nvif_outp_hdmi(). On pre-Maxwell-2 cards there is > > no > > hdmi->scdc callback, so nvkm_uoutp_mthd_hdmi() rejects the whole > > configuration with -EINVAL, and nv50_hdmi_enable() returns before > > hdmi->ctrl() runs and before the AVI and VSI infoframes are sent. > > > > The result on such a card driving an SCDC-capable HDMI 2.0 sink is > > that > > HDMI audio silently stops working. Video is unaffected, and nothing > > is > > logged, which makes the failure hard to attribute. > > > > SCDC is optional, and the hdmi->scdc() call further down is already > > guarded against a missing callback. Requesting it on a card that > > cannot > > do it need not invalidate the rest of the HDMI configuration, so drop > > that term from the condition and let the existing guard skip SCDC > > alone. > > > > Giuseppe Ranieri posted a fix for this to the nouveau list on > > 2026-01-17, which received no review: > > https://ratatoskr.run/nouveau/2026/01/16963412 > > > > Fixes: 6c6abab20b99 ("drm/nouveau/disp: add output hdmi config > > method") > > Signed-off-by: Tano Dzhinski <[email protected]> > > --- > > drivers/gpu/drm/nouveau/nvkm/engine/disp/uoutp.c | 3 +-- > > 1 file changed, 1 insertion(+), 2 deletions(-) > > > > diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/uoutp.c > > b/drivers/gpu/drm/nouveau/nvkm/engine/disp/uoutp.c > > index 377d0e0cef84..9887b3898505 100644 > > --- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/uoutp.c > > +++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/uoutp.c > > @@ -253,8 +253,7 @@ nvkm_uoutp_mthd_hdmi(struct nvkm_outp *outp, void > > *argv, u32 argc) > > > > if (!ior->func->hdmi || > > args->v0.max_ac_packet > 0x1f || > > - args->v0.rekey > 0x7f || > > - (args->v0.scdc && !ior->func->hdmi->scdc)) > > + args->v0.rekey > 0x7f) > > return -EINVAL; > > > > if (!args->v0.enable) { > >
