Lines Matching full:pr
91 static bool cpufreq_update_thermal_limit(unsigned int cpu, struct acpi_processor *pr) in cpufreq_update_thermal_limit() argument
103 ret = freq_qos_update_request(&pr->thermal_req, max_freq); in cpufreq_update_thermal_limit()
106 pr->id, ret); in cpufreq_update_thermal_limit()
114 struct acpi_processor *pr; in cpufreq_set_cur_state() local
132 pr = per_cpu(processors, i); in cpufreq_set_cur_state()
134 if (unlikely(!freq_qos_request_active(&pr->thermal_req))) in cpufreq_set_cur_state()
137 if (!cpufreq_update_thermal_limit(i, pr)) in cpufreq_set_cur_state()
167 struct acpi_processor *pr = per_cpu(processors, cpu); in acpi_thermal_cpufreq_init() local
170 if (!pr) in acpi_thermal_cpufreq_init()
174 &pr->thermal_req, in acpi_thermal_cpufreq_init()
182 thermal_cooling_device_update(pr->cdev); in acpi_thermal_cpufreq_init()
191 struct acpi_processor *pr = per_cpu(processors, cpu); in acpi_thermal_cpufreq_exit() local
193 if (!pr) in acpi_thermal_cpufreq_exit()
196 freq_qos_remove_request(&pr->thermal_req); in acpi_thermal_cpufreq_exit()
198 thermal_cooling_device_update(pr->cdev); in acpi_thermal_cpufreq_exit()
220 static int acpi_processor_max_state(struct acpi_processor *pr) in acpi_processor_max_state() argument
228 max_state += cpufreq_get_max_state(pr->id); in acpi_processor_max_state()
229 if (pr->flags.throttling) in acpi_processor_max_state()
230 max_state += (pr->throttling.state_count -1); in acpi_processor_max_state()
239 struct acpi_processor *pr; in processor_get_max_state() local
244 pr = acpi_driver_data(device); in processor_get_max_state()
245 if (!pr) in processor_get_max_state()
248 *state = acpi_processor_max_state(pr); in processor_get_max_state()
257 struct acpi_processor *pr; in processor_get_cur_state() local
262 pr = acpi_driver_data(device); in processor_get_cur_state()
263 if (!pr) in processor_get_cur_state()
266 *cur_state = cpufreq_get_cur_state(pr->id); in processor_get_cur_state()
267 if (pr->flags.throttling) in processor_get_cur_state()
268 *cur_state += pr->throttling.state; in processor_get_cur_state()
277 struct acpi_processor *pr; in processor_set_cur_state() local
284 pr = acpi_driver_data(device); in processor_set_cur_state()
285 if (!pr) in processor_set_cur_state()
288 max_pstate = cpufreq_get_max_state(pr->id); in processor_set_cur_state()
290 if (state > acpi_processor_max_state(pr)) in processor_set_cur_state()
294 if (pr->flags.throttling && pr->throttling.state) in processor_set_cur_state()
295 result = acpi_processor_set_throttling(pr, 0, false); in processor_set_cur_state()
296 cpufreq_set_cur_state(pr->id, state); in processor_set_cur_state()
298 cpufreq_set_cur_state(pr->id, max_pstate); in processor_set_cur_state()
299 result = acpi_processor_set_throttling(pr, in processor_set_cur_state()
311 int acpi_processor_thermal_init(struct acpi_processor *pr, in acpi_processor_thermal_init() argument
316 pr->cdev = thermal_cooling_device_register("Processor", device, in acpi_processor_thermal_init()
318 if (IS_ERR(pr->cdev)) { in acpi_processor_thermal_init()
319 result = PTR_ERR(pr->cdev); in acpi_processor_thermal_init()
324 pr->cdev->id); in acpi_processor_thermal_init()
327 &pr->cdev->device.kobj, in acpi_processor_thermal_init()
335 result = sysfs_create_link(&pr->cdev->device.kobj, in acpi_processor_thermal_init()
339 dev_err(&pr->cdev->device, in acpi_processor_thermal_init()
349 thermal_cooling_device_unregister(pr->cdev); in acpi_processor_thermal_init()
354 void acpi_processor_thermal_exit(struct acpi_processor *pr, in acpi_processor_thermal_exit() argument
357 if (pr->cdev) { in acpi_processor_thermal_exit()
359 sysfs_remove_link(&pr->cdev->device.kobj, "device"); in acpi_processor_thermal_exit()
360 thermal_cooling_device_unregister(pr->cdev); in acpi_processor_thermal_exit()
361 pr->cdev = NULL; in acpi_processor_thermal_exit()