[PATCHv2 00/12] arm/arm64: Unify PSCI client support
Mark Rutland
mark.rutland at arm.com
Mon May 18 03:38:11 PDT 2015
This series unifies the 32-bit and 64-bit PSCI client code, moving the bulk of
the FW invocation and probing out to a common locaiton in drivers/firmware.
As part of this, the remaining edge cases for PSCI 0.2 (Trusted OSs rejecting
CPU_OFF) are accounted for, maknig both 32-bit adn 64-bit clients more robust.
This results in a reasonable saving in terms of lines of code, and will allow
for PSCI 1.0 support to be unified form the beginning, avoiding further
duplication.
The series is based on v4.1-rc3.
Since v1 [1]:
* Fix build when PSCI isn't selected
* Don't indirect migrate_info_up_cpu
* Fix ver to u32 in psci_get_version
Thanks,
Mark.
[1] http://lists.infradead.org/pipermail/linux-arm-kernel/2015-May/341770.html
Mark Rutland (12):
arm/arm64: kvm: add missing PSCI include
arm64: smp_plat: add get_logical_index
arm64: smp: consistently use error codes
arm64: psci: remove unnecessary id indirection
arm64: psci: support unsigned return values
arm64: psci: account for Trusted OS instances
arm64: psci: kill psci_power_state
arm64: psci: remove ACPI coupling
arm64: psci: factor invocation code to drivers
drivers: psci: support native SMC{32,64} calls
ARM: migrate to common PSCI client code
MAINTAINERS: add PSCI entry
MAINTAINERS | 9 +
arch/arm/Kconfig | 1 +
arch/arm/include/asm/psci.h | 23 --
arch/arm/kernel/Makefile | 2 +-
arch/arm/kernel/psci_smp.c | 29 +-
arch/arm/kernel/setup.c | 3 +-
arch/arm/kvm/psci.c | 2 +
arch/arm/mach-highbank/highbank.c | 2 +-
arch/arm/mach-highbank/pm.c | 8 +-
arch/arm64/Kconfig | 1 +
arch/arm64/include/asm/acpi.h | 14 -
arch/arm64/include/asm/psci.h | 20 --
arch/arm64/include/asm/smp_plat.h | 16 ++
arch/arm64/kernel/acpi.c | 11 +
arch/arm64/kernel/psci.c | 398 +++------------------------
arch/arm64/kernel/setup.c | 2 +-
arch/arm64/kernel/smp.c | 10 +-
drivers/cpuidle/cpuidle-calxeda.c | 7 +-
drivers/firmware/Kconfig | 3 +
drivers/firmware/Makefile | 1 +
{arch/arm/kernel => drivers/firmware}/psci.c | 245 +++++++++++------
include/linux/psci.h | 51 ++++
22 files changed, 328 insertions(+), 530 deletions(-)
delete mode 100644 arch/arm64/include/asm/psci.h
rename {arch/arm/kernel => drivers/firmware}/psci.c (50%)
create mode 100644 include/linux/psci.h
--
1.9.1
More information about the linux-arm-kernel
mailing list