Commit a4942118 authored by Nicholas Kazlauskas's avatar Nicholas Kazlauskas Committed by Alex Deucher

drm/amd/display: Return DMUB_STATUS_OK when autoload unsupported

[Why]
Not having support for autoload isn't an error. If the DMUB firmware
doesn't support it then don't return DMUB_STATUS_INVALID.

[How]
Return DMUB_STATUS_OK when ->is_auto_load_done is NULL.
Signed-off-by: default avatarNicholas Kazlauskas <nicholas.kazlauskas@amd.com>
Reviewed-by: default avatarTony Cheng <Tony.Cheng@amd.com>
Acked-by: default avatarLeo Li <sunpeng.li@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 3c465370
...@@ -379,9 +379,12 @@ enum dmub_status dmub_srv_wait_for_auto_load(struct dmub_srv *dmub, ...@@ -379,9 +379,12 @@ enum dmub_status dmub_srv_wait_for_auto_load(struct dmub_srv *dmub,
{ {
uint32_t i; uint32_t i;
if (!dmub->hw_init || !dmub->hw_funcs.is_auto_load_done) if (!dmub->hw_init)
return DMUB_STATUS_INVALID; return DMUB_STATUS_INVALID;
if (!dmub->hw_funcs.is_auto_load_done)
return DMUB_STATUS_OK;
for (i = 0; i <= timeout_us; i += 100) { for (i = 0; i <= timeout_us; i += 100) {
if (dmub->hw_funcs.is_auto_load_done(dmub)) if (dmub->hw_funcs.is_auto_load_done(dmub))
return DMUB_STATUS_OK; return DMUB_STATUS_OK;
...@@ -397,9 +400,12 @@ enum dmub_status dmub_srv_wait_for_phy_init(struct dmub_srv *dmub, ...@@ -397,9 +400,12 @@ enum dmub_status dmub_srv_wait_for_phy_init(struct dmub_srv *dmub,
{ {
uint32_t i = 0; uint32_t i = 0;
if (!dmub->hw_init || !dmub->hw_funcs.is_phy_init) if (!dmub->hw_init)
return DMUB_STATUS_INVALID; return DMUB_STATUS_INVALID;
if (!dmub->hw_funcs.is_phy_init)
return DMUB_STATUS_OK;
for (i = 0; i <= timeout_us; i += 10) { for (i = 0; i <= timeout_us; i += 10) {
if (dmub->hw_funcs.is_phy_init(dmub)) if (dmub->hw_funcs.is_phy_init(dmub))
return DMUB_STATUS_OK; return DMUB_STATUS_OK;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment