summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm
diff options
context:
space:
mode:
authorAnthony Koo <Anthony.Koo@amd.com>2022-07-16 23:14:01 -0400
committerAlex Deucher <alexander.deucher@amd.com>2022-07-25 17:17:15 -0400
commit81f776b670a0eb17bf9cfbfd2df32f66a34bc453 (patch)
treece528df8d776dd304c1c54ea81b77a0af516035a /drivers/gpu/drm
parent1f5dcb7365e4e0a8a6fca44352218ccc6f41a8b9 (diff)
drm/amd/display: Add support for manual DMUB FAMS trigger
- Add is_drr parameter to indicate DRR is enabled on the panel to determine whether SubVP MCLK switch logic should be enabled - Add DRR manual trigger in FW (instead of driver) because manual trigger programming triggers DRR update pending and can block SubVP MCLK switches from taking place Acked-by: Alex Hung <alex.hung@amd.com> Signed-off-by: Anthony Koo <Anthony.Koo@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')
-rw-r--r--drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd.h b/drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd.h
index de193636d022..d7f3619352f0 100644
--- a/drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd.h
+++ b/drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd.h
@@ -976,7 +976,8 @@ struct dmub_cmd_fw_assisted_mclk_switch_pipe_data_v2 {
uint16_t vtotal;
uint8_t main_pipe_index;
uint8_t phantom_pipe_index;
- uint8_t padding[2];
+ uint8_t is_drr;
+ uint8_t padding;
} subvp_data;
struct {
@@ -1579,6 +1580,12 @@ enum dmub_cmd_fams_type {
DMUB_CMD__FAMS_SETUP_FW_CTRL = 0,
DMUB_CMD__FAMS_DRR_UPDATE = 1,
DMUB_CMD__HANDLE_SUBVP_CMD = 2, // specifically for SubVP cmd
+ /**
+ * For SubVP set manual trigger in FW because it
+ * triggers DRR_UPDATE_PENDING which SubVP relies
+ * on (for any SubVP cases that use a DRR display)
+ */
+ DMUB_CMD__FAMS_SET_MANUAL_TRIGGER = 3,
};
/**