drm/amd/pm: fix runpm hang when amdgpu loaded prior to sound driver
authorEvan Quan <evan.quan@amd.com>
Thu, 9 Sep 2021 03:01:00 +0000 (11:01 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Thu, 16 Sep 2021 13:56:24 +0000 (09:56 -0400)
commit8b514e898ee7f861eb8863c647d258f71053af40
tree6a71dd55b79026cb2d1f57f7125deed4a52d1b76
parent93def70cf8b23de5049d101b7dd5367864694bd3
drm/amd/pm: fix runpm hang when amdgpu loaded prior to sound driver

Current RUNPM mechanism relies on PMFW to master the timing for BACO
in/exit. And that needs cooperation from sound driver for dstate
change notification for function 1(audio). Otherwise(on sound driver
missing), BACO cannot be kicked in correctly and hang will be observed
on RUNPM exit.

By switching back to legacy message way on sound driver missing,
we are able to fix the runpm hang observed for the scenario below:
amdgpu driver loaded -> runpm suspend kicked -> sound driver loaded

Signed-off-by: Evan Quan <evan.quan@amd.com>
Reported-and-tested-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Lijo Lazar <lijo.lazar@amd.com>
Reviewed-by: Guchun Chen <guchun.chen@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Cc: stable@vger.kernel.org
drivers/gpu/drm/amd/pm/swsmu/smu11/navi10_ppt.c
drivers/gpu/drm/amd/pm/swsmu/smu11/sienna_cichlid_ppt.c
drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c
drivers/gpu/drm/amd/pm/swsmu/smu_cmn.h