Skip to content
  • Simon Ser's avatar
    lib/igt_alsa: Check that ELD comes from IGT · bf56a97b
    Simon Ser authored
    
    
    Prior to this commit, audio tests play sound on all HDMI/DisplayPort PCM
    devices (by filtering devices with the "HDMI" prefix). This had several issues.
    First, the PCM device → connector mapping via the ELD wasn't checked. Second,
    it makes debugging more complicated: if ALSA doesn't detect the screen, we just
    get a Chamelium failure (because it doesn't receive any audio stream). Third,
    it would play sounds on real screens too (not only Chamelium) and this could
    theorically damage bad hardware (though this is just speculation).
    
    To mitigate this issue, check the monitor name of PCM devices we open and only
    keep them if it's an IGT EDID (ie. connected to the Chamelium board).
    
    Note that while this is a good improvement, it isn't a complete fix: the ELD
    is only exposed by the HDA Intel driver. This means non-IGT PCM devices won't
    be filtered out on non-Intel hardware. There is no driver-agnostic way to get
    the screen name, I'm afraid.
    
    Cc: Martin Peres <martin.peres@linux.intel.com>
    Signed-off-by: default avatarSimon Ser <simon.ser@intel.com>
    Signed-off-by: default avatarArkadiusz Hiler <arkadiusz.hiler@intel.com>
    Reviewed-by: default avatarMartin Peres <martin.peres@linux.intel.com>
    bf56a97b