Lines Matching refs:_pr
57 static int push_cxx_to_hypervisor(struct acpi_processor *_pr) in push_cxx_to_hypervisor() argument
62 .u.set_pminfo.id = _pr->acpi_id, in push_cxx_to_hypervisor()
70 dst_cx_states = kcalloc(_pr->power.count, in push_cxx_to_hypervisor()
75 for (ok = 0, i = 1; i <= _pr->power.count; i++) { in push_cxx_to_hypervisor()
76 cx = &_pr->power.states[i]; in push_cxx_to_hypervisor()
105 pr_debug("No _Cx for ACPI CPU %u\n", _pr->acpi_id); in push_cxx_to_hypervisor()
110 op.u.set_pminfo.power.flags.bm_control = _pr->flags.bm_control; in push_cxx_to_hypervisor()
111 op.u.set_pminfo.power.flags.bm_check = _pr->flags.bm_check; in push_cxx_to_hypervisor()
112 op.u.set_pminfo.power.flags.has_cst = _pr->flags.has_cst; in push_cxx_to_hypervisor()
114 _pr->flags.power_setup_done; in push_cxx_to_hypervisor()
122 pr_debug("ACPI CPU%u - C-states uploaded.\n", _pr->acpi_id); in push_cxx_to_hypervisor()
123 for (i = 1; i <= _pr->power.count; i++) { in push_cxx_to_hypervisor()
124 cx = &_pr->power.states[i]; in push_cxx_to_hypervisor()
135 ret, _pr->acpi_id); in push_cxx_to_hypervisor()
142 xen_copy_pss_data(struct acpi_processor *_pr, in xen_copy_pss_data() argument
151 dst_states = kcalloc(_pr->performance->state_count, in xen_copy_pss_data()
156 dst_perf->state_count = _pr->performance->state_count; in xen_copy_pss_data()
157 for (i = 0; i < _pr->performance->state_count; i++) { in xen_copy_pss_data()
159 memcpy(&(dst_states[i]), &(_pr->performance->states[i]), in xen_copy_pss_data()
164 static int xen_copy_psd_data(struct acpi_processor *_pr, in xen_copy_psd_data() argument
175 dst->shared_type = _pr->performance->shared_type; in xen_copy_psd_data()
177 pdomain = &(_pr->performance->domain_info); in xen_copy_psd_data()
210 static int push_pxx_to_hypervisor(struct acpi_processor *_pr) in push_pxx_to_hypervisor() argument
216 .u.set_pminfo.id = _pr->acpi_id, in push_pxx_to_hypervisor()
224 dst_perf->platform_limit = _pr->performance_platform_limit; in push_pxx_to_hypervisor()
226 xen_copy_pct_data(&(_pr->performance->control_register), in push_pxx_to_hypervisor()
228 xen_copy_pct_data(&(_pr->performance->status_register), in push_pxx_to_hypervisor()
231 dst_states = xen_copy_pss_data(_pr, dst_perf); in push_pxx_to_hypervisor()
236 if (!xen_copy_psd_data(_pr, dst_perf)) in push_pxx_to_hypervisor()
241 _pr->acpi_id, dst_perf->flags); in push_pxx_to_hypervisor()
253 perf = _pr->performance; in push_pxx_to_hypervisor()
254 pr_debug("ACPI CPU%u - P-states uploaded.\n", _pr->acpi_id); in push_pxx_to_hypervisor()
267 ret, _pr->acpi_id); in push_pxx_to_hypervisor()
274 static int upload_pm_data(struct acpi_processor *_pr) in upload_pm_data() argument
279 if (__test_and_set_bit(_pr->acpi_id, acpi_ids_done)) { in upload_pm_data()
283 if (_pr->flags.power) in upload_pm_data()
284 err = push_cxx_to_hypervisor(_pr); in upload_pm_data()
286 if (_pr->performance && _pr->performance->states) in upload_pm_data()
287 err |= push_pxx_to_hypervisor(_pr); in upload_pm_data()
479 struct acpi_processor *_pr; in xen_upload_processor_pm_data() local
480 _pr = per_cpu(processors, i /* APIC ID */); in xen_upload_processor_pm_data()
481 if (!_pr) in xen_upload_processor_pm_data()
487 memcpy(pr_backup, _pr, sizeof(struct acpi_processor)); in xen_upload_processor_pm_data()
489 (void)upload_pm_data(_pr); in xen_upload_processor_pm_data()