Lines Matching refs:pp_hwmgr

35 struct pp_hwmgr;
189 int (*smu_init)(struct pp_hwmgr *hwmgr);
190 int (*smu_fini)(struct pp_hwmgr *hwmgr);
191 int (*start_smu)(struct pp_hwmgr *hwmgr);
192 int (*check_fw_load_finish)(struct pp_hwmgr *hwmgr,
194 int (*request_smu_load_fw)(struct pp_hwmgr *hwmgr);
195 int (*request_smu_load_specific_fw)(struct pp_hwmgr *hwmgr,
197 uint32_t (*get_argument)(struct pp_hwmgr *hwmgr);
198 int (*send_msg_to_smc)(struct pp_hwmgr *hwmgr, uint16_t msg);
199 int (*send_msg_to_smc_with_parameter)(struct pp_hwmgr *hwmgr,
201 int (*download_pptable_settings)(struct pp_hwmgr *hwmgr,
203 int (*upload_pptable_settings)(struct pp_hwmgr *hwmgr);
204 int (*update_smc_table)(struct pp_hwmgr *hwmgr, uint32_t type);
205 int (*process_firmware_header)(struct pp_hwmgr *hwmgr);
206 int (*update_sclk_threshold)(struct pp_hwmgr *hwmgr);
207 int (*thermal_setup_fan_table)(struct pp_hwmgr *hwmgr);
208 int (*thermal_avfs_enable)(struct pp_hwmgr *hwmgr);
209 int (*init_smc_table)(struct pp_hwmgr *hwmgr);
210 int (*populate_all_graphic_levels)(struct pp_hwmgr *hwmgr);
211 int (*populate_all_memory_levels)(struct pp_hwmgr *hwmgr);
212 int (*initialize_mc_reg_table)(struct pp_hwmgr *hwmgr);
215 bool (*is_dpm_running)(struct pp_hwmgr *hwmgr);
216 bool (*is_hw_avfs_present)(struct pp_hwmgr *hwmgr);
217 int (*update_dpm_settings)(struct pp_hwmgr *hwmgr, void *profile_setting);
218 …int (*smc_table_manager)(struct pp_hwmgr *hwmgr, uint8_t *table, uint16_t table_id, bool rw); /*rw…
222 int (*backend_init)(struct pp_hwmgr *hw_mgr);
223 int (*backend_fini)(struct pp_hwmgr *hw_mgr);
224 int (*asic_setup)(struct pp_hwmgr *hw_mgr);
225 int (*get_power_state_size)(struct pp_hwmgr *hw_mgr);
227 int (*apply_state_adjust_rules)(struct pp_hwmgr *hwmgr,
231 int (*apply_clocks_adjust_rules)(struct pp_hwmgr *hwmgr);
233 int (*force_dpm_level)(struct pp_hwmgr *hw_mgr,
237 struct pp_hwmgr *hw_mgr);
239 struct pp_hwmgr *hw_mgr);
241 int (*patch_boot_state)(struct pp_hwmgr *hwmgr,
244 int (*get_pp_table_entry)(struct pp_hwmgr *hwmgr,
246 int (*get_num_of_pp_table_entries)(struct pp_hwmgr *hwmgr);
247 int (*powerdown_uvd)(struct pp_hwmgr *hwmgr);
248 void (*powergate_vce)(struct pp_hwmgr *hwmgr, bool bgate);
249 void (*powergate_uvd)(struct pp_hwmgr *hwmgr, bool bgate);
250 uint32_t (*get_mclk)(struct pp_hwmgr *hwmgr, bool low);
251 uint32_t (*get_sclk)(struct pp_hwmgr *hwmgr, bool low);
252 int (*power_state_set)(struct pp_hwmgr *hwmgr,
254 int (*enable_clock_power_gating)(struct pp_hwmgr *hwmgr);
255 int (*notify_smc_display_config_after_ps_adjustment)(struct pp_hwmgr *hwmgr);
256 int (*pre_display_config_changed)(struct pp_hwmgr *hwmgr);
257 int (*display_config_changed)(struct pp_hwmgr *hwmgr);
258 int (*disable_clock_power_gating)(struct pp_hwmgr *hwmgr);
259 int (*update_clock_gatings)(struct pp_hwmgr *hwmgr,
261 int (*set_max_fan_rpm_output)(struct pp_hwmgr *hwmgr, uint16_t us_max_fan_pwm);
262 int (*set_max_fan_pwm_output)(struct pp_hwmgr *hwmgr, uint16_t us_max_fan_pwm);
263 int (*stop_thermal_controller)(struct pp_hwmgr *hwmgr);
264 int (*get_fan_speed_info)(struct pp_hwmgr *hwmgr, struct phm_fan_speed_info *fan_speed_info);
265 void (*set_fan_control_mode)(struct pp_hwmgr *hwmgr, uint32_t mode);
266 uint32_t (*get_fan_control_mode)(struct pp_hwmgr *hwmgr);
267 int (*set_fan_speed_percent)(struct pp_hwmgr *hwmgr, uint32_t percent);
268 int (*get_fan_speed_percent)(struct pp_hwmgr *hwmgr, uint32_t *speed);
269 int (*set_fan_speed_rpm)(struct pp_hwmgr *hwmgr, uint32_t percent);
270 int (*get_fan_speed_rpm)(struct pp_hwmgr *hwmgr, uint32_t *speed);
271 int (*reset_fan_speed_to_default)(struct pp_hwmgr *hwmgr);
272 int (*uninitialize_thermal_controller)(struct pp_hwmgr *hwmgr);
273 int (*register_irq_handlers)(struct pp_hwmgr *hwmgr);
274 bool (*check_smc_update_required_for_display_configuration)(struct pp_hwmgr *hwmgr);
275 int (*check_states_equal)(struct pp_hwmgr *hwmgr,
279 int (*set_cpu_power_state)(struct pp_hwmgr *hwmgr);
280 int (*store_cc6_data)(struct pp_hwmgr *hwmgr, uint32_t separation_time,
283 int (*get_dal_power_level)(struct pp_hwmgr *hwmgr,
285 int (*get_performance_level)(struct pp_hwmgr *, const struct pp_hw_power_state *,
287 int (*get_current_shallow_sleep_clocks)(struct pp_hwmgr *hwmgr,
289 …int (*get_clock_by_type)(struct pp_hwmgr *hwmgr, enum amd_pp_clock_type type, struct amd_pp_clocks…
290 int (*get_clock_by_type_with_latency)(struct pp_hwmgr *hwmgr,
293 int (*get_clock_by_type_with_voltage)(struct pp_hwmgr *hwmgr,
296 int (*set_watermarks_for_clocks_ranges)(struct pp_hwmgr *hwmgr, void *clock_ranges);
297 int (*display_clock_voltage_request)(struct pp_hwmgr *hwmgr,
299 int (*get_max_high_clocks)(struct pp_hwmgr *hwmgr, struct amd_pp_simple_clock_info *clocks);
300 int (*gfx_off_control)(struct pp_hwmgr *hwmgr, bool enable);
301 int (*power_off_asic)(struct pp_hwmgr *hwmgr);
302 int (*force_clock_level)(struct pp_hwmgr *hwmgr, enum pp_clock_type type, uint32_t mask);
303 int (*print_clock_levels)(struct pp_hwmgr *hwmgr, enum pp_clock_type type, char *buf);
304 int (*powergate_gfx)(struct pp_hwmgr *hwmgr, bool enable);
305 int (*get_sclk_od)(struct pp_hwmgr *hwmgr);
306 int (*set_sclk_od)(struct pp_hwmgr *hwmgr, uint32_t value);
307 int (*get_mclk_od)(struct pp_hwmgr *hwmgr);
308 int (*set_mclk_od)(struct pp_hwmgr *hwmgr, uint32_t value);
309 int (*read_sensor)(struct pp_hwmgr *hwmgr, int idx, void *value, int *size);
310 int (*avfs_control)(struct pp_hwmgr *hwmgr, bool enable);
311 int (*disable_smc_firmware_ctf)(struct pp_hwmgr *hwmgr);
312 int (*set_active_display_count)(struct pp_hwmgr *hwmgr, uint32_t count);
313 int (*set_deep_sleep_dcefclk)(struct pp_hwmgr *hwmgr, uint32_t clock);
314 int (*start_thermal_controller)(struct pp_hwmgr *hwmgr, struct PP_TemperatureRange *range);
315 int (*notify_cac_buffer_info)(struct pp_hwmgr *hwmgr,
321 int (*get_thermal_temperature_range)(struct pp_hwmgr *hwmgr,
323 int (*get_power_profile_mode)(struct pp_hwmgr *hwmgr, char *buf);
324 int (*set_power_profile_mode)(struct pp_hwmgr *hwmgr, long *input, uint32_t size);
325 int (*odn_edit_dpm_table)(struct pp_hwmgr *hwmgr,
328 int (*set_power_limit)(struct pp_hwmgr *hwmgr, uint32_t n);
329 int (*powergate_mmhub)(struct pp_hwmgr *hwmgr);
330 int (*smus_notify_pwe)(struct pp_hwmgr *hwmgr);
334 int (*pptable_init)(struct pp_hwmgr *hw_mgr);
335 int (*pptable_fini)(struct pp_hwmgr *hw_mgr);
336 int (*pptable_get_number_of_vce_state_table_entries)(struct pp_hwmgr *hw_mgr);
338 struct pp_hwmgr *hwmgr,
703 struct pp_hwmgr { struct
771 int hwmgr_early_init(struct pp_hwmgr *hwmgr); argument
772 int hwmgr_sw_init(struct pp_hwmgr *hwmgr);
773 int hwmgr_sw_fini(struct pp_hwmgr *hwmgr);
774 int hwmgr_hw_init(struct pp_hwmgr *hwmgr);
775 int hwmgr_hw_fini(struct pp_hwmgr *hwmgr);
776 int hwmgr_suspend(struct pp_hwmgr *hwmgr);
777 int hwmgr_resume(struct pp_hwmgr *hwmgr);
779 int hwmgr_handle_task(struct pp_hwmgr *hwmgr,