linux/include/acpi
Joao Martins 4d0f1ce695 xen/acpi: upload _PSD info for non Dom0 CPUs too
All uploaded PM data from non-dom0 CPUs takes the info from vCPU 0 and
changing only the acpi_id. For processors which P-state coordination type
is HW_ALL (0xFD) it is OK to upload bogus P-state dependency information
(_PSD), because Xen will ignore any cpufreq domains created for past CPUs.

Albeit for platforms which expose coordination types as SW_ANY or SW_ALL,
this will have some unintended side effects. Effectively, it will look at
the P-state domain existence and *if it already exists* it will skip the
acpi-cpufreq initialization and thus inherit the policy from the first CPU
in the cpufreq domain. This will finally lead to the original cpu not
changing target freq to P0 other than the first in the domain. Which will
make turbo boost not getting enabled (e.g. for 'performance' governor) for
all cpus.

This patch fixes that, by also evaluating _PSD when we enumerate all ACPI
processors and thus always uploading the correct info to Xen. We export
acpi_processor_get_psd() for that this purpose, but change signature
to not assume an existent of acpi_processor given that ACPI isn't creating
an acpi_processor for non-dom0 CPUs.

Signed-off-by: Joao Martins <joao.m.martins@oracle.com>
Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
2018-03-21 08:29:13 -04:00
..
platform ACPICA: All acpica: Update copyrights to 2018 2018-02-06 10:31:20 +01:00
acbuffer.h ACPICA: All acpica: Update copyrights to 2018 2018-02-06 10:31:20 +01:00
acconfig.h ACPICA: All acpica: Update copyrights to 2018 2018-02-06 10:31:20 +01:00
acexcep.h ACPICA: All acpica: Update copyrights to 2018 2018-02-06 10:31:20 +01:00
acnames.h ACPICA: All acpica: Update copyrights to 2018 2018-02-06 10:31:20 +01:00
acoutput.h ACPICA: All acpica: Update copyrights to 2018 2018-02-06 10:31:20 +01:00
acpi_bus.h ACPI: utils: Introduce acpi_dev_get_first_match_name() 2018-01-10 00:41:43 +01:00
acpi_drivers.h ACPI / EC: Fix regression related to PM ops support in ECDT device 2017-11-21 00:13:02 +01:00
acpi_io.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
acpi_lpat.h ACPI / LPAT: Common table processing functions 2015-01-29 21:02:10 +08:00
acpi_numa.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
acpi.h ACPICA: All acpica: Update copyrights to 2018 2018-02-06 10:31:20 +01:00
acpiosxf.h ACPICA: All acpica: Update copyrights to 2018 2018-02-06 10:31:20 +01:00
acpixf.h ACPICA: Update version to 20180105 2018-02-06 10:32:13 +01:00
acrestyp.h ACPICA: All acpica: Update copyrights to 2018 2018-02-06 10:31:20 +01:00
actbl1.h ACPICA: All acpica: Update copyrights to 2018 2018-02-06 10:31:20 +01:00
actbl2.h ACPICA: All acpica: Update copyrights to 2018 2018-02-06 10:31:20 +01:00
actbl3.h ACPICA: All acpica: Update copyrights to 2018 2018-02-06 10:31:20 +01:00
actbl.h ACPICA: All acpica: Update copyrights to 2018 2018-02-06 10:31:20 +01:00
actypes.h ACPICA: All acpica: Update copyrights to 2018 2018-02-06 10:31:20 +01:00
acuuid.h ACPICA: All acpica: Update copyrights to 2018 2018-02-06 10:31:20 +01:00
apei.h Merge branches 'acpi-pmic', 'acpi-apei' and 'acpi-x86' 2017-11-13 01:37:17 +01:00
button.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
cppc_acpi.h ACPI / CPPC: add sysfs entries for CPPC perf capabilities 2017-04-18 23:37:50 +02:00
ghes.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
hed.h ACPI Hardware Error Device (PNP0C33) support 2010-05-19 22:40:24 -04:00
pcc.h mailbox: PCC: Move the MAX_PCC_SUBSPACES definition to header file 2017-11-09 00:39:53 +01:00
pdc_intel.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
processor.h xen/acpi: upload _PSD info for non Dom0 CPUs too 2018-03-21 08:29:13 -04:00
reboot.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
video.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00