Re: [PATCH 1/2] drm/amd/powerplay: drop redundant .set_min_dcefclk_deep_sleep API

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Jun 9, 2020 at 6:10 AM Evan Quan <evan.quan@xxxxxxx> wrote:
>
> It has exactly the same functionality as .set_deep_sleep_dcefclk.
>
> Change-Id: Ib4d2d604ca014e194cb2b61ac770e4370ecad74d
> Signed-off-by: Evan Quan <evan.quan@xxxxxxx>
> ---
>  drivers/gpu/drm/amd/powerplay/amdgpu_smu.c         | 11 +++++------
>  drivers/gpu/drm/amd/powerplay/arcturus_ppt.c       |  3 +--
>  drivers/gpu/drm/amd/powerplay/inc/amdgpu_smu.h     |  1 -
>  drivers/gpu/drm/amd/powerplay/inc/smu_v11_0.h      |  2 --
>  drivers/gpu/drm/amd/powerplay/navi10_ppt.c         |  1 -
>  drivers/gpu/drm/amd/powerplay/sienna_cichlid_ppt.c |  3 +--
>  drivers/gpu/drm/amd/powerplay/smu_internal.h       |  4 ++--
>  drivers/gpu/drm/amd/powerplay/smu_v11_0.c          | 10 ----------
>  8 files changed, 9 insertions(+), 26 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c b/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c
> index 6beae3b496be..89dd12536d58 100644
> --- a/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c
> +++ b/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c
> @@ -1269,7 +1269,8 @@ static int smu_smc_hw_setup(struct smu_context *smu)
>          * Set min deep sleep dce fclk with bootup value from vbios via
>          * SetMinDeepSleepDcefclk MSG.
>          */
> -       ret = smu_set_min_dcef_deep_sleep(smu);
> +       ret = smu_set_min_dcef_deep_sleep(smu,
> +                                         smu->smu_table.boot_values.dcefclk / 100);
>         if (ret)
>                 return ret;
>
> @@ -1584,9 +1585,8 @@ int smu_display_configuration_change(struct smu_context *smu,
>
>         mutex_lock(&smu->mutex);
>
> -       if (smu->ppt_funcs->set_deep_sleep_dcefclk)
> -               smu->ppt_funcs->set_deep_sleep_dcefclk(smu,
> -                               display_config->min_dcef_deep_sleep_set_clk / 100);
> +       smu_set_min_dcef_deep_sleep(smu,
> +                                   display_config->min_dcef_deep_sleep_set_clk / 100);
>
>         for (index = 0; index < display_config->num_path_including_non_display; index++) {
>                 if (display_config->displays[index].controller_id != 0)
> @@ -2482,8 +2482,7 @@ int smu_set_deep_sleep_dcefclk(struct smu_context *smu, int clk)
>
>         mutex_lock(&smu->mutex);
>
> -       if (smu->ppt_funcs->set_deep_sleep_dcefclk)
> -               ret = smu->ppt_funcs->set_deep_sleep_dcefclk(smu, clk);
> +       ret = smu_set_min_dcef_deep_sleep(smu, clk);
>
>         mutex_unlock(&smu->mutex);
>
> diff --git a/drivers/gpu/drm/amd/powerplay/arcturus_ppt.c b/drivers/gpu/drm/amd/powerplay/arcturus_ppt.c
> index c104844b28f1..96c9a348f8b3 100644
> --- a/drivers/gpu/drm/amd/powerplay/arcturus_ppt.c
> +++ b/drivers/gpu/drm/amd/powerplay/arcturus_ppt.c
> @@ -2590,7 +2590,6 @@ static const struct pptable_funcs arcturus_ppt_funcs = {
>         .populate_smc_tables = smu_v11_0_populate_smc_pptable,
>         .check_fw_version = smu_v11_0_check_fw_version,
>         .write_pptable = smu_v11_0_write_pptable,
> -       .set_min_dcef_deep_sleep = NULL,
>         .set_driver_table_location = smu_v11_0_set_driver_table_location,
>         .set_tool_table_location = smu_v11_0_set_tool_table_location,
>         .notify_memory_pool_location = smu_v11_0_notify_memory_pool_location,
> @@ -2605,7 +2604,7 @@ static const struct pptable_funcs arcturus_ppt_funcs = {
>         .init_max_sustainable_clocks = smu_v11_0_init_max_sustainable_clocks,
>         .enable_thermal_alert = smu_v11_0_enable_thermal_alert,
>         .disable_thermal_alert = smu_v11_0_disable_thermal_alert,
> -       .set_deep_sleep_dcefclk = smu_v11_0_set_deep_sleep_dcefclk,
> +       .set_deep_sleep_dcefclk = NULL,
>         .display_clock_voltage_request = smu_v11_0_display_clock_voltage_request,
>         .get_fan_control_mode = smu_v11_0_get_fan_control_mode,
>         .set_fan_control_mode = smu_v11_0_set_fan_control_mode,
> diff --git a/drivers/gpu/drm/amd/powerplay/inc/amdgpu_smu.h b/drivers/gpu/drm/amd/powerplay/inc/amdgpu_smu.h
> index 8eaa6338ad44..3420a58fad03 100644
> --- a/drivers/gpu/drm/amd/powerplay/inc/amdgpu_smu.h
> +++ b/drivers/gpu/drm/amd/powerplay/inc/amdgpu_smu.h
> @@ -510,7 +510,6 @@ struct pptable_funcs {
>         int (*powergate_sdma)(struct smu_context *smu, bool gate);
>         int (*set_gfx_cgpg)(struct smu_context *smu, bool enable);
>         int (*write_pptable)(struct smu_context *smu);
> -       int (*set_min_dcef_deep_sleep)(struct smu_context *smu);
>         int (*set_driver_table_location)(struct smu_context *smu);
>         int (*set_tool_table_location)(struct smu_context *smu);
>         int (*notify_memory_pool_location)(struct smu_context *smu);
> diff --git a/drivers/gpu/drm/amd/powerplay/inc/smu_v11_0.h b/drivers/gpu/drm/amd/powerplay/inc/smu_v11_0.h
> index 2e9939beb128..9ccf62e99dcb 100644
> --- a/drivers/gpu/drm/amd/powerplay/inc/smu_v11_0.h
> +++ b/drivers/gpu/drm/amd/powerplay/inc/smu_v11_0.h
> @@ -170,8 +170,6 @@ int smu_v11_0_check_fw_version(struct smu_context *smu);
>
>  int smu_v11_0_write_pptable(struct smu_context *smu);
>
> -int smu_v11_0_set_min_dcef_deep_sleep(struct smu_context *smu);
> -
>  int smu_v11_0_set_driver_table_location(struct smu_context *smu);
>
>  int smu_v11_0_set_tool_table_location(struct smu_context *smu);
> diff --git a/drivers/gpu/drm/amd/powerplay/navi10_ppt.c b/drivers/gpu/drm/amd/powerplay/navi10_ppt.c
> index 115794557190..abbfcce6d9ad 100644
> --- a/drivers/gpu/drm/amd/powerplay/navi10_ppt.c
> +++ b/drivers/gpu/drm/amd/powerplay/navi10_ppt.c
> @@ -2426,7 +2426,6 @@ static const struct pptable_funcs navi10_ppt_funcs = {
>         .populate_smc_tables = smu_v11_0_populate_smc_pptable,
>         .check_fw_version = smu_v11_0_check_fw_version,
>         .write_pptable = smu_v11_0_write_pptable,
> -       .set_min_dcef_deep_sleep = smu_v11_0_set_min_dcef_deep_sleep,
>         .set_driver_table_location = smu_v11_0_set_driver_table_location,
>         .set_tool_table_location = smu_v11_0_set_tool_table_location,
>         .notify_memory_pool_location = smu_v11_0_notify_memory_pool_location,
> diff --git a/drivers/gpu/drm/amd/powerplay/sienna_cichlid_ppt.c b/drivers/gpu/drm/amd/powerplay/sienna_cichlid_ppt.c
> index 81cc04de9b06..6a9d04cac240 100644
> --- a/drivers/gpu/drm/amd/powerplay/sienna_cichlid_ppt.c
> +++ b/drivers/gpu/drm/amd/powerplay/sienna_cichlid_ppt.c
> @@ -2596,7 +2596,6 @@ static const struct pptable_funcs sienna_cichlid_ppt_funcs = {
>         .populate_smc_tables = smu_v11_0_populate_smc_pptable,
>         .check_fw_version = smu_v11_0_check_fw_version,
>         .write_pptable = smu_v11_0_write_pptable,
> -       .set_min_dcef_deep_sleep = NULL,
>         .set_driver_table_location = smu_v11_0_set_driver_table_location,
>         .set_tool_table_location = smu_v11_0_set_tool_table_location,
>         .notify_memory_pool_location = smu_v11_0_notify_memory_pool_location,
> @@ -2611,7 +2610,7 @@ static const struct pptable_funcs sienna_cichlid_ppt_funcs = {
>         .init_max_sustainable_clocks = smu_v11_0_init_max_sustainable_clocks,
>         .enable_thermal_alert = smu_v11_0_enable_thermal_alert,
>         .disable_thermal_alert = smu_v11_0_disable_thermal_alert,
> -       .set_deep_sleep_dcefclk = smu_v11_0_set_deep_sleep_dcefclk,
> +       .set_deep_sleep_dcefclk = NULL,
>         .display_clock_voltage_request = smu_v11_0_display_clock_voltage_request,
>         .get_fan_control_mode = smu_v11_0_get_fan_control_mode,
>         .set_fan_control_mode = smu_v11_0_set_fan_control_mode,
> diff --git a/drivers/gpu/drm/amd/powerplay/smu_internal.h b/drivers/gpu/drm/amd/powerplay/smu_internal.h
> index 094db34ddbd1..86c09098963a 100644
> --- a/drivers/gpu/drm/amd/powerplay/smu_internal.h
> +++ b/drivers/gpu/drm/amd/powerplay/smu_internal.h
> @@ -51,8 +51,8 @@
>         ((smu)->ppt_funcs->check_fw_version ? (smu)->ppt_funcs->check_fw_version((smu)) : 0)
>  #define smu_write_pptable(smu) \
>         ((smu)->ppt_funcs->write_pptable ? (smu)->ppt_funcs->write_pptable((smu)) : 0)
> -#define smu_set_min_dcef_deep_sleep(smu) \
> -       ((smu)->ppt_funcs->set_min_dcef_deep_sleep ? (smu)->ppt_funcs->set_min_dcef_deep_sleep((smu)) : 0)
> +#define smu_set_min_dcef_deep_sleep(smu, clk) \
> +       ((smu)->ppt_funcs->set_deep_sleep_dcefclk ? (smu)->ppt_funcs->set_deep_sleep_dcefclk((smu), (clk)) : 0)

Can you make the callback and macro names match?  E.g.,

 +#define smu_set_min_dcef_deep_sleep(smu, clk) \
 +       ((smu)->ppt_funcs->set_min_dcef_deep_sleep ?
(smu)->ppt_funcs->set_min_dcef_deep_sleep((smu), (clk)) : 0)

That makes it easier to trace the macro back to it's callback.  With that fixed:
Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

Alex

>  #define smu_set_driver_table_location(smu) \
>         ((smu)->ppt_funcs->set_driver_table_location ? (smu)->ppt_funcs->set_driver_table_location((smu)) : 0)
>  #define smu_set_tool_table_location(smu) \
> diff --git a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> index 06e3799aa923..5590dab46e8c 100644
> --- a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> +++ b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> @@ -782,16 +782,6 @@ int smu_v11_0_set_deep_sleep_dcefclk(struct smu_context *smu, uint32_t clk)
>         return ret;
>  }
>
> -int smu_v11_0_set_min_dcef_deep_sleep(struct smu_context *smu)
> -{
> -       struct smu_table_context *table_context = &smu->smu_table;
> -
> -       if (!table_context)
> -               return -EINVAL;
> -
> -       return smu_v11_0_set_deep_sleep_dcefclk(smu, table_context->boot_values.dcefclk / 100);
> -}
> -
>  int smu_v11_0_set_driver_table_location(struct smu_context *smu)
>  {
>         struct smu_table *driver_table = &smu->smu_table.driver_table;
> --
> 2.27.0
>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx@xxxxxxxxxxxxxxxxxxxxx
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
_______________________________________________
amd-gfx mailing list
amd-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/amd-gfx



[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux