On Wed, Mar 21, 2018 at 12:54 AM, Rex Zhu <Rex.Zhu at amd.com> wrote: > 1. register smu irq when sw init. > 2. delete useless function argument. If you split this into two patches, one for each logical change above, it's: Reviewed-by: Alex Deucher <alexander.deucher at amd.com> > > Change-Id: Ie817e524327f14edfde62843fbdd2a7999489819 > Signed-off-by: Rex Zhu <Rex.Zhu at amd.com> > --- > drivers/gpu/drm/amd/powerplay/amd_powerplay.c | 2 ++ > drivers/gpu/drm/amd/powerplay/hwmgr/hardwaremanager.c | 6 +++--- > drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c | 4 ---- > drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c | 5 ++--- > drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c | 5 ++--- > drivers/gpu/drm/amd/powerplay/inc/hardwaremanager.h | 2 +- > drivers/gpu/drm/amd/powerplay/inc/hwmgr.h | 3 +-- > 7 files changed, 11 insertions(+), 16 deletions(-) > > diff --git a/drivers/gpu/drm/amd/powerplay/amd_powerplay.c b/drivers/gpu/drm/amd/powerplay/amd_powerplay.c > index 0381317..7e8ad30 100644 > --- a/drivers/gpu/drm/amd/powerplay/amd_powerplay.c > +++ b/drivers/gpu/drm/amd/powerplay/amd_powerplay.c > @@ -117,6 +117,8 @@ static int pp_sw_init(void *handle) > > ret = hwmgr->smumgr_funcs->smu_init(hwmgr); > > + phm_register_irq_handlers(hwmgr); > + > pr_debug("amdgpu: powerplay sw initialized\n"); > } > > diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/hardwaremanager.c b/drivers/gpu/drm/amd/powerplay/hwmgr/hardwaremanager.c > index b784131..ae2e933 100644 > --- a/drivers/gpu/drm/amd/powerplay/hwmgr/hardwaremanager.c > +++ b/drivers/gpu/drm/amd/powerplay/hwmgr/hardwaremanager.c > @@ -202,12 +202,12 @@ int phm_stop_thermal_controller(struct pp_hwmgr *hwmgr) > return hwmgr->hwmgr_func->stop_thermal_controller(hwmgr); > } > > -int phm_register_thermal_interrupt(struct pp_hwmgr *hwmgr, const void *info) > +int phm_register_irq_handlers(struct pp_hwmgr *hwmgr) > { > PHM_FUNC_CHECK(hwmgr); > > - if (hwmgr->hwmgr_func->register_internal_thermal_interrupt != NULL) > - return hwmgr->hwmgr_func->register_internal_thermal_interrupt(hwmgr, info); > + if (hwmgr->hwmgr_func->register_irq_handlers != NULL) > + return hwmgr->hwmgr_func->register_irq_handlers(hwmgr); > > return 0; > } > diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c b/drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c > index fbcdda5..6318438 100644 > --- a/drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c > +++ b/drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c > @@ -200,10 +200,6 @@ int hwmgr_hw_init(struct pp_hwmgr *hwmgr) > if (ret) > goto err2; > > - ret = phm_register_thermal_interrupt(hwmgr, NULL); > - if (ret) > - goto err2; > - > return 0; > err2: > if (hwmgr->hwmgr_func->backend_fini) > diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c b/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c > index 4083387..8a81360 100644 > --- a/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c > +++ b/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c > @@ -3996,8 +3996,7 @@ static int smu7_set_max_fan_rpm_output(struct pp_hwmgr *hwmgr, uint16_t us_max_f > PPSMC_MSG_SetFanRpmMax, us_max_fan_rpm); > } > > -static int smu7_register_internal_thermal_interrupt(struct pp_hwmgr *hwmgr, > - const void *thermal_interrupt_info) > +static int smu7_register_irq_handlers(struct pp_hwmgr *hwmgr) > { > return 0; > } > @@ -4982,7 +4981,7 @@ static int smu7_set_power_profile_mode(struct pp_hwmgr *hwmgr, long *input, uint > .get_fan_speed_rpm = smu7_fan_ctrl_get_fan_speed_rpm, > .set_fan_speed_rpm = smu7_fan_ctrl_set_fan_speed_rpm, > .uninitialize_thermal_controller = smu7_thermal_ctrl_uninitialize_thermal_controller, > - .register_internal_thermal_interrupt = smu7_register_internal_thermal_interrupt, > + .register_irq_handlers = smu7_register_irq_handlers, > .check_smc_update_required_for_display_configuration = smu7_check_smc_update_required_for_display_configuration, > .check_states_equal = smu7_check_states_equal, > .set_fan_control_mode = smu7_set_fan_control_mode, > diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c b/drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c > index eb9884e..7bb9dd9 100644 > --- a/drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c > +++ b/drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c > @@ -4819,8 +4819,7 @@ static int vega10_get_thermal_temperature_range(struct pp_hwmgr *hwmgr, > .process = phm_irq_process, > }; > > -static int vega10_register_thermal_interrupt(struct pp_hwmgr *hwmgr, > - const void *info) > +static int vega10_register_irq_handlers(struct pp_hwmgr *hwmgr) > { > struct amdgpu_irq_src *source = > kzalloc(sizeof(struct amdgpu_irq_src), GFP_KERNEL); > @@ -4978,7 +4977,7 @@ static int vega10_set_power_profile_mode(struct pp_hwmgr *hwmgr, long *input, ui > .avfs_control = vega10_avfs_enable, > .notify_cac_buffer_info = vega10_notify_cac_buffer_info, > .get_thermal_temperature_range = vega10_get_thermal_temperature_range, > - .register_internal_thermal_interrupt = vega10_register_thermal_interrupt, > + .register_irq_handlers = vega10_register_irq_handlers, > .start_thermal_controller = vega10_start_thermal_controller, > .get_power_profile_mode = vega10_get_power_profile_mode, > .set_power_profile_mode = vega10_set_power_profile_mode, > diff --git a/drivers/gpu/drm/amd/powerplay/inc/hardwaremanager.h b/drivers/gpu/drm/amd/powerplay/inc/hardwaremanager.h > index b366a5b..f69547f 100644 > --- a/drivers/gpu/drm/amd/powerplay/inc/hardwaremanager.h > +++ b/drivers/gpu/drm/amd/powerplay/inc/hardwaremanager.h > @@ -403,7 +403,7 @@ extern int phm_apply_state_adjust_rules(struct pp_hwmgr *hwmgr, > extern int phm_force_dpm_levels(struct pp_hwmgr *hwmgr, enum amd_dpm_forced_level level); > extern int phm_display_configuration_changed(struct pp_hwmgr *hwmgr); > extern int phm_notify_smc_display_config_after_ps_adjustment(struct pp_hwmgr *hwmgr); > -extern int phm_register_thermal_interrupt(struct pp_hwmgr *hwmgr, const void *info); > +extern int phm_register_irq_handlers(struct pp_hwmgr *hwmgr); > extern int phm_start_thermal_controller(struct pp_hwmgr *hwmgr); > extern int phm_stop_thermal_controller(struct pp_hwmgr *hwmgr); > extern bool phm_check_smc_update_required_for_display_configuration(struct pp_hwmgr *hwmgr); > diff --git a/drivers/gpu/drm/amd/powerplay/inc/hwmgr.h b/drivers/gpu/drm/amd/powerplay/inc/hwmgr.h > index 2667775..efdcf31 100644 > --- a/drivers/gpu/drm/amd/powerplay/inc/hwmgr.h > +++ b/drivers/gpu/drm/amd/powerplay/inc/hwmgr.h > @@ -287,8 +287,7 @@ struct pp_hwmgr_func { > int (*get_fan_speed_rpm)(struct pp_hwmgr *hwmgr, uint32_t *speed); > int (*reset_fan_speed_to_default)(struct pp_hwmgr *hwmgr); > int (*uninitialize_thermal_controller)(struct pp_hwmgr *hwmgr); > - int (*register_internal_thermal_interrupt)(struct pp_hwmgr *hwmgr, > - const void *thermal_interrupt_info); > + int (*register_irq_handlers)(struct pp_hwmgr *hwmgr); > bool (*check_smc_update_required_for_display_configuration)(struct pp_hwmgr *hwmgr); > int (*check_states_equal)(struct pp_hwmgr *hwmgr, > const struct pp_hw_power_state *pstate1, > -- > 1.9.1 > > _______________________________________________ > amd-gfx mailing list > amd-gfx at lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/amd-gfx