RE: [PATCH V2] drm/amd/pm: disable the SMU13 OD feature support temporarily

2023-07-23 Thread Chen, Guchun
[Public]

Looks good to me. Reviewed-by: Guchun Chen 

> -Original Message-
> From: Quan, Evan 
> Sent: Monday, July 24, 2023 11:21 AM
> To: amd-gfx@lists.freedesktop.org
> Cc: Deucher, Alexander ; Chen, Guchun
> ; Quan, Evan 
> Subject: [PATCH V2] drm/amd/pm: disable the SMU13 OD feature support
> temporarily
>
> The existing OD interface cannot support the growing demand for more OD
> features. We are in the transition to a new OD mechanism. So, disable the
> SMU13 OD feature support temporarily. And this should be reverted when
> the new OD mechanism online.
>
> Signed-off-by: Evan Quan 
> --
> v1->v2:
>   - comment out other unneeded members altogether(Guchun)
> ---
>  .../gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c  | 15
> ---  .../gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c
> | 10 +++---
>  2 files changed, 19 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c
> b/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c
> index 60d2684478a0..160362540a03 100644
> --- a/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c
> +++ b/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c
> @@ -348,18 +348,27 @@ static int
> smu_v13_0_0_check_powerplay_table(struct smu_context *smu)
>   if (powerplay_table->platform_caps &
> SMU_13_0_0_PP_PLATFORM_CAP_MACO)
>   smu_baco->maco_support = true;
>
> + /*
> +  * We are in the transition to a new OD mechanism.
> +  * Disable the OD feature support for SMU13 temporarily.
> +  * TODO: get this reverted when new OD mechanism online
> +  */
> +#if 0
>   if (!overdrive_lowerlimits->FeatureCtrlMask ||
>   !overdrive_upperlimits->FeatureCtrlMask)
>   smu->od_enabled = false;
>
> - table_context->thermal_controller_type =
> - powerplay_table->thermal_controller_type;
> -
>   /*
>* Instead of having its own buffer space and get overdrive_table
> copied,
>* smu->od_settings just points to the actual overdrive_table
>*/
>   smu->od_settings = _table->overdrive_table;
> +#else
> + smu->od_enabled = false;
> +#endif
> +
> + table_context->thermal_controller_type =
> + powerplay_table->thermal_controller_type;
>
>   return 0;
>  }
> diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c
> b/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c
> index ebb961f60316..f12850acfa12 100644
> --- a/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c
> +++ b/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c
> @@ -338,18 +338,22 @@ static int
> smu_v13_0_7_check_powerplay_table(struct smu_context *smu)
>   if (smu_baco->platform_support && (BoardTable->HsrEnabled ||
> BoardTable->VddqOffEnabled))
>   smu_baco->maco_support = true;
>
> +#if 0
>   if (!overdrive_lowerlimits->FeatureCtrlMask ||
>   !overdrive_upperlimits->FeatureCtrlMask)
>   smu->od_enabled = false;
>
> - table_context->thermal_controller_type =
> - powerplay_table->thermal_controller_type;
> -
>   /*
>* Instead of having its own buffer space and get overdrive_table
> copied,
>* smu->od_settings just points to the actual overdrive_table
>*/
>   smu->od_settings = _table->overdrive_table;
> +#else
> + smu->od_enabled = false;
> +#endif
> +
> + table_context->thermal_controller_type =
> + powerplay_table->thermal_controller_type;
>
>   return 0;
>  }
> --
> 2.34.1



[PATCH V2] drm/amd/pm: disable the SMU13 OD feature support temporarily

2023-07-23 Thread Evan Quan
The existing OD interface cannot support the growing demand for more
OD features. We are in the transition to a new OD mechanism. So,
disable the SMU13 OD feature support temporarily. And this should be
reverted when the new OD mechanism online.

Signed-off-by: Evan Quan 
--
v1->v2:
  - comment out other unneeded members altogether(Guchun)
---
 .../gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c  | 15 ---
 .../gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c  | 10 +++---
 2 files changed, 19 insertions(+), 6 deletions(-)

diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c 
b/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c
index 60d2684478a0..160362540a03 100644
--- a/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c
+++ b/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c
@@ -348,18 +348,27 @@ static int smu_v13_0_0_check_powerplay_table(struct 
smu_context *smu)
if (powerplay_table->platform_caps & SMU_13_0_0_PP_PLATFORM_CAP_MACO)
smu_baco->maco_support = true;
 
+   /*
+* We are in the transition to a new OD mechanism.
+* Disable the OD feature support for SMU13 temporarily.
+* TODO: get this reverted when new OD mechanism online
+*/
+#if 0
if (!overdrive_lowerlimits->FeatureCtrlMask ||
!overdrive_upperlimits->FeatureCtrlMask)
smu->od_enabled = false;
 
-   table_context->thermal_controller_type =
-   powerplay_table->thermal_controller_type;
-
/*
 * Instead of having its own buffer space and get overdrive_table 
copied,
 * smu->od_settings just points to the actual overdrive_table
 */
smu->od_settings = _table->overdrive_table;
+#else
+   smu->od_enabled = false;
+#endif
+
+   table_context->thermal_controller_type =
+   powerplay_table->thermal_controller_type;
 
return 0;
 }
diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c 
b/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c
index ebb961f60316..f12850acfa12 100644
--- a/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c
+++ b/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c
@@ -338,18 +338,22 @@ static int smu_v13_0_7_check_powerplay_table(struct 
smu_context *smu)
if (smu_baco->platform_support && (BoardTable->HsrEnabled || 
BoardTable->VddqOffEnabled))
smu_baco->maco_support = true;
 
+#if 0
if (!overdrive_lowerlimits->FeatureCtrlMask ||
!overdrive_upperlimits->FeatureCtrlMask)
smu->od_enabled = false;
 
-   table_context->thermal_controller_type =
-   powerplay_table->thermal_controller_type;
-
/*
 * Instead of having its own buffer space and get overdrive_table 
copied,
 * smu->od_settings just points to the actual overdrive_table
 */
smu->od_settings = _table->overdrive_table;
+#else
+   smu->od_enabled = false;
+#endif
+
+   table_context->thermal_controller_type =
+   powerplay_table->thermal_controller_type;
 
return 0;
 }
-- 
2.34.1