AMD-GFX Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] drm/amd/display: Add visualconfirm module parameter
@ 2022-07-07 14:56 sunpeng.li
  2022-07-07 14:56 ` [PATCH 2/2] drm/amd/display: Add dcdebugmask option for disabling MPO sunpeng.li
  2022-07-07 15:23 ` [PATCH 1/2] drm/amd/display: Add visualconfirm module parameter Rodrigo Siqueira Jordao
  0 siblings, 2 replies; 3+ messages in thread
From: sunpeng.li @ 2022-07-07 14:56 UTC (permalink / raw)
  To: amd-gfx
  Cc: Leo Li, harry.wentland, qingqing.zhuo, Rodrigo.Siqueira,
	Aurabindo.Pillai, Bhawanpreet.Lakha

From: Leo Li <sunpeng.li@amd.com>

[Why]

Being able to configure visual confirm at boot or in cmdline is helpful
when debugging.

[How]

Add a module parameter to configure DC visual confirm, which works the
same way as the equivalent debugfs entry.

Signed-off-by: Leo Li <sunpeng.li@amd.com>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu.h               | 1 +
 drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c           | 4 ++++
 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 2 ++
 3 files changed, 7 insertions(+)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
index 845d6054992a..4629bef6c44e 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
@@ -197,6 +197,7 @@ extern uint amdgpu_smu_memory_pool_size;
 extern int amdgpu_smu_pptable_id;
 extern uint amdgpu_dc_feature_mask;
 extern uint amdgpu_dc_debug_mask;
+extern uint amdgpu_dc_visual_confirm;
 extern uint amdgpu_dm_abm_level;
 extern int amdgpu_backlight;
 extern struct amdgpu_mgpu_info mgpu_info;
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
index 1cc9260e75de..e1e8cf70e719 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
@@ -167,6 +167,7 @@ int amdgpu_smu_pptable_id = -1;
  */
 uint amdgpu_dc_feature_mask = 2;
 uint amdgpu_dc_debug_mask;
+uint amdgpu_dc_visual_confirm;
 int amdgpu_async_gfx_ring = 1;
 int amdgpu_mcbp;
 int amdgpu_discovery = -1;
@@ -827,6 +828,9 @@ module_param_named(dcfeaturemask, amdgpu_dc_feature_mask, uint, 0444);
 MODULE_PARM_DESC(dcdebugmask, "all debug options disabled (default))");
 module_param_named(dcdebugmask, amdgpu_dc_debug_mask, uint, 0444);
 
+MODULE_PARM_DESC(visualconfirm, "Visual confirm (0 = off (default), 1 = MPO, 5 = PSR)");
+module_param_named(visualconfirm, amdgpu_dc_visual_confirm, uint, 0444);
+
 /**
  * DOC: abmlevel (uint)
  * Override the default ABM (Adaptive Backlight Management) level used for DC
diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
index eb5efb4aa2ba..d7208c0b76b1 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -1562,6 +1562,8 @@ static int amdgpu_dm_init(struct amdgpu_device *adev)
 	if (amdgpu_dc_debug_mask & DC_FORCE_SUBVP_MCLK_SWITCH)
 		adev->dm.dc->debug.force_subvp_mclk_switch = true;
 
+	adev->dm.dc->debug.visual_confirm = amdgpu_dc_visual_confirm;
+
 	r = dm_dmub_hw_init(adev);
 	if (r) {
 		DRM_ERROR("DMUB interface failed to initialize: status=%d\n", r);
-- 
2.37.0


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [PATCH 2/2] drm/amd/display: Add dcdebugmask option for disabling MPO
  2022-07-07 14:56 [PATCH 1/2] drm/amd/display: Add visualconfirm module parameter sunpeng.li
@ 2022-07-07 14:56 ` sunpeng.li
  2022-07-07 15:23 ` [PATCH 1/2] drm/amd/display: Add visualconfirm module parameter Rodrigo Siqueira Jordao
  1 sibling, 0 replies; 3+ messages in thread
From: sunpeng.li @ 2022-07-07 14:56 UTC (permalink / raw)
  To: amd-gfx
  Cc: Leo Li, harry.wentland, qingqing.zhuo, Rodrigo.Siqueira,
	Aurabindo.Pillai, Bhawanpreet.Lakha

From: Leo Li <sunpeng.li@amd.com>

[Why & How]

It's useful to disable MPO when debugging or testing. Therefore, add a
dcdebugmask option to disable MPO.

Signed-off-by: Leo Li <sunpeng.li@amd.com>
---
 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 4 ++++
 drivers/gpu/drm/amd/include/amd_shared.h          | 1 +
 2 files changed, 5 insertions(+)

diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
index d7208c0b76b1..4cf11bcc01a4 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -4194,6 +4194,10 @@ static int amdgpu_dm_initialize_drm_device(struct amdgpu_device *adev)
 	for (i = 0; i < dm->dc->caps.max_planes; ++i) {
 		struct dc_plane_cap *plane = &dm->dc->caps.planes[i];
 
+		/* Do not create overlay if MPO disabled */
+		if (amdgpu_dc_debug_mask & DC_DISABLE_MPO)
+			break;
+
 		if (plane->type != DC_PLANE_TYPE_DCN_UNIVERSAL)
 			continue;
 
