Skip to content

Commit 201729d

Browse files
committed
Merge branches 'for-next/sme', 'for-next/stacktrace', 'for-next/fault-in-subpage', 'for-next/misc', 'for-next/ftrace' and 'for-next/crashkernel', remote-tracking branch 'arm64/for-next/perf' into for-next/core
* arm64/for-next/perf: perf/arm-cmn: Decode CAL devices properly in debugfs perf/arm-cmn: Fix filter_sel lookup perf/marvell_cn10k: Fix tad_pmu_event_init() to check pmu type first drivers/perf: hisi: Add Support for CPA PMU drivers/perf: hisi: Associate PMUs in SICL with CPUs online drivers/perf: arm_spe: Expose saturating counter to 16-bit perf/arm-cmn: Add CMN-700 support perf/arm-cmn: Refactor occupancy filter selector perf/arm-cmn: Add CMN-650 support dt-bindings: perf: arm-cmn: Add CMN-650 and CMN-700 perf: check return value of armpmu_request_irq() perf: RISC-V: Remove non-kernel-doc ** comments * for-next/sme: (30 commits) : Scalable Matrix Extensions support. arm64/sve: Move sve_free() into SVE code section arm64/sve: Make kernel FPU protection RT friendly arm64/sve: Delay freeing memory in fpsimd_flush_thread() arm64/sme: More sensibly define the size for the ZA register set arm64/sme: Fix NULL check after kzalloc arm64/sme: Add ID_AA64SMFR0_EL1 to __read_sysreg_by_encoding() arm64/sme: Provide Kconfig for SME KVM: arm64: Handle SME host state when running guests KVM: arm64: Trap SME usage in guest KVM: arm64: Hide SME system registers from guests arm64/sme: Save and restore streaming mode over EFI runtime calls arm64/sme: Disable streaming mode and ZA when flushing CPU state arm64/sme: Add ptrace support for ZA arm64/sme: Implement ptrace support for streaming mode SVE registers arm64/sme: Implement ZA signal handling arm64/sme: Implement streaming SVE signal handling arm64/sme: Disable ZA and streaming mode when handling signals arm64/sme: Implement traps and syscall handling for SME arm64/sme: Implement ZA context switching arm64/sme: Implement streaming SVE context switching ... * for-next/stacktrace: : Stacktrace cleanups. arm64: stacktrace: align with common naming arm64: stacktrace: rename stackframe to unwind_state arm64: stacktrace: rename unwinder functions arm64: stacktrace: make struct stackframe private to stacktrace.c arm64: stacktrace: delete PCS comment arm64: stacktrace: remove NULL task check from unwind_frame() * for-next/fault-in-subpage: : btrfs search_ioctl() live-lock fix using fault_in_subpage_writeable(). btrfs: Avoid live-lock in search_ioctl() on hardware with sub-page faults arm64: Add support for user sub-page fault probing mm: Add fault_in_subpage_writeable() to probe at sub-page granularity * for-next/misc: : Miscellaneous patches. arm64: Kconfig.platforms: Add comments arm64: Kconfig: Fix indentation and add comments arm64: mm: avoid writable executable mappings in kexec/hibernate code arm64: lds: move special code sections out of kernel exec segment arm64/hugetlb: Implement arm64 specific huge_ptep_get() arm64/hugetlb: Use ptep_get() to get the pte value of a huge page arm64: mm: Make arch_faults_on_old_pte() check for migratability arm64: mte: Clean up user tag accessors arm64/hugetlb: Drop TLB flush from get_clear_flush() arm64: Declare non global symbols as static arm64: mm: Cleanup useless parameters in zone_sizes_init() arm64: fix types in copy_highpage() arm64: Set ARCH_NR_GPIO to 2048 for ARCH_APPLE arm64: cputype: Avoid overflow using MIDR_IMPLEMENTOR_MASK arm64: document the boot requirements for MTE arm64/mm: Compute PTRS_PER_[PMD|PUD] independently of PTRS_PER_PTE * for-next/ftrace: : ftrace cleanups. arm64/ftrace: Make function graph use ftrace directly ftrace: cleanup ftrace_graph_caller enable and disable * for-next/crashkernel: : Support for crashkernel reservations above ZONE_DMA. arm64: kdump: Do not allocate crash low memory if not needed docs: kdump: Update the crashkernel description for arm64 of: Support more than one crash kernel regions for kexec -s of: fdt: Add memory for devices by DT property "linux,usable-memory-range" arm64: kdump: Reimplement crashkernel=X arm64: Use insert_resource() to simplify code kdump: return -ENOENT if required cmdline option does not exist
7 parents c578121 + 8e1f78a + bd5552b + 18788e3 + aea3cb3 + c4a0ebf + 8f0f104 commit 201729d

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

