Revision 836ee4874e201a5907f9658fb2bf3527dd952d30 authored by Linus Torvalds on 24 April 2015, 15:23:45 UTC, committed by Linus Torvalds on 24 April 2015, 15:23:45 UTC
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
  ...
2 parent s fb65d87 + 7676fa7
Raw File
Kconfig.debug
menu "Kernel hacking"

source "lib/Kconfig.debug"

config EARLY_PRINTK
	bool
	depends on ALPHA_GENERIC || ALPHA_SRM
	default y

config ALPHA_LEGACY_START_ADDRESS
	bool "Legacy kernel start address"
	depends on ALPHA_GENERIC
	default n
	---help---
	  The 2.4 kernel changed the kernel start address from 0x310000
	  to 0x810000 to make room for the Wildfire's larger SRM console.
	  Recent consoles on Titan and Marvel machines also require the
	  extra room.

	  If you're using aboot 0.7 or later, the bootloader will examine the
	  ELF headers to determine where to transfer control. Unfortunately,
	  most older bootloaders -- APB or MILO -- hardcoded the kernel start
	  address rather than examining the ELF headers, and the result is a
	  hard lockup.

	  Say Y if you have a broken bootloader.  Say N if you do not, or if
	  you wish to run on Wildfire, Titan, or Marvel.

config ALPHA_LEGACY_START_ADDRESS
	bool
	depends on !ALPHA_GENERIC && !ALPHA_TITAN && !ALPHA_MARVEL && !ALPHA_WILDFIRE
	default y

config MATHEMU
	tristate "Kernel FP software completion" if DEBUG_KERNEL && !SMP
	default y if !DEBUG_KERNEL || SMP
	help
	  This option is required for IEEE compliant floating point arithmetic
	  on the Alpha. The only time you would ever not say Y is to say M in
	  order to debug the code. Say Y unless you know what you are doing.

endmenu
back to top