-
Notifications
You must be signed in to change notification settings - Fork 18
5.4 kernel patches (WIP)
Welcome to the ampere-lts-kernel wiki!
There are cases to run upstream longterm maintenance kernel on Ampere Altra™ SoC. This guide lists Linux kernel patches and kernel configurations related with Altra, targeting for longterm 5.4 kernel. The guide is based on the Ampere Altra™ Linux Kernel Porting Guide.
Kernel patches and configurations are back ported from Ampere centos kernel. Kernel patch is on linux-5.4.y branch: https://github.com/AmpereComputing/ampere-lts-kernel/tree/linux-5.4.y
NUMA
These patches provide multi-socket optimization:
Accepted Kernel | Hash Tag | Subject |
5.10 | 409b032 | arm64: NUMA: Kconfig: Increase NODES_SHIFT to 4 |
N/A | 30abc1a | NOUPSTREAM: arm64: Kconfig: Enable NODES_SPAN_OTHER_NODES config for NUMA |
ARM64
This patch is required to fix PCI ECAM reading:
Accepted Kernel | Hash Tag | Subject |
5.10 | 44b1b99 | drivers/pci: Add ecam quirk for Ampere Altra SOC. |
This patch is required to fix soft lockup during heavy stress test:
Accepted Kernel | Hash Tag | Subject |
5.8 | 480804b | BACKPORT: Split the old READ_IMPLIES_EXEC workaround from executable. |
HW Monitor
These patches are required to support HW monitor:
Accepted Kernel | Hash Tag | Subject |
TBD - 5.11? | 8109a6c | hwmon: Add Ampere Altra HW monitor driver |
APEI
These patches are required to support APEI/RAS features:
Accepted Kernel | Hash Tag | Subject |
5.8 | af3b585 | BACKPORT: mm/memory-failure: Add memory_failure_queue_kick() |
5.8 | 16ac324 | BACKPORT: ACPI / APEI: Kick the memory_failure() queue for synchronous err |
PMU
Accepted Kernel | Hash Tag | Subject |
---|---|---|
CMN-600 | ||
5.10 | 80264b8 | perf:Add Arm CMN-600 DT binding |
5.10 | cdaf907 | perf: Add Arm CMN-600 PMU driver |
ARM DSU | ||
5.10 | 7655e30 | perf: arm_dsu: Support ACPI mode |
TBD | 48b4d60 | NOUPSTREAM:perf: arm_dsu: Allow IRQ to be shared among devices |
DMC-620 | ||
5.11 | 8895c29 | perf: Add ARM DMC-620 PMU driver |
5.11 | 51af7e2 | perf: arm_dmc620: Update ACPI ID |
ARM SMMUv3 PMU (PMCG) | ||
5.5 | a4b00c9 | perf/smmuv3: Remove the leftover put_cpu() in error path |
5.8 | 779bed7 | perf/smmuv3: Allow sharing MMIO registers with the SMMU drive |
scsi: mpt3sas
Fix CPU lock up when doing fio test. The issue is because of the driver didn't handle IRQ correctly when number of cores greater than number of MSIx supported
Accepted Kernel | 5.4 kernel version | Hash Tag | Subject |
5.9 | 5.4.66 | 122cdbd | scsi: mpt3sas: Don't call disable_irq from IRQ poll handler |
APEI
Accepted Kernel | 5.4 kernel version | Hash Tag | Subject |
5.8 | 5.4.69 | af02933 | arm64: acpi: Make apei_claim_sea() synchronise with APEI's irq work |
PMU
Accepted Kernel | 5.4 kernel version | Hash Tag | Subject |
---|---|---|---|
5.8 | Already in 5.4.93 | b1d2d3d | ACPI/IORT: Fix PMCG node always look for a single ID mapping |
Please refer to altra_5.4_defconfig. It is based on Ampere centos 8 default kernel configure.
Significant changes are:
Ampere centos 8 kernel | 5.4.93 kernel |
---|---|
CONFIG_ARM64_USER_VA_BITS_52=y | replaced by CONFIG_ARM64_VA_BITS_52=y |
CONFIG_SYSTEM_TRUSTED_KEYS="certs/rhel.pem" | not set |
Enabld features:
Features | Configures |
---|---|
64KB page | CONFIG_ARM64_64K_PAGES=y |
numa nodes | CONFIG_NODES_SHIFT=6 |
Altra HW monitor driver | CONFIG_SENSORS_ALTRA=m |
Arm CMN-600 PMU | CONFIG_ARM_CMN=y |
ARM DynamIQ Shared Unit (DSU) PMU | CONFIG_ARM_DSU_PMU=y |
DMC-620 PMU | CONFIG_ARM_DMC620_PMU=y |
ARMv8.2 Statistical Profiling Extension | CONFIG_ARM_SPE_PMU=y |
ARM SMMUv3 Performance Monitors Extension | CONFIG_ARM_SMMU_V3_PMU=y |