linux/drivers/acpi
Linus Torvalds 836ee4874e Initial ACPI support for arm64:
This series introduces preliminary ACPI 5.1 support to the arm64 kernel
 using the "hardware reduced" profile. We don't support any peripherals
 yet, so it's fairly limited in scope:
 
 - Memory init (UEFI)
 - ACPI discovery (RSDP via UEFI)
 - CPU init (FADT)
 - GIC init (MADT)
 - SMP boot (MADT + PSCI)
 - ACPI Kconfig options (dependent on EXPERT)
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABCgAGBQJVNOC2AAoJELescNyEwWM08dIH/1Pn5xa04wwNDn0MOpbuQMk2
 kHM7hx69fbXflTJpnZRVyFBjRxxr5qilA7rljAFLnFeF8Fcll/s5VNy7ElHKLISq
 CB0ywgUfOd/sFJH57rcc67pC1b/XuqTbE1u1NFwvp2R3j1kGAEJWNA6SyxIP4bbc
 NO5jScx0lQOJ3rrPAXBW8qlGkeUk7TPOQJtMrpftNXlFLFrR63rPaEmMZ9dWepBF
 aRE4GXPvyUhpyv5o9RvlN5l8bQttiRJ3f9QjyG7NYhX0PXH3DyvGUzYlk2IoZtID
 v3ssCQH3uRsAZHIBhaTyNqFnUIaDR825bvGqyG/tj2Dt3kQZiF+QrfnU5D9TuMw=
 =zLJn
 -----END PGP SIGNATURE-----

Merge tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux

