linux/Documentation/arm64
Andrew Murray aaba098fe6 arm64: HWCAP: add support for AT_HWCAP2
As we will exhaust the first 32 bits of AT_HWCAP let's start
exposing AT_HWCAP2 to userspace to give us up to 64 caps.

Whilst it's possible to use the remaining 32 bits of AT_HWCAP, we
prefer to expand into AT_HWCAP2 in order to provide a consistent
view to userspace between ILP32 and LP64. However internal to the
kernel we prefer to continue to use the full space of elf_hwcap.

To reduce complexity and allow for future expansion, we now
represent hwcaps in the kernel as ordinals and use a
KERNEL_HWCAP_ prefix. This allows us to support automatic feature
based module loading for all our hwcaps.

We introduce cpu_set_feature to set hwcaps which complements the
existing cpu_have_feature helper. These helpers allow us to clean
up existing direct uses of elf_hwcap and reduce any future effort
required to move beyond 64 caps.

For convenience we also introduce cpu_{have,set}_named_feature which
makes use of the cpu_feature macro to allow providing a hwcap name
without a {KERNEL_}HWCAP_ prefix.

Signed-off-by: Andrew Murray <andrew.murray@arm.com>
[will: use const_ilog2() and tweak documentation]
Signed-off-by: Will Deacon <will.deacon@arm.com>
2019-04-16 16:27:12 +01:00
..
acpi_object_usage.txt ARM64: ACPI: Update documentation for latest specification version 2016-06-21 16:26:09 +01:00
arm-acpi.txt ARM64: ACPI: Update documentation for latest specification version 2016-06-21 16:26:09 +01:00
booting.txt irqchip/gic-v3: Detect if GIC can support pseudo-NMIs 2019-02-06 10:05:21 +00:00
cpu-feature-registers.txt arm64: docs: document pointer authentication 2018-12-13 16:42:47 +00:00
elf_hwcaps.txt arm64: HWCAP: add support for AT_HWCAP2 2019-04-16 16:27:12 +01:00
hugetlbpage.txt Documentation/arm64: HugeTLB page implementation 2018-10-10 18:08:36 +01:00
legacy_instructions.txt arm64: Emulate SETEND for AArch32 tasks 2015-01-23 17:11:44 +00:00
memory.txt arm64: KVM: Allow mapping of vectors outside of the RAM region 2018-03-19 13:06:46 +00:00
pointer-authentication.txt arm64: add ptrace regsets for ptrauth key management 2019-02-01 13:56:58 +00:00
silicon-errata.txt arm64 updates for 5.1: 2019-03-10 10:17:23 -07:00
sve.txt Documentation/arm64/sve: Couple of improvements and typos 2018-08-29 11:33:19 +01:00
tagged-pointers.txt arm64: documentation: document tagged pointer stack constraints 2017-05-09 17:43:18 +01:00