drm/amd/display: Wait for DMCUB to finish loading before executing commands
authorNicholas Kazlauskas <nicholas.kazlauskas@amd.com>
Tue, 28 Jan 2020 20:15:10 +0000 (15:15 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 25 Feb 2020 16:03:15 +0000 (11:03 -0500)
commit20a5e52f37e71e51defb09f8fd6ad5d84bcd6c90
tree0414f42da911a7cc2da8fbeb3fcf33bdbb61ca82
parent3c9de4da021c7c2aaa421b5c37057890348bd58a
drm/amd/display: Wait for DMCUB to finish loading before executing commands

[Why]
When we execute the first command for ASIC_INIT for command table
offloading we can hit a timing scenario such that the interrupts
for the inbox wptr haven't been enabled yet and the first command
is ignored until the second command is sent.

[How]
This happens when either the SCRATCH0 is already the correct status
code or autoload check is unsupported.

Clear SCRATCH0 during reset.

Also ensure that we don't accidentally reset the ASIC again in case
of a hang by clearing GPINT while we're at it.

Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
Reviewed-by: Chris Park <Chris.Park@amd.com>
Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
Acked-by: Harry Wentland <harry.wentland@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dmub/src/dmub_dcn20.c