summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/display/dmub/dmub_srv.h
diff options
context:
space:
mode:
authorNicholas Kazlauskas <nicholas.kazlauskas@amd.com>2021-11-02 14:27:30 -0400
committerAlex Deucher <alexander.deucher@amd.com>2021-11-22 14:45:01 -0500
commita53b554b56e0326edb2ddbbf8c76743191f7819c (patch)
tree9be0deedd1d747c27c284b8a606493a09e553854 /drivers/gpu/drm/amd/display/dmub/dmub_srv.h
parentc09bb36dd1230838d49a5ebf409df804a5ebfdaa (diff)
downloadlinux-a53b554b56e0326edb2ddbbf8c76743191f7819c.tar.gz
linux-a53b554b56e0326edb2ddbbf8c76743191f7819c.tar.bz2
linux-a53b554b56e0326edb2ddbbf8c76743191f7819c.zip
drm/amd/display: Only flush delta from last command execution
[Why] We're currently flushing commands that had been previously been flushed or are currently being processed by the DMCUB when we don't immediately wait for idle after command execution. [How] Avoiding reflushing the data by keeping track of the last wptr. We'll treat this as the actual rptr by creating a copy of the inbox and modifying the copy's rptr. Reviewed-by: Eric Yang <Eric.Yang2@amd.com> Acked-by: Wayne Lin <wayne.lin@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/dmub_srv.h')
-rw-r--r--drivers/gpu/drm/amd/display/dmub/dmub_srv.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/display/dmub/dmub_srv.h b/drivers/gpu/drm/amd/display/dmub/dmub_srv.h
index 90065a09e76a..83855b8a32e9 100644
--- a/drivers/gpu/drm/amd/display/dmub/dmub_srv.h
+++ b/drivers/gpu/drm/amd/display/dmub/dmub_srv.h
@@ -411,6 +411,7 @@ struct dmub_srv {
struct dmub_srv_base_funcs funcs;
struct dmub_srv_hw_funcs hw_funcs;
struct dmub_rb inbox1_rb;
+ uint32_t inbox1_last_wptr;
/**
* outbox1_rb is accessed without locks (dal & dc)
* and to be used only in dmub_srv_stat_get_notification()