drm/amd/display: Set enabled to false at start of audio disable
authorNicholas Kazlauskas <nicholas.kazlauskas@amd.com>
Wed, 3 Jul 2019 14:02:39 +0000 (10:02 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 23 Jul 2019 20:27:09 +0000 (15:27 -0500)
commit92e6475ae0a0383b012eb21c1aaf0e5456b1a3d9
tree307b2fd5adf612e41ec9ee567daac0ff4f47da89
parent1bcff32679f60fe2387f63f22b8b35375052bcb0
drm/amd/display: Set enabled to false at start of audio disable

[Why]
In an effort to stop redundant calls to dce110_disable_audio_stream
the audio->enabled flag was added to the audio resource struct. While
this state probably shouldn't have been tracked on the audio struct
itself it still works fine for some sequences.

However, it does not work for cases where we're freeing the audio
resource (such as hotplugs) or when dynamic audio is enabled.

In these cases the pipe_ctx->stream_res.audio = NULL before we can
set audio->enabled = false. The next time we acquire the audio resource
such as on hotplug the audio will not be enabled for the stream since
DC thinks it's still enabled.

Audio state tracking should cover this sequence.

[How]
Set audio->enabled = false at the start as long as we have
pipe_ctx->stream_res.audio.

Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
Reviewed-by: Zhan Liu <Zhan.Liu@amd.com>
Acked-by: Leo Li <sunpeng.li@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c