diff options
author | Nicholas Kazlauskas <nicholas.kazlauskas@amd.com> | 2024-05-15 14:53:56 -0400 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2024-06-14 15:20:20 -0400 |
commit | 0db66572747a789922e8137904e8b4c39d9b94f6 (patch) | |
tree | 3bfc862f56adac4ef3cce1da8d9df605f0cb1538 /drivers/gpu/drm/amd/display/dmub/src/dmub_srv_stat.c | |
parent | b95fa494d6b74c30eeb4a50481aa1041c631754e (diff) | |
download | linux-0db66572747a789922e8137904e8b4c39d9b94f6.tar.gz linux-0db66572747a789922e8137904e8b4c39d9b94f6.tar.bz2 linux-0db66572747a789922e8137904e8b4c39d9b94f6.zip |
drm/amd/display: Add outbox notification support for HPD redetect
[Why]
HPD sense changes can occur during low power states and need to be
notified from firmware to driver. Upon notification the hotplug
redetection routines should execute.
[How]
Add Support in DMUB srv and DMUB srv stat for receiving these
notifications. DM can hook them up and process the HPD redetection
once received.
Reviewed-by: Duncan Ma <duncan.ma@amd.com>
Acked-by: Zaeem Mohamed <zaeem.mohamed@amd.com>
Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/display/dmub/src/dmub_srv_stat.c')
-rw-r--r-- | drivers/gpu/drm/amd/display/dmub/src/dmub_srv_stat.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/display/dmub/src/dmub_srv_stat.c b/drivers/gpu/drm/amd/display/dmub/src/dmub_srv_stat.c index 74189102eaec..cce887cefc01 100644 --- a/drivers/gpu/drm/amd/display/dmub/src/dmub_srv_stat.c +++ b/drivers/gpu/drm/amd/display/dmub/src/dmub_srv_stat.c @@ -113,6 +113,12 @@ enum dmub_status dmub_srv_stat_get_notification(struct dmub_srv *dmub, notify->result = DPIA_BW_ALLOC_CAPS_CHANGED; } break; + case DMUB_OUT_CMD__HPD_SENSE_NOTIFY: + notify->type = DMUB_NOTIFICATION_HPD_SENSE_NOTIFY; + dmub_memcpy(¬ify->hpd_sense_notify, + &cmd.hpd_sense_notify.data, + sizeof(cmd.hpd_sense_notify.data)); + break; default: notify->type = DMUB_NOTIFICATION_NO_DATA; break; |