diff --git a/drivers/gpu/drm/amd/include/amd_shared.h b/drivers/gpu/drm/amd/include/amd_shared.h
index 1db21d13726d..f175e65b853a 100644
--- a/drivers/gpu/drm/amd/include/amd_shared.h
+++ b/drivers/gpu/drm/amd/include/amd_shared.h
@@ -249,6 +249,7 @@ enum DC_DEBUG_MASK {
 	DC_DISABLE_CLOCK_GATING = 0x8,
 	DC_DISABLE_PSR = 0x10,
 	DC_FORCE_SUBVP_MCLK_SWITCH = 0x20,
+	DC_DISABLE_MPO = 0x40,
 };
 
 enum amd_dpm_forced_level;
-- 
2.37.0


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH 1/2] drm/amd/display: Add visualconfirm module parameter
  2022-07-07 14:56 [PATCH 1/2] drm/amd/display: Add visualconfirm module parameter sunpeng.li
  2022-07-07 14:56 ` [PATCH 2/2] drm/amd/display: Add dcdebugmask option for disabling MPO sunpeng.li
@ 2022-07-07 15:23 ` Rodrigo Siqueira Jordao
  1 sibling, 0 replies; 3+ messages in thread
From: Rodrigo Siqueira Jordao @ 2022-07-07 15:23 UTC (permalink / raw)
  To: sunpeng.li, amd-gfx
  Cc: Bhawanpreet.Lakha, qingqing.zhuo, Aurabindo.Pillai,
	harry.wentland



On 07/07/2022 10:56, sunpeng.li@amd.com wrote:
> From: Leo Li <sunpeng.li@amd.com>
> 
> [Why]
> 
> Being able to configure visual confirm at boot or in cmdline is helpful
> when debugging.
> 
> [How]
> 
> Add a module parameter to configure DC visual confirm, which works the
> same way as the equivalent debugfs entry.
> 
> Signed-off-by: Leo Li <sunpeng.li@amd.com>
> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu.h               | 1 +
>   drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c           | 4 ++++
>   drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 2 ++
>   3 files changed, 7 insertions(+)
> 
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
> index 845d6054992a..4629bef6c44e 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
> @@ -197,6 +197,7 @@ extern uint amdgpu_smu_memory_pool_size;
>   extern int amdgpu_smu_pptable_id;
>   extern uint amdgpu_dc_feature_mask;
>   extern uint amdgpu_dc_debug_mask;
> +extern uint amdgpu_dc_visual_confirm;
>   extern uint amdgpu_dm_abm_level;
>   extern int amdgpu_backlight;
>   extern struct amdgpu_mgpu_info mgpu_info;
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
> index 1cc9260e75de..e1e8cf70e719 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
> @@ -167,6 +167,7 @@ int amdgpu_smu_pptable_id = -1;
>    */
>   uint amdgpu_dc_feature_mask = 2;
>   uint amdgpu_dc_debug_mask;
> +uint amdgpu_dc_visual_confirm;
>   int amdgpu_async_gfx_ring = 1;
>   int amdgpu_mcbp;
>   int amdgpu_discovery = -1;
> @@ -827,6 +828,9 @@ module_param_named(dcfeaturemask, amdgpu_dc_feature_mask, uint, 0444);
>   MODULE_PARM_DESC(dcdebugmask, "all debug options disabled (default))");
>   module_param_named(dcdebugmask, amdgpu_dc_debug_mask, uint, 0444);
>   
> +MODULE_PARM_DESC(visualconfirm, "Visual confirm (0 = off (default), 1 = MPO, 5 = PSR)");
> +module_param_named(visualconfirm, amdgpu_dc_visual_confirm, uint, 0444);
> +
>   /**
>    * DOC: abmlevel (uint)
>    * Override the default ABM (Adaptive Backlight Management) level used for DC
> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> index eb5efb4aa2ba..d7208c0b76b1 100644
> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> @@ -1562,6 +1562,8 @@ static int amdgpu_dm_init(struct amdgpu_device *adev)
>   	if (amdgpu_dc_debug_mask & DC_FORCE_SUBVP_MCLK_SWITCH)
>   		adev->dm.dc->debug.force_subvp_mclk_switch = true;
>   
> +	adev->dm.dc->debug.visual_confirm = amdgpu_dc_visual_confirm;
> +
>   	r = dm_dmub_hw_init(adev);
>   	if (r) {
>   		DRM_ERROR("DMUB interface failed to initialize: status=%d\n", r);

Series LGTM,

Reviewed-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2022-07-07 15:23 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-07-07 14:56 [PATCH 1/2] drm/amd/display: Add visualconfirm module parameter sunpeng.li
2022-07-07 14:56 ` [PATCH 2/2] drm/amd/display: Add dcdebugmask option for disabling MPO sunpeng.li
2022-07-07 15:23 ` [PATCH 1/2] drm/amd/display: Add visualconfirm module parameter Rodrigo Siqueira Jordao

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox