linux/arch/arm64
Mark Rutland e0013aed48 arm64: add function to get a cpu's MADT GICC table
Currently the ACPI parking protocol code needs to parse each CPU's MADT
GICC table to extract the mailbox address and so on. Each time we parse
a GICC table, we call back to the parking protocol code to parse it.

This has been fine so far, but we're about to have more code that needs
to extract data from the GICC tables, and adding a callback for each
user is going to get unwieldy.

Instead, this patch ensures that we stash a copy of each CPU's GICC
table at boot time, such that anything needing to parse it can later
request it. This will allow for other parsers of GICC, and for
simplification to the ACPI parking protocol code. Note that we must
store a copy, rather than a pointer, since the core ACPI code
temporarily maps/unmaps tables while iterating over them.

Since we parse the MADT before we know how many CPUs we have (and hence
before we setup the percpu areas), we must use an NR_CPUS sized array.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Reviewed-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Tested-by: Jeremy Linton <jeremy.linton@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-04-11 16:29:54 +01:00
..
boot Merge tag 'juno-fixes-4.11' of git://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux into next/late 2017-03-02 23:08:31 +01:00
configs ARM: SoC defconfig updates for v4.11 2017-02-23 15:39:32 -08:00
crypto crypto: arm64/aes - add NEON/Crypto Extensions CBCMAC/CMAC/XCBC driver 2017-02-11 17:50:45 +08:00
include arm64: add function to get a cpu's MADT GICC table 2017-04-11 16:29:54 +01:00
kernel arm64: add function to get a cpu's MADT GICC table 2017-04-11 16:29:54 +01:00
kvm arm64: KVM: Survive unknown traps from guests 2017-03-07 14:50:46 +00:00
lib scripts/spelling.txt: add "overwritting" pattern and fix typo instances 2017-02-27 18:43:47 -08:00
mm arm64: kasan: avoid bad virt_to_pfn() 2017-03-10 17:41:41 +00:00
net bpf: fix unlocking of jited image when module ronx not set 2017-02-21 13:30:14 -05:00
xen xen/privcmd: Add IOCTL_PRIVCMD_DM_OP 2017-02-14 15:13:43 -05:00
Kconfig arm64 fixes/cleanups: 2017-03-16 11:47:28 -07:00
Kconfig.debug arm64 updates for 4.11: 2017-02-22 10:46:44 -08:00
Kconfig.platforms arm64: add THUNDER2 processor family 2017-02-09 16:25:26 +01:00
Makefile arm64: Add detection code for broken .inst support in binutils 2016-12-06 15:54:21 +00:00