linux/drivers/acpi
Hanjun Guo 020295b4cb ACPI / processor: Make it possible to get CPU hardware ID via GICC
Introduce a new function map_gicc_mpidr() to allow MPIDRs to be obtained
from the GICC Structure introduced by ACPI 5.1, since MPIDR for ARM64 is
64-bit, so typedef u64 for phys_cpuid_t.

The ARM architecture defines the MPIDR register as the CPU hardware
identifier. This patch adds the code infrastructure to retrieve the MPIDR
values from the ARM ACPI GICC structure in order to look-up the kernel CPU
hardware ids required by the ACPI core code to identify CPUs.

CC: Rafael J. Wysocki <rjw@rjwysocki.net>
CC: Catalin Marinas <catalin.marinas@arm.com>
CC: Will Deacon <will.deacon@arm.com>
Tested-by: Suravee Suthikulpanit <Suravee.Suthikulpanit@amd.com>
Tested-by: Yijing Wang <wangyijing@huawei.com>
Tested-by: Mark Langsdorf <mlangsdo@redhat.com>
Tested-by: Jon Masters <jcm@redhat.com>
Tested-by: Timur Tabi <timur@codeaurora.org>
Tested-by: Robert Richter <rrichter@cavium.com>
Acked-by: Robert Richter <rrichter@cavium.com>
Acked-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Reviewed-by: Grant Likely <grant.likely@linaro.org>
Signed-off-by: Hanjun Guo <hanjun.guo@linaro.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2015-03-26 15:13:07 +00:00
..
acpica kernel.h: remove ancient __FUNCTION__ hack 2015-02-12 18:54:13 -08:00
apei When checking addresses in APEI action entries for validity, allow 2015-01-15 11:30:57 +01:00
pmic ACPI / PMIC: Use common LPAT table handling functions 2015-01-29 21:02:11 +08:00
ac.c Revert "ACPI / AC: Remove AC's proc directory." 2014-07-07 01:13:46 +02:00
acpi_apd.c ACPI: add AMD ACPI2Platform device support for x86 system 2015-02-06 15:42:16 +01:00
acpi_cmos_rtc.c ACPI / RTC: Fix CMOS RTC opregion handler accesses to wrong addresses 2014-09-08 15:38:41 +02:00
acpi_extlog.c ACPI and power management updates for 3.17-rc1 2014-08-06 20:34:19 -07:00
acpi_ipmi.c
acpi_lpat.c ACPI / LPAT: Common table processing functions 2015-01-29 21:02:10 +08:00
acpi_lpss.c ACPI / LPSS: provide con_id for the clkdev 2015-03-10 00:28:43 +01:00
acpi_memhotplug.c ACPICA: Resources: Provide common part for struct acpi_resource_address structures. 2015-01-26 16:09:56 +01:00
acpi_pad.c cpumask: factor out show_cpumap into separate helper function 2014-11-07 11:45:00 -08:00
acpi_platform.c resources: Move struct resource_list_entry from ACPI into resource core 2015-02-05 15:09:25 +01:00
acpi_pnp.c ACPI and power management updates for 3.18-rc1 2014-10-09 16:07:43 -04:00
acpi_processor.c ACPI / processor: Introduce phys_cpuid_t for CPU hardware ID 2015-03-26 15:12:51 +00:00
battery.c ACPI: Add _DEP support to fix battery issue on Asus T100TA 2014-11-24 01:04:55 +01:00
battery.h ACPI / battery: move some ACPI_BATTERY_* definitions to header 2014-03-19 01:57:46 +01:00
bgrt.c
blacklist.c acpi: Remove _OSI(Linux) for ThinkPads 2014-12-04 04:03:55 -08:00
bus.c ACPIPHP / radeon / nouveau: Remove acpi_bus_no_hotplug() 2014-09-15 13:15:34 -06:00
button.c ACPI / button: Do not propagate wakeup-from-suspend events 2014-07-23 00:59:04 +02:00
cm_sbs.c ACPI: Revert "ACPI: Remove CONFIG_ACPI_PROCFS_POWER and cm_sbsc.c" 2014-05-06 01:52:09 +02:00
container.c ACPI / hotplug: Generate online uevents for ACPI containers 2014-09-21 02:58:18 +02:00
custom_method.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
debugfs.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
device_pm.c ACPI / PM: Remove unneeded nested #ifdef 2015-02-08 23:45:58 +01:00
dock.c ACPI / dock: Drop dock_device_ids[] table 2014-04-07 14:11:35 +02:00
ec_sys.c ACPI / EC: Mark the function acpi_ec_add_debugfs() as static in ec_sys.c 2014-01-06 00:13:22 +01:00
ec.c ACPI / EC: Remove non-standard log emphasis 2015-02-17 18:27:59 +01:00
event.c netlink: make nlmsg_end() and genlmsg_end() void 2015-01-18 01:03:45 -05:00
fan.c ACPI / Fan: Use bus id as the name for non PNP0C0B (Fan) devices 2014-12-11 00:29:02 +01:00
glue.c ACPI / scan: Add bind/unbind callbacks to struct acpi_scan_handler 2014-02-11 00:35:46 +01:00
hed.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
int340x_thermal.c ACPI/int340x_thermal: enumerate INT3401 for Intel SoC DTS thermal driver 2015-01-06 08:17:14 +08:00
internal.h ACPI / sleep: Introduce CONFIG_ACPI_SYSTEM_POWER_STATES_SUPPORT 2015-03-25 11:49:31 +00:00
ioapic.c x86/irq, ACPI: Implement ACPI driver to support IOAPIC hotplug 2015-02-05 15:09:26 +01:00
Kconfig ACPI / sleep: Introduce CONFIG_ACPI_SYSTEM_POWER_STATES_SUPPORT 2015-03-25 11:49:31 +00:00
Makefile ACPI / sleep: Introduce CONFIG_ACPI_SYSTEM_POWER_STATES_SUPPORT 2015-03-25 11:49:31 +00:00
numa.c ACPI / table: remove duplicate NULL check for the handler of acpi_table_parse() 2015-02-06 01:34:47 +01:00
nvs.c ACPI: Clean up acpi_os_map/unmap_memory() to eliminate __iomem. 2014-05-27 18:13:08 +02:00
osl.c ACPI: add arm64 to the platforms that use ioremap 2015-03-25 11:49:30 +00:00
pci_irq.c x86/PCI: Refine the way to release PCI IRQ resources 2015-02-05 15:09:26 +01:00
pci_link.c ACPI: Remove duplicate definitions of PREFIX 2014-03-19 02:01:57 +01:00
pci_root.c x86/irq, ACPI: Implement ACPI driver to support IOAPIC hotplug 2015-02-05 15:09:26 +01:00
pci_slot.c ACPI / PCI: Include appropriate header file in pci_slot.c 2014-01-06 00:13:22 +01:00
power.c ACPI: Remove duplicate definitions of PREFIX 2014-03-19 02:01:57 +01:00
proc.c ACPI / proc: remove unneeded NULL check 2014-02-05 01:06:21 +01:00
processor_core.c ACPI / processor: Make it possible to get CPU hardware ID via GICC 2015-03-26 15:13:07 +00:00
processor_driver.c ACPI / processor: Make acpi_cpu_soft_notify() process CPU FROZEN events 2014-08-06 22:22:03 +02:00
processor_idle.c ACPI / idle: Implement ->enter_freeze callback routine 2015-02-15 19:40:10 +01:00
processor_pdc.c ACPI / processor: Introduce ARCH_MIGHT_HAVE_ACPI_PDC 2014-07-21 13:50:58 +02:00
processor_perflib.c ACPI / processor: use acpi_evaluate_ost() to replace open-coded version 2014-02-21 00:27:47 +01:00
processor_thermal.c ACPI: correct minor typos 2013-12-07 01:38:45 +01:00
processor_throttling.c ACPI / processor: Rework processor throttling with work_on_cpu() 2014-02-27 00:21:05 +01:00
property.c ACPI / property: Drop size_prop from acpi_dev_get_property_reference() 2014-11-05 20:48:06 +01:00
reboot.c
resource.c x86/PCI/ACPI: Relax ACPI resource descriptor checks to work around BIOS bugs 2015-03-04 14:09:50 +01:00
sbs.c ACPI / SBS: Fix check in acpi_ac_get_present() 2014-09-28 01:27:42 +02:00
sbshc.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
sbshc.h
scan.c ACPI: add AMD ACPI2Platform device support for x86 system 2015-02-06 15:42:16 +01:00
sleep.c ACPI / sleep: mark acpi_sleep_dmi_check() __init 2015-01-23 22:10:16 +01:00
sleep.h
sysfs.c ACPICA: Events: Reduce source code difference for the ACPI_EVENT_FLAG_HANDLE renaming. 2014-10-21 00:39:40 +02:00
tables.c ACPI / table: Print GIC information when MADT is parsed 2015-03-25 11:49:31 +00:00
thermal.c Thermal: move the KELVIN_TO_MILLICELSIUS macro to thermal.h 2014-10-10 13:57:15 +08:00
utils.c Merge branches 'acpi-scan', 'acpi-utils' and 'acpi-pm' 2014-12-18 18:42:56 +01:00
video_detect.c ACPI / video: force vendor backlight on Lenovo Ideapad Z570 2014-09-24 23:09:41 +02:00
video.c ACPI / video: Propagate the error code for acpi_video_register 2015-03-04 15:10:36 +01:00
wakeup.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00