![]() [ Upstream commit 902806baf3c1e8383c1fe3ff0b6042b8cb5c2707 ] AUDIO_UPDATE bit (Bit 5 of MAIN register 0x4A) needs to be set to 1 while updating Audio InfoFrame information and then set to 0 when done. Otherwise partially updated Audio InfoFrames could be sent out. Two cases where this rule were not followed are fixed: - In adv7511_hdmi_hw_params() make sure AUDIO_UPDATE bit is updated before/after setting ADV7511_REG_AUDIO_INFOFRAME. - In audio_startup() use the correct register for clearing AUDIO_UPDATE bit. The problem with corrupted audio infoframes were discovered by letting a HDMI logic analyser check the output of ADV7535. Note that this patchs replaces writing REG_GC(1) with REG_INFOFRAME_UPDATE. Bit 5 of REG_GC(1) is positioned within field GC_PP[3:0] and that field doesn't control audio infoframe and is read- only. My conclusion therefore was that the author if this code meant to clear bit 5 of REG_INFOFRAME_UPDATE from the very beginning. Tested-by: Biju Das <biju.das.jz@bp.renesas.com> Fixes: 53c515befe28 ("drm/bridge: adv7511: Add Audio support") Signed-off-by: Stefan Ekenberg <stefan.ekenberg@axis.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Link: https://patchwork.freedesktop.org/patch/msgid/20241119-adv7511-audio-info-frame-v4-1-4ae68e76c89c@axis.com Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Signed-off-by: Sasha Levin <sashal@kernel.org> |
||
---|---|---|
.. | ||
adv7511 | ||
analogix | ||
cadence | ||
synopsys | ||
cdns-dsi.c | ||
chrontel-ch7033.c | ||
display-connector.c | ||
Kconfig | ||
lontium-lt9611.c | ||
lvds-codec.c | ||
Makefile | ||
megachips-stdpxxxx-ge-b850v3-fw.c | ||
nwl-dsi.c | ||
nwl-dsi.h | ||
nxp-ptn3460.c | ||
panel.c | ||
parade-ps8622.c | ||
parade-ps8640.c | ||
sii902x.c | ||
sii9234.c | ||
sil-sii8620.c | ||
sil-sii8620.h | ||
simple-bridge.c | ||
tc358762.c | ||
tc358764.c | ||
tc358767.c | ||
tc358768.c | ||
tc358775.c | ||
thc63lvd1024.c | ||
ti-sn65dsi86.c | ||
ti-tfp410.c | ||
ti-tpd12s015.c |