Bug#900581: linux: Enable Buster kernel features for newer ARM64 servers.
Hi,
I've rebased my two kernel config patches, attached, to the latest
v4.17.17-1 buster kernel. These patches enable kernel features for
newer ARM64 servers.
0001-arm64-Use-default-of-CONFIG_ACPI_NFIT-m.patch
0002-arm64-Updates-for-ACPI-servers.patch
The issue that Riku brought up of how to support HPE m400 moonshot
systems when ACPI_APEI is enabled has been resolved on the
arm-kernel ML [1]. In summary, the latest released m400 firmware
did not support APEI, and so no special work-around or kernel quirk
support is needed.
With the resolution of that issue I feel these patches are ready to
apply. Please consider.
[1] https://www.spinics.net/lists/arm-kernel/msg670446.html (efi: add contents of LinuxExtraArgs EFI var to command line)
-Geoff
>From 7d93f2d534f3ba60b94402b337e165d34e1caf25 Mon Sep 17 00:00:00 2001
From: Geoff Levand <geoff@infradead.org>
Date: Wed, 13 Jun 2018 10:50:57 -0700
Subject: [PATCH 1/7] [arm64] Use default of CONFIG_ACPI_NFIT=m
Commit ed497f3cb706d0e0f63844b064d9ebbf6f33b052 (Add server and 96boards options)
added an arm64 specific CONFIG_ACPI_NFIT=y, overriding the default of =m, but the
commit message mentions nothing about why this was done.
Remove the arm64 specific setting and use the default of module build.
Cc: Riku Voipio <riku.voipio@linaro.org>
Signed-off-by: Geoff Levand <geoff@infradead.org>
---
debian/config/arm64/config | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/debian/config/arm64/config b/debian/config/arm64/config
index adf3e60bd9f5..72f2dadc16e3 100644
--- a/debian/config/arm64/config
+++ b/debian/config/arm64/config
@@ -71,7 +71,7 @@ CONFIG_ACPI_NUMA=y
##
## file: drivers/acpi/nfit/Kconfig
##
-CONFIG_ACPI_NFIT=y
+CONFIG_ACPI_NFIT=m
##
## file: drivers/android/Kconfig
--
2.14.1
>From 10f4c4399f54d99f293047c3d6dfeba08849526e Mon Sep 17 00:00:00 2001
From: Geoff Levand <geoff@infradead.org>
Date: Wed, 13 Jun 2018 10:50:57 -0700
Subject: [PATCH 2/7] [arm64] Updates for ACPI servers
o Enable CONFIG_SCHED_SMT for hyperthreading processors.
o Enable CONFIG_ARM64_LSE_ATOMICS for v8.1 processors.
o Enable a number of ACPI options likely to be available on servers.
o CONFIG_ACPI_APEI selects PSTORE, so remove the arm64 specific setting.
Signed-off-by: Geoff Levand <geoff@infradead.org>
---
debian/config/arm64/config | 29 ++++++++++++++++++++++++-----
1 file changed, 24 insertions(+), 5 deletions(-)
diff --git a/debian/config/arm64/config b/debian/config/arm64/config
index 72f2dadc16e3..250395babf59 100644
--- a/debian/config/arm64/config
+++ b/debian/config/arm64/config
@@ -9,6 +9,7 @@ CONFIG_ARM64_ERRATUM_834220=y
CONFIG_ARM64_VA_BITS_48=y
## end choice
CONFIG_SCHED_MC=y
+CONFIG_SCHED_SMT=y
CONFIG_NR_CPUS=256
CONFIG_NUMA=y
CONFIG_SECCOMP=y
@@ -24,6 +25,7 @@ CONFIG_RANDOMIZE_BASE=y
CONFIG_RANDOMIZE_MODULE_REGION_FULL=y
CONFIG_ARM64_ACPI_PARKING_PROTOCOL=y
CONFIG_COMPAT=y
+CONFIG_ARM64_LSE_ATOMICS=y
##
## file: arch/arm64/crypto/Kconfig
@@ -67,6 +69,21 @@ CONFIG_ARCH_XGENE=y
##
CONFIG_ACPI=y
CONFIG_ACPI_NUMA=y
+CONFIG_ACPI_PCI_SLOT=y
+CONFIG_ACPI_HED=y
+CONFIG_ACPI_BGRT=y
+CONFIG_ACPI_WATCHDOG=y
+CONFIG_ACPI_CONFIGFS=m
+
+##
+## file: drivers/acpi/apei/Kconfig
+##
+CONFIG_ACPI_APEI=y
+CONFIG_ACPI_APEI_GHES=y
+CONFIG_ACPI_APEI_PCIEAER=y
+CONFIG_ACPI_APEI_SEA=y
+CONFIG_ACPI_APEI_MEMORY_FAILURE=y
+CONFIG_ACPI_APEI_EINJ=m
##
## file: drivers/acpi/nfit/Kconfig
@@ -222,6 +239,12 @@ CONFIG_EXTCON_USB_GPIO=m
##
CONFIG_RASPBERRYPI_FIRMWARE=y
+##
+## file: drivers/firmware/efi/Kconfig
+##
+CONFIG_UEFI_CPER=y
+CONFIG_UEFI_CPER_ARM=y
+
##
## file: drivers/gpio/Kconfig
##
@@ -1097,6 +1120,7 @@ CONFIG_VIRTIO_MMIO=m
## file: drivers/watchdog/Kconfig
##
CONFIG_GPIO_WATCHDOG=m
+CONFIG_WDAT_WDT=m
CONFIG_ARM_SP805_WATCHDOG=m
CONFIG_ARM_SBSA_WATCHDOG=m
CONFIG_DW_WATCHDOG=m
@@ -1107,11 +1131,6 @@ CONFIG_MESON_GXBB_WATCHDOG=m
CONFIG_MESON_WATCHDOG=m
CONFIG_BCM2835_WDT=m
-##
-## file: fs/pstore/Kconfig
-##
-CONFIG_PSTORE=y
-
##
## file: mm/Kconfig
##
--
2.14.1
Reply to: