Commit b5175966 authored by Shah Dharati's avatar Shah Dharati Committed by Alex Deucher
Browse files

drm/amd/display: Adding a dc_debug option and dmub setting to use PHY FSM for PSR



[Why]
PSR Power on/off is done in PSR. Add a dc_debug option
and dmub setting to use PHY implementation of this instead.

[How]
Add a dc_debug option and dmub setting to use
PHY FSM Power up/down for PSR.

Co-authored-by: default avatarShah Dharati <dharati.shah@amd.com>
Reviewed-by: default avatarHansen Dsouza <hansen.dsouza@amd.com>
Acked-by: default avatarAlan Liu <HaoPing.Liu@amd.com>
Signed-off-by: default avatarShah Dharati <dharati.shah@amd.com>
Tested-by: default avatarDaniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 91dcfe5f
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -710,6 +710,7 @@ struct dc_debug_options {
#endif
	bool apply_vendor_specific_lttpr_wa;
	bool ignore_dpref_ss;
	uint8_t psr_power_use_phy_fsm;
};

struct gpu_info_soc_bounding_box_v1_0;
+1 −0
Original line number Diff line number Diff line
@@ -320,6 +320,7 @@ static bool dmub_psr_copy_settings(struct dmub_psr *dmub,
		copy_settings_data->otg_inst			= 0;

	// Misc
	copy_settings_data->use_phy_fsm             = link->ctx->dc->debug.psr_power_use_phy_fsm;
	copy_settings_data->psr_level				= psr_context->psr_level.u32all;
	copy_settings_data->smu_optimizations_en		= psr_context->allow_smu_optimizations;
	copy_settings_data->multi_disp_optimizations_en	= psr_context->allow_multi_disp_optimizations;
+1 −0
Original line number Diff line number Diff line
@@ -1035,6 +1035,7 @@ static const struct dc_debug_options debug_defaults_drv = {
	},
	.optimize_edp_link_rate = true,
	.enable_sw_cntl_psr = true,
	.psr_power_use_phy_fsm = 0,
};

static const struct dc_debug_options debug_defaults_diags = {
+6 −2
Original line number Diff line number Diff line
@@ -1560,10 +1560,14 @@ struct dmub_cmd_psr_copy_settings_data {
	 * DSC enable status in driver
	 */
	uint8_t dsc_enable_status;
	/*
	 * Use FSM state for PSR power up/down
	 */
	uint8_t use_phy_fsm;
	/**
	 * Explicit padding to 3 byte boundary.
	 * Explicit padding to 2 byte boundary.
	 */
	uint8_t pad3[3];
	uint8_t pad3[2];
};

/**