Couldn't read Speaker Allocation Data Block/SADs

Jean Delvare jdelvare at
Thu Aug 29 09:48:06 UTC 2019

Hi all,

Since I connected my Dell display on my Radeon R5 240 (Oland) card over
DisplayPort instead of VGA, I get the following error messages logged at every boot:

[drm:dce_v6_0_encoder_mode_set [amdgpu]] *ERROR* Couldn't read Speaker Allocation Data Block: -2
[drm:dce_v6_0_encoder_mode_set [amdgpu]] *ERROR* Couldn't read SADs: -2

I also see them each time the display wakes up and also on VT change.
This is with kernel 5.2.9.

This was also reported as bug #107825 by Paul Menzel:

Error -2 is ENOENT (No such file or directory). The driver queries the
display for audio-related information, while my display does not have
speakers nor headset connector.

I suspect that the "error" is pretty much expected in this case and the
driver is being too verbose about it. Either the calling code should
consider -ENOENT as a non-error (11 calling sites to fix), or the
helper functions should simply return 0 when no audio-related data is
available from the display (2 functions to fix, calling sites may have
to be inspected too as some treat 0 as an error too, which seems
incorrect to me).

Option 1 seems cleaner to me, but I don't know if there could be
legitimate reasons to distinguish between no audio information block
from display and empty audio information from display in the future.

What do you think?

Jean Delvare
SUSE L3 Support

More information about the amd-gfx mailing list