The new device naming introduced by commit 859448f01033b40feebf9a0aab467ba57a655b5b breaks HDMI audio if the ELD lookup fails.
This happens e.g. with an older Sharp Aquos TV (from 2008) connected to an AMD Radeon HD 7450 graphics card with Linux kernel 5.18.1.
Adding some debug statements to control/eld.c shows it fails on the check for l == 0, with l being 0, cinfo.count being 24. A hexdump of the 24 bytes in eld is 10 00 05 00 00 10 00 01 00 00 00 00 00 00 00 00 00 00 00 00 09 07 01 00.
The EDID info from the graphics card in sysfs makes sense though:
Since an error code (-EIO) is passed on from __snd_pcm_info_eld_fixup, the HDMI audio output goes away altogether instead of just keeping the old name.
Will send a PR to keep the audio working, but it would be nice to actually make the new naming work as well.
The new device naming introduced by commit 859448f01033b40feebf9a0aab467ba57a655b5b breaks HDMI audio if the ELD lookup fails.
This happens e.g. with an older Sharp Aquos TV (from 2008) connected to an AMD Radeon HD 7450 graphics card with Linux kernel 5.18.1. Adding some debug statements to control/eld.c shows it fails on the check for
l == 0
, withl
being0
,cinfo.count
being24
. A hexdump of the 24 bytes in eld is10 00 05 00 00 10 00 01 00 00 00 00 00 00 00 00 00 00 00 00 09 07 01 00
.The EDID info from the graphics card in sysfs makes sense though:
Since an error code (
-EIO
) is passed on from__snd_pcm_info_eld_fixup
, the HDMI audio output goes away altogether instead of just keeping the old name.Will send a PR to keep the audio working, but it would be nice to actually make the new naming work as well.