74 files changed

+2991
-402
lines changed

Documentation/admin-guide/kernel-parameters.txt

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -808,7 +808,7 @@
808808
Documentation/admin-guide/kdump/kdump.rst for an example.
809809

810810
crashkernel=size[KMG],high
811-
[KNL, X86-64] range could be above 4G. Allow kernel
811+
[KNL, X86-64, ARM64] range could be above 4G. Allow kernel
812812
to allocate physical memory region from top, so could
813813
be above 4G if system have more than 4G ram installed.
814814
Otherwise memory region will be allocated below 4G, if
@@ -821,14 +821,20 @@
821821
that require some amount of low memory, e.g. swiotlb
822822
requires at least 64M+32K low memory, also enough extra
823823
low memory is needed to make sure DMA buffers for 32-bit
824-
devices won't run out. Kernel would try to allocate at
824+
devices won't run out. Kernel would try to allocate
825825
at least 256M below 4G automatically.
826-
This one let user to specify own low range under 4G
826+
This one lets the user specify own low range under 4G
827827
for second kernel instead.
828828
0: to disable low allocation.
829829
It will be ignored when crashkernel=X,high is not used
830830
or memory reserved is below 4G.
831831

832+
[KNL, ARM64] range in low memory.
833+
This one lets the user specify a low range in the
834+
DMA zone for the crash dump kernel.
835+
It will be ignored when crashkernel=X,high is not used
836+
or memory reserved is located in the DMA zones.
837+
832838
cryptomgr.notests
833839
[KNL] Disable crypto self-tests
834840

Documentation/arm64/booting.rst

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -350,6 +350,16 @@ Before jumping into the kernel, the following conditions must be met:
350350

351351
- SMCR_EL2.FA64 (bit 31) must be initialised to 0b1.
352352

353+
For CPUs with the Memory Tagging Extension feature (FEAT_MTE2):
354+
355+
- If EL3 is present:
356+
357+
- SCR_EL3.ATA (bit 26) must be initialised to 0b1.
358+
359+
- If the kernel is entered at EL1 and EL2 is present:
360+
361+
- HCR_EL2.ATA (bit 56) must be initialised to 0b1.
362+
353363
The requirements described above for CPU mode, caches, MMUs, architected
354364
timers, coherency and system registers apply to all CPUs. All CPUs must
355365
enter the kernel in the same exception level. Where the values documented

Documentation/arm64/elf_hwcaps.rst

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -264,6 +264,39 @@ HWCAP2_MTE3
264264
Functionality implied by ID_AA64PFR1_EL1.MTE == 0b0011, as described
265265
by Documentation/arm64/memory-tagging-extension.rst.
266266

267+
HWCAP2_SME
268+
269+
Functionality implied by ID_AA64PFR1_EL1.SME == 0b0001, as described
270+
by Documentation/arm64/sme.rst.
271+
272+
HWCAP2_SME_I16I64
273+
274+
Functionality implied by ID_AA64SMFR0_EL1.I16I64 == 0b1111.
275+
276+
HWCAP2_SME_F64F64
277+
278+
Functionality implied by ID_AA64SMFR0_EL1.F64F64 == 0b1.
279+
280+
HWCAP2_SME_I8I32
281+
282+
Functionality implied by ID_AA64SMFR0_EL1.I8I32 == 0b1111.
283+
284+
HWCAP2_SME_F16F32
285+
286+
Functionality implied by ID_AA64SMFR0_EL1.F16F32 == 0b1.
287+
288+
HWCAP2_SME_B16F32
289+
290+
Functionality implied by ID_AA64SMFR0_EL1.B16F32 == 0b1.
291+
292+
HWCAP2_SME_F32F32
293+
294+
Functionality implied by ID_AA64SMFR0_EL1.F32F32 == 0b1.
295+
296+
HWCAP2_SME_FA64
297+
298+
Functionality implied by ID_AA64SMFR0_EL1.FA64 == 0b1.
299+
267300
4. Unused AT_HWCAP bits
268301
-----------------------
269302

Documentation/arm64/index.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ ARM64 Architecture
2121
perf
2222
pointer-authentication
2323
silicon-errata
24+
sme
2425
sve
2526
tagged-address-abi
2627
tagged-pointers

0 commit comments

Comments
 (0)