forked from torvalds/linux
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kern…
…el/git/arm64/linux Pull arm64 updates from Will Deacon: "The highlights are support for Arm's "Permission Overlay Extension" using memory protection keys, support for running as a protected guest on Android as well as perf support for a bunch of new interconnect PMUs. Summary: ACPI: - Enable PMCG erratum workaround for HiSilicon HIP10 and 11 platforms. - Ensure arm64-specific IORT header is covered by MAINTAINERS. CPU Errata: - Enable workaround for hardware access/dirty issue on Ampere-1A cores. Memory management: - Define PHYSMEM_END to fix a crash in the amdgpu driver. - Avoid tripping over invalid kernel mappings on the kexec() path. - Userspace support for the Permission Overlay Extension (POE) using protection keys. Perf and PMUs: - Add support for the "fixed instruction counter" extension in the CPU PMU architecture. - Extend and fix the event encodings for Apple's M1 CPU PMU. - Allow LSM hooks to decide on SPE permissions for physical profiling. - Add support for the CMN S3 and NI-700 PMUs. Confidential Computing: - Add support for booting an arm64 kernel as a protected guest under Android's "Protected KVM" (pKVM) hypervisor. Selftests: - Fix vector length issues in the SVE/SME sigreturn tests - Fix build warning in the ptrace tests. Timers: - Add support for PR_{G,S}ET_TSC so that 'rr' can deal with non-determinism arising from the architected counter. Miscellaneous: - Rework our IPI-based CPU stopping code to try NMIs if regular IPIs don't succeed. - Minor fixes and cleanups" * tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (94 commits) perf: arm-ni: Fix an NULL vs IS_ERR() bug arm64: hibernate: Fix warning for cast from restricted gfp_t arm64: esr: Define ESR_ELx_EC_* constants as UL arm64: pkeys: remove redundant WARN perf: arm_pmuv3: Use BR_RETIRED for HW branch event if enabled MAINTAINERS: List Arm interconnect PMUs as supported perf: Add driver for Arm NI-700 interconnect PMU dt-bindings/perf: Add Arm NI-700 PMU perf/arm-cmn: Improve format attr printing perf/arm-cmn: Clean up unnecessary NUMA_NO_NODE check arm64/mm: use lm_alias() with addresses passed to memblock_free() mm: arm64: document why pte is not advanced in contpte_ptep_set_access_flags() arm64: Expose the end of the linear map in PHYSMEM_END arm64: trans_pgd: mark PTEs entries as valid to avoid dead kexec() arm64/mm: Delete __init region from memblock.reserved perf/arm-cmn: Support CMN S3 dt-bindings: perf: arm-cmn: Add CMN S3 perf/arm-cmn: Refactor DTC PMU register access perf/arm-cmn: Make cycle counts less surprising perf/arm-cmn: Improve build-time assertion ...
- Loading branch information
Showing
125 changed files
with
3,393 additions
and
891 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
==================================== | ||
Arm Network-on Chip Interconnect PMU | ||
==================================== | ||
|
||
NI-700 and friends implement a distinct PMU for each clock domain within the | ||
interconnect. Correspondingly, the driver exposes multiple PMU devices named | ||
arm_ni_<x>_cd_<y>, where <x> is an (arbitrary) instance identifier and <y> is | ||
the clock domain ID within that particular instance. If multiple NI instances | ||
exist within a system, the PMU devices can be correlated with the underlying | ||
hardware instance via sysfs parentage. | ||
|
||
Each PMU exposes base event aliases for the interface types present in its clock | ||
domain. These require qualifying with the "eventid" and "nodeid" parameters | ||
to specify the event code to count and the interface at which to count it | ||
(per the configured hardware ID as reflected in the xxNI_NODE_INFO register). | ||
The exception is the "cycles" alias for the PMU cycle counter, which is encoded | ||
with the PMU node type and needs no further qualification. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -16,6 +16,7 @@ properties: | |
- arm,cmn-600 | ||
- arm,cmn-650 | ||
- arm,cmn-700 | ||
- arm,cmn-s3 | ||
- arm,ci-700 | ||
|
||
reg: | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/perf/arm,ni.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: Arm NI (Network-on-Chip Interconnect) Performance Monitors | ||
|
||
maintainers: | ||
- Robin Murphy <[email protected]> | ||
|
||
properties: | ||
compatible: | ||
const: arm,ni-700 | ||
|
||
reg: | ||
items: | ||
- description: Complete configuration register space | ||
|
||
interrupts: | ||
minItems: 1 | ||
maxItems: 32 | ||
description: Overflow interrupts, one per clock domain, in order of domain ID | ||
|
||
required: | ||
- compatible | ||
- reg | ||
- interrupts | ||
|
||
additionalProperties: false |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -334,6 +334,7 @@ L: [email protected] | |
L: [email protected] (moderated for non-subscribers) | ||
S: Maintained | ||
F: drivers/acpi/arm64 | ||
F: include/linux/acpi_iort.h | ||
|
||
ACPI FOR RISC-V (ACPI/riscv) | ||
M: Sunil V L <[email protected]> | ||
|
@@ -1752,6 +1753,17 @@ F: drivers/mtd/maps/physmap-versatile.* | |
F: drivers/power/reset/arm-versatile-reboot.c | ||
F: drivers/soc/versatile/ | ||
|
||
ARM INTERCONNECT PMU DRIVERS | ||
M: Robin Murphy <[email protected]> | ||
S: Supported | ||
F: Documentation/admin-guide/perf/arm-cmn.rst | ||
F: Documentation/admin-guide/perf/arm-ni.rst | ||
F: Documentation/devicetree/bindings/perf/arm,cmn.yaml | ||
F: Documentation/devicetree/bindings/perf/arm,ni.yaml | ||
F: drivers/perf/arm-cmn.c | ||
F: drivers/perf/arm-ni.c | ||
F: tools/perf/pmu-events/arch/arm64/arm/cmn/ | ||
|
||
ARM KOMEDA DRM-KMS DRIVER | ||
M: Liviu Dudau <[email protected]> | ||
S: Supported | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.