Pull initial ACPI support for arm64 from Will Deacon:
 "This series introduces preliminary ACPI 5.1 support to the arm64
  kernel using the "hardware reduced" profile.  We don't support any
  peripherals yet, so it's fairly limited in scope:

   - MEMORY init (UEFI)

   - ACPI discovery (RSDP via UEFI)

   - CPU init (FADT)

   - GIC init (MADT)

   - SMP boot (MADT + PSCI)

   - ACPI Kconfig options (dependent on EXPERT)

  ACPI for arm64 has been in development for a while now and hardware
  has been available that can boot with either FDT or ACPI tables.  This
  has been made possible by both changes to the ACPI spec to cater for
  ARM-based machines (known as "hardware-reduced" in ACPI parlance) but
  also a Linaro-driven effort to get this supported on top of the Linux
  kernel.  This pull request is the result of that work.

  These changes allow us to initialise the CPUs, interrupt controller,
  and timers via ACPI tables, with memory information and cmdline coming
  from EFI.  We don't support a hybrid ACPI/FDT scheme.  Of course,
  there is still plenty of work to do (a serial console would be nice!)
  but I expect that to happen on a per-driver basis after this core
  series has been merged.

  Anyway, the diff stat here is fairly horrible, but splitting this up
  and merging it via all the different subsystems would have been
  extremely painful.  Instead, we've got all the relevant Acks in place
  and I've not seen anything other than trivial (Kconfig) conflicts in
  -next (for completeness, I've included my resolution below).  Nearly
  half of the insertions fall under Documentation/.

  So, we'll see how this goes.  Right now, it all depends on EXPERT and
  I fully expect people to use FDT by default for the immediate future"

* tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (31 commits)
  ARM64 / ACPI: make acpi_map_gic_cpu_interface() as void function
  ARM64 / ACPI: Ignore the return error value of acpi_map_gic_cpu_interface()
  ARM64 / ACPI: fix usage of acpi_map_gic_cpu_interface
  ARM64: kernel: acpi: honour acpi=force command line parameter
  ARM64: kernel: acpi: refactor ACPI tables init and checks
  ARM64: kernel: psci: let ACPI probe PSCI version
  ARM64: kernel: psci: factor out probe function
  ACPI: move arm64 GSI IRQ model to generic GSI IRQ layer
  ARM64 / ACPI: Don't unflatten device tree if acpi=force is passed
  ARM64 / ACPI: additions of ACPI documentation for arm64
  Documentation: ACPI for ARM64
  ARM64 / ACPI: Enable ARM64 in Kconfig
  XEN / ACPI: Make XEN ACPI depend on X86
  ARM64 / ACPI: Select ACPI_REDUCED_HARDWARE_ONLY if ACPI is enabled on ARM64
  clocksource / arch_timer: Parse GTDT to initialize arch timer
  irqchip: Add GICv2 specific ACPI boot support
  ARM64 / ACPI: Introduce ACPI_IRQ_MODEL_GIC and register device's gsi
  ACPI / processor: Make it possible to get CPU hardware ID via GICC
  ACPI / processor: Introduce phys_cpuid_t for CPU hardware ID
  ARM64 / ACPI: Parse MADT for SMP initialization
  ...
2015-04-24 08:23:45 -07:00
..
acpica ACPICA: Store GPE register enable masks upfront 2015-04-15 04:00:27 +02:00
apei When checking addresses in APEI action entries for validity, allow 2015-01-15 11:30:57 +01:00
pmic ACPI/PMIC: Fix typo in MODULE_DESCRIPTION in intel_pmic_crc.c 2015-03-26 21:34:51 +01:00
ac.c power_supply: Change ownership from driver to core 2015-03-13 23:15:51 +01: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_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 ACPI/PAD: Use explicit broadcast oneshot control function 2015-04-03 08:44:34 +02:00
acpi_platform.c driver core / ACPI: Represent ACPI companions using fwnode_handle 2015-03-16 23:49:03 +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 Power management and ACPI updates for v4.1-rc1 2015-04-14 20:21:54 -07:00
battery.h
bgrt.c
blacklist.c ACPI / blacklist: Disable Vista compatibility for Sony VGN-SR19XN. 2015-03-16 15:14:50 +01:00
bus.c ARM64 / ACPI: Introduce ACPI_IRQ_MODEL_GIC and register device's gsi 2015-03-26 15:13:07 +00:00
button.c
cm_sbs.c
container.c ACPI / hotplug: Generate online uevents for ACPI containers 2014-09-21 02:58:18 +02:00
custom_method.c
debugfs.c
device_pm.c ACPI / PM: Remove unneeded nested #ifdef 2015-02-08 23:45:58 +01:00
dock.c driver core / ACPI: Represent ACPI companions using fwnode_handle 2015-03-16 23:49:03 +01:00
ec_sys.c
ec.c ACPI / EC: Call acpi_walk_dep_device_list() after installing EC opregion handler 2015-04-02 02:21:41 +02: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: Introduce has_acpi_companion() 2015-03-16 23:49:08 +01:00
gsi.c ACPI: move arm64 GSI IRQ model to generic GSI IRQ layer 2015-03-26 15:13:09 +00:00
hed.c
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: move arm64 GSI IRQ model to generic GSI IRQ layer 2015-03-26 15:13:09 +00:00
Makefile ACPI: move arm64 GSI IRQ model to generic GSI IRQ layer 2015-03-26 15:13:09 +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
osl.c ACPI: add arm64 to the platforms that use ioremap 2015-03-25 11:49:30 +00:00
pci_irq.c Revert "x86/PCI: Refine the way to release PCI IRQ resources" 2015-03-20 14:56:19 +01:00
pci_link.c
pci_root.c PCI: Don't clear ASPM bits when the FADT declares it's unsupported 2015-04-09 14:20:11 -05:00
pci_slot.c
power.c
proc.c
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
processor_idle.c Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2015-04-13 11:08:28 -07:00
processor_pdc.c
processor_perflib.c
processor_thermal.c
processor_throttling.c
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 power_supply: Change ownership from driver to core 2015-03-13 23:15:51 +01:00
sbshc.c
sbshc.h
scan.c ACPI / scan: Fix NULL pointer dereference in acpi_companion_match() 2015-04-13 21:35:51 +02:00
sleep.c ACPI / PM: Enable all wakeup GPEs in suspend-to-idle 2015-03-30 01:52:02 +02:00
sleep.h ACPI / sleep: Drop acpi_suspend() which is not used 2015-03-18 12:53:21 +01:00
sysfs.c ACPI / sysfs: Treat the count field of counter_show() as unsigned 2015-03-10 01:03:30 +01: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: Add force native backlight quirk for Lenovo Ideapad Z570 2015-03-22 22:02:51 +01:00
video.c ACPI / video: Add force native backlight quirk for Lenovo Ideapad Z570 2015-03-22 22:02:51 +01:00
wakeup.c