Merge pull request #3354 from sharkcz/locale
run build in defined locale
diff --git a/README.md b/README.md
index 8b54b9c..8e8d880 100644
--- a/README.md
+++ b/README.md
@@ -66,9 +66,9 @@
2. Install the packages necessary for the build:
sudo dnf install gcc-c++ flex bison git ctags cscope expat-devel patch \
- zlib-devel zlib-static texinfo perl-bignum "perl(XML::Simple)" \
+ zlib-devel zlib-static texinfo "perl(bigint)" "perl(XML::Simple)" \
"perl(YAML)" "perl(XML::SAX)" "perl(Fatal)" "perl(Thread::Queue)" \
"perl(Env)" "perl(XML::LibXML)" "perl(Digest::SHA1)" "perl(ExtUtils::MakeMaker)" \
libxml2-devel which wget unzip tar cpio python bzip2 bc findutils ncurses-devel \
- openssl-devel make libxslt vim-common
+ openssl-devel make libxslt vim-common lzo-devel python2
diff --git a/buildroot b/buildroot
index d2eb9d6..17f1172 160000
--- a/buildroot
+++ b/buildroot
@@ -1 +1 @@
-Subproject commit d2eb9d62c1f1651c49369fe566c8f989134f9c09
+Subproject commit 17f117295f545db5207c0a6ffd515035af0c4f49
diff --git a/openpower/configs/barreleye_defconfig b/openpower/configs/barreleye_defconfig
index c4434f8..532ca03 100644
--- a/openpower/configs/barreleye_defconfig
+++ b/openpower/configs/barreleye_defconfig
@@ -16,7 +16,7 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.7"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.16"
BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_OP_BUILD_PATH)/linux"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
diff --git a/openpower/configs/blackbird_defconfig b/openpower/configs/blackbird_defconfig
index ff6a7f8..937c940 100644
--- a/openpower/configs/blackbird_defconfig
+++ b/openpower/configs/blackbird_defconfig
@@ -16,7 +16,7 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.7"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.16"
BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_OP_BUILD_PATH)/linux"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
diff --git a/openpower/configs/firenze_defconfig b/openpower/configs/firenze_defconfig
index 16371b0..f9167e6 100644
--- a/openpower/configs/firenze_defconfig
+++ b/openpower/configs/firenze_defconfig
@@ -14,7 +14,7 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.7"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.16"
BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_OP_BUILD_PATH)/linux"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
diff --git a/openpower/configs/firestone_defconfig b/openpower/configs/firestone_defconfig
index a4d77df..4ee72b3 100644
--- a/openpower/configs/firestone_defconfig
+++ b/openpower/configs/firestone_defconfig
@@ -16,7 +16,7 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.7"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.16"
BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_OP_BUILD_PATH)/linux"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
diff --git a/openpower/configs/garrison_defconfig b/openpower/configs/garrison_defconfig
index 5b433bd..9b88767 100644
--- a/openpower/configs/garrison_defconfig
+++ b/openpower/configs/garrison_defconfig
@@ -16,7 +16,7 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.7"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.16"
BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_OP_BUILD_PATH)/linux"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
diff --git a/openpower/configs/habanero_defconfig b/openpower/configs/habanero_defconfig
index 4a7c439..6460dcd 100644
--- a/openpower/configs/habanero_defconfig
+++ b/openpower/configs/habanero_defconfig
@@ -16,7 +16,7 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.7"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.16"
BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_OP_BUILD_PATH)/linux"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
diff --git a/openpower/configs/linux/skiroot_defconfig b/openpower/configs/linux/skiroot_defconfig
index 554158a..d0cda0e 100644
--- a/openpower/configs/linux/skiroot_defconfig
+++ b/openpower/configs/linux/skiroot_defconfig
@@ -23,12 +23,15 @@
# CONFIG_AIO is not set
CONFIG_PERF_EVENTS=y
# CONFIG_COMPAT_BRK is not set
+# CONFIG_SLAB_MERGE_DEFAULT is not set
+CONFIG_SLAB_FREELIST_RANDOM=y
CONFIG_SLAB_FREELIST_HARDENED=y
CONFIG_PPC64=y
CONFIG_ALTIVEC=y
CONFIG_VSX=y
CONFIG_NR_CPUS=2048
CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_PANIC_TIMEOUT=30
# CONFIG_PPC_VAS is not set
# CONFIG_PPC_PSERIES is not set
# CONFIG_PPC_OF_BOOT_TRAMPOLINE is not set
@@ -36,6 +39,7 @@
CONFIG_CPU_IDLE=y
CONFIG_HZ_100=y
CONFIG_KEXEC=y
+CONFIG_KEXEC_FILE=y
CONFIG_PRESERVE_FA_DUMP=y
CONFIG_IRQ_ALL_CPUS=y
CONFIG_NUMA=y
@@ -49,7 +53,6 @@
CONFIG_STRICT_KERNEL_RWX=y
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
-CONFIG_MODULE_SIG=y
CONFIG_MODULE_SIG_FORCE=y
CONFIG_MODULE_SIG_SHA512=y
CONFIG_PARTITION_ADVANCED=y
@@ -64,12 +67,8 @@
CONFIG_IP_MULTICAST=y
CONFIG_NET_IPIP=y
CONFIG_SYN_COOKIES=y
-# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
-# CONFIG_INET_XFRM_MODE_TUNNEL is not set
-# CONFIG_INET_XFRM_MODE_BEET is not set
CONFIG_DNS_RESOLVER=y
# CONFIG_WIRELESS is not set
-CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y
CONFIG_MTD=m
@@ -150,7 +149,6 @@
# CONFIG_NET_VENDOR_DLINK is not set
CONFIG_BE2NET=m
# CONFIG_NET_VENDOR_EZCHIP is not set
-# CONFIG_NET_VENDOR_HP is not set
# CONFIG_NET_VENDOR_HUAWEI is not set
CONFIG_E1000=m
CONFIG_E1000E=m
@@ -174,7 +172,6 @@
# CONFIG_NET_VENDOR_NVIDIA is not set
# CONFIG_NET_VENDOR_OKI is not set
# CONFIG_NET_VENDOR_PACKET_ENGINES is not set
-CONFIG_QLGE=m
CONFIG_NETXEN_NIC=m
CONFIG_QED=m
CONFIG_QEDE=m
@@ -214,6 +211,7 @@
CONFIG_HW_RANDOM=y
CONFIG_TCG_TPM=y
CONFIG_TCG_TIS_I2C_NUVOTON=y
+# CONFIG_DEVPORT is not set
CONFIG_I2C=y
# CONFIG_I2C_COMPAT is not set
CONFIG_I2C_CHARDEV=y
@@ -240,7 +238,6 @@
CONFIG_HID_EZKEY=y
CONFIG_HID_ITE=y
CONFIG_HID_KENSINGTON=y
-CONFIG_HID_LOGITECH=y
CONFIG_HID_MICROSOFT=y
CONFIG_HID_MONTEREY=y
CONFIG_USB_HIDDEV=y
@@ -278,10 +275,15 @@
CONFIG_NLS_ISO8859_1=y
CONFIG_NLS_UTF8=y
CONFIG_ENCRYPTED_KEYS=y
-# CONFIG_CRYPTO_ECHAINIV is not set
-CONFIG_CRYPTO_XTS=m
-CONFIG_CRYPTO_USER_API_HASH=m
-CONFIG_CRYPTO_USER_API_SKCIPHER=m
+CONFIG_SECURITY=y
+CONFIG_HARDENED_USERCOPY=y
+# CONFIG_HARDENED_USERCOPY_FALLBACK is not set
+CONFIG_HARDENED_USERCOPY_PAGESPAN=y
+CONFIG_FORTIFY_SOURCE=y
+CONFIG_SECURITY_LOCKDOWN_LSM=y
+CONFIG_SECURITY_LOCKDOWN_LSM_EARLY=y
+# CONFIG_INTEGRITY is not set
+CONFIG_LSM="yama,loadpin,safesetid,integrity"
# CONFIG_CRYPTO_HW is not set
CONFIG_CRC16=y
CONFIG_CRC_ITU_T=y
@@ -293,13 +295,20 @@
# CONFIG_XZ_DEC_SPARC is not set
CONFIG_PRINTK_TIME=y
CONFIG_MAGIC_SYSRQ=y
+CONFIG_SLUB_DEBUG_ON=y
CONFIG_DEBUG_STACKOVERFLOW=y
CONFIG_SOFTLOCKUP_DETECTOR=y
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC=y
CONFIG_HARDLOCKUP_DETECTOR=y
CONFIG_BOOTPARAM_HARDLOCKUP_PANIC=y
CONFIG_WQ_WATCHDOG=y
+CONFIG_PANIC_ON_OOPS=y
# CONFIG_SCHED_DEBUG is not set
+CONFIG_SCHED_STACK_END_CHECK=y
+CONFIG_DEBUG_SG=y
+CONFIG_DEBUG_NOTIFIERS=y
+CONFIG_DEBUG_CREDENTIALS=y
# CONFIG_FTRACE is not set
# CONFIG_RUNTIME_TESTING_MENU is not set
+CONFIG_BUG_ON_DATA_CORRUPTION=y
CONFIG_XMON=y
diff --git a/openpower/configs/mihawk_defconfig b/openpower/configs/mihawk_defconfig
index 333e131..b4f2c4a 100644
--- a/openpower/configs/mihawk_defconfig
+++ b/openpower/configs/mihawk_defconfig
@@ -17,7 +17,7 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.7"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.16"
BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_OP_BUILD_PATH)/linux"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
diff --git a/openpower/configs/nicole_defconfig b/openpower/configs/nicole_defconfig
index 1c326a6..de9f857 100644
--- a/openpower/configs/nicole_defconfig
+++ b/openpower/configs/nicole_defconfig
@@ -15,7 +15,7 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.7"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.16"
BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_OP_BUILD_PATH)/linux"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
diff --git a/openpower/configs/opal_defconfig b/openpower/configs/opal_defconfig
index 31b41f3..8c8fdf2 100644
--- a/openpower/configs/opal_defconfig
+++ b/openpower/configs/opal_defconfig
@@ -12,7 +12,7 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.7"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.16"
BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_OP_BUILD_PATH)/linux"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
diff --git a/openpower/configs/p8dtu_defconfig b/openpower/configs/p8dtu_defconfig
index fc4b51e..e23c8bc 100644
--- a/openpower/configs/p8dtu_defconfig
+++ b/openpower/configs/p8dtu_defconfig
@@ -17,7 +17,7 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.7"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.16"
BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_OP_BUILD_PATH)/linux"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
diff --git a/openpower/configs/p9dsu_defconfig b/openpower/configs/p9dsu_defconfig
index 4b1eaad..414efc4 100644
--- a/openpower/configs/p9dsu_defconfig
+++ b/openpower/configs/p9dsu_defconfig
@@ -16,7 +16,7 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.7"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.16"
BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_OP_BUILD_PATH)/linux"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
diff --git a/openpower/configs/palmetto_defconfig b/openpower/configs/palmetto_defconfig
index 8a29cd3..e6cd6bd 100644
--- a/openpower/configs/palmetto_defconfig
+++ b/openpower/configs/palmetto_defconfig
@@ -14,7 +14,7 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.7"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.16"
BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_OP_BUILD_PATH)/linux"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
diff --git a/openpower/configs/pseries_defconfig b/openpower/configs/pseries_defconfig
index 2b865b8..6773777 100644
--- a/openpower/configs/pseries_defconfig
+++ b/openpower/configs/pseries_defconfig
@@ -15,7 +15,7 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.7"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.16"
BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_OP_BUILD_PATH)/linux"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/pseries_skiroot_defconfig"
diff --git a/openpower/configs/romulus_defconfig b/openpower/configs/romulus_defconfig
index dc14941..255147e 100644
--- a/openpower/configs/romulus_defconfig
+++ b/openpower/configs/romulus_defconfig
@@ -16,7 +16,7 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.7"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.16"
BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_OP_BUILD_PATH)/linux"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
diff --git a/openpower/configs/vesnin_defconfig b/openpower/configs/vesnin_defconfig
index faaedee..4443420 100644
--- a/openpower/configs/vesnin_defconfig
+++ b/openpower/configs/vesnin_defconfig
@@ -15,7 +15,7 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.7"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.16"
BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_OP_BUILD_PATH)/linux"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
diff --git a/openpower/configs/witherspoon_defconfig b/openpower/configs/witherspoon_defconfig
index ce01345..12ddf5c 100644
--- a/openpower/configs/witherspoon_defconfig
+++ b/openpower/configs/witherspoon_defconfig
@@ -16,7 +16,7 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.7"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.16"
BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_OP_BUILD_PATH)/linux"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
@@ -48,7 +48,7 @@
BR2_OPENPOWER_POWER9=y
BR2_HOSTBOOT_CONFIG_FILE="witherspoon.config"
BR2_OPENPOWER_MACHINE_XML_GITHUB_PROJECT_VALUE="witherspoon-xml"
-BR2_OPENPOWER_MACHINE_XML_VERSION="c622cb5a5dd3ebc2a4eef558d1b70740f914e6f7"
+BR2_OPENPOWER_MACHINE_XML_VERSION="0f9b3666becbd5a94d31ff39a2f2a81260c961ed"
BR2_OPENPOWER_MACHINE_XML_FILENAME="witherspoon.xml"
BR2_OPENPOWER_SYSTEM_XML_FILENAME="WITHERSPOON_hb.system.xml"
BR2_OPENPOWER_MRW_XML_FILENAME="WITHERSPOON_hb.mrw.xml"
diff --git a/openpower/configs/zaius_defconfig b/openpower/configs/zaius_defconfig
index b923613..a2fc116 100644
--- a/openpower/configs/zaius_defconfig
+++ b/openpower/configs/zaius_defconfig
@@ -16,7 +16,7 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.7"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.16"
BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_OP_BUILD_PATH)/linux"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
diff --git a/openpower/configs/zz_defconfig b/openpower/configs/zz_defconfig
index 13dd574..5b3c921 100644
--- a/openpower/configs/zz_defconfig
+++ b/openpower/configs/zz_defconfig
@@ -14,7 +14,7 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.7"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.16"
BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_OP_BUILD_PATH)/linux"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
diff --git a/openpower/linux/0001-xhci-Reset-controller-on-xhci-shutdown.patch b/openpower/linux/0001-xhci-Reset-controller-on-xhci-shutdown.patch
index a911fe6..e2dda15 100644
--- a/openpower/linux/0001-xhci-Reset-controller-on-xhci-shutdown.patch
+++ b/openpower/linux/0001-xhci-Reset-controller-on-xhci-shutdown.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Brian King <brking@linux.vnet.ibm.com>
Date: Wed, 25 Oct 2017 10:42:59 +1100
-Subject: [PATCH 1/8] xhci: Reset controller on xhci shutdown
+Subject: [PATCH 1/3] xhci: Reset controller on xhci shutdown
Fixes kexec boot. Without a hard reset, some USB chips will fail to
initialize in a kexec booted kernel.
@@ -10,18 +10,20 @@
Signed-off-by: Samuel Mendoza-Jonas <sam@mendozajonas.com>
Signed-off-by: Joel Stanley <joel@jms.id.au>
---
- drivers/usb/host/xhci.c | 1 +
- 1 file changed, 1 insertion(+)
+ drivers/usb/host/xhci.c | 3 +++
+ 1 file changed, 3 insertions(+)
diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
-index ee9d2e0fc53a..e2ced6c34620 100644
+index 9b3b1b16eafb..2a3aa1509d40 100644
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
-@@ -793,6 +793,7 @@ static void xhci_shutdown(struct usb_hcd *hcd)
- /* Yet another workaround for spurious wakeups at shutdown with HSW */
- if (xhci->quirks & XHCI_SPURIOUS_WAKEUP)
- pci_set_power_state(to_pci_dev(hcd->self.sysdev), PCI_D3hot);
+@@ -789,6 +789,9 @@ void xhci_shutdown(struct usb_hcd *hcd)
+ xhci_dbg_trace(xhci, trace_xhci_dbg_init,
+ "xhci_shutdown completed - status = %x",
+ readl(&xhci->op_regs->status));
++
++ /* TI XHCI controllers do not come back after kexec without this hack */
+ pci_reset_function_locked(to_pci_dev(hcd->self.sysdev));
}
+ EXPORT_SYMBOL_GPL(xhci_shutdown);
- #ifdef CONFIG_PM
diff --git a/openpower/linux/0005-powerpc-configs-add-FADump-support-in-petitboot-kern.patch b/openpower/linux/0002-powerpc-configs-add-FADump-awareness-to-skiroot_defc.patch
similarity index 69%
rename from openpower/linux/0005-powerpc-configs-add-FADump-support-in-petitboot-kern.patch
rename to openpower/linux/0002-powerpc-configs-add-FADump-awareness-to-skiroot_defc.patch
index 2983711..3f92079 100644
--- a/openpower/linux/0005-powerpc-configs-add-FADump-support-in-petitboot-kern.patch
+++ b/openpower/linux/0002-powerpc-configs-add-FADump-awareness-to-skiroot_defc.patch
@@ -1,20 +1,24 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Hari Bathini <hbathini@linux.ibm.com>
-Date: Wed, 9 Oct 2019 10:45:41 +0530
-Subject: [PATCH 5/8] powerpc/configs: add FADump support in petitboot kernel
+Date: Wed, 9 Oct 2019 19:34:29 +0530
+Subject: [PATCH 2/3] powerpc/configs: add FADump awareness to
+ skiroot_defconfig
FADump is supported on PowerNV platform. To fulfill this support, the
petitboot kernel must be FADump aware. Enable config PRESERVE_FA_DUMP
to make the petitboot kernel FADump aware.
Signed-off-by: Hari Bathini <hbathini@linux.ibm.com>
+Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
+Link: https://lore.kernel.org/r/157062986936.23016.10146169203560084401.stgit@hbathini.in.ibm.com
+(cherry picked from commit aaa351504449c4babb80753c72920e4b25fbd8a9)
Signed-off-by: Joel Stanley <joel@jms.id.au>
---
arch/powerpc/configs/skiroot_defconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/powerpc/configs/skiroot_defconfig b/arch/powerpc/configs/skiroot_defconfig
-index 557b530b2f70..7a1f0cc62c67 100644
+index 1253482a67c0..1e18454083ff 100644
--- a/arch/powerpc/configs/skiroot_defconfig
+++ b/arch/powerpc/configs/skiroot_defconfig
@@ -46,6 +46,7 @@ CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
diff --git a/openpower/linux/0002-powerpc-opal-add-MPIPL-interface-definitions.patch b/openpower/linux/0002-powerpc-opal-add-MPIPL-interface-definitions.patch
deleted file mode 100644
index 9fad7d8..0000000
--- a/openpower/linux/0002-powerpc-opal-add-MPIPL-interface-definitions.patch
+++ /dev/null
@@ -1,125 +0,0 @@
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Hari Bathini <hbathini@linux.ibm.com>
-Date: Wed, 9 Oct 2019 10:45:19 +0530
-Subject: [PATCH 2/8] powerpc/opal: add MPIPL interface definitions
-
-MPIPL is Memory Preserving IPL supported from POWER9. This enables the
-kernel to reset the system with memory 'preserved'. Also, it supports
-copying memory from a source address to some destination address during
-MPIPL boot. Add MPIPL interface definitions here to leverage these f/w
-features in adding FADump support for PowerNV platform.
-
-This is the backport of upstream commit 6f5f193e84d3 ("powerpc/opal:
-add MPIPL interface definitions").
-
-Signed-off-by: Hari Bathini <hbathini@linux.ibm.com>
-Signed-off-by: Joel Stanley <joel@jms.id.au>
----
- arch/powerpc/include/asm/opal-api.h | 44 +++++++++++++++++++++-
- arch/powerpc/include/asm/opal.h | 5 +++
- arch/powerpc/platforms/powernv/opal-call.c | 3 ++
- 3 files changed, 51 insertions(+), 1 deletion(-)
-
-diff --git a/arch/powerpc/include/asm/opal-api.h b/arch/powerpc/include/asm/opal-api.h
-index 383242eb0dea..3c39e7f7ba4c 100644
---- a/arch/powerpc/include/asm/opal-api.h
-+++ b/arch/powerpc/include/asm/opal-api.h
-@@ -208,7 +208,10 @@
- #define OPAL_HANDLE_HMI2 166
- #define OPAL_NX_COPROC_INIT 167
- #define OPAL_XIVE_GET_VP_STATE 170
--#define OPAL_LAST 170
-+#define OPAL_MPIPL_UPDATE 173
-+#define OPAL_MPIPL_REGISTER_TAG 174
-+#define OPAL_MPIPL_QUERY_TAG 175
-+#define OPAL_LAST 175
-
- #define QUIESCE_HOLD 1 /* Spin all calls at entry */
- #define QUIESCE_REJECT 2 /* Fail all calls with OPAL_BUSY */
-@@ -1059,6 +1062,7 @@ enum {
- OPAL_REBOOT_NORMAL = 0,
- OPAL_REBOOT_PLATFORM_ERROR = 1,
- OPAL_REBOOT_FULL_IPL = 2,
-+ OPAL_REBOOT_MPIPL = 3,
- };
-
- /* Argument to OPAL_PCI_TCE_KILL */
-@@ -1135,6 +1139,44 @@ enum {
- #define OPAL_PCI_P2P_LOAD 0x2
- #define OPAL_PCI_P2P_STORE 0x4
-
-+/* MPIPL update operations */
-+enum opal_mpipl_ops {
-+ OPAL_MPIPL_ADD_RANGE = 0,
-+ OPAL_MPIPL_REMOVE_RANGE = 1,
-+ OPAL_MPIPL_REMOVE_ALL = 2,
-+ OPAL_MPIPL_FREE_PRESERVED_MEMORY = 3,
-+};
-+
-+/* Tag will point to various metadata area. Kernel will
-+ * use tag to get metadata value.
-+ */
-+enum opal_mpipl_tags {
-+ OPAL_MPIPL_TAG_CPU = 0,
-+ OPAL_MPIPL_TAG_OPAL = 1,
-+ OPAL_MPIPL_TAG_KERNEL = 2,
-+ OPAL_MPIPL_TAG_BOOT_MEM = 3,
-+};
-+
-+/* Preserved memory details */
-+struct opal_mpipl_region {
-+ __be64 src;
-+ __be64 dest;
-+ __be64 size;
-+};
-+
-+/* Structure version */
-+#define OPAL_MPIPL_VERSION 0x01
-+
-+struct opal_mpipl_fadump {
-+ u8 version;
-+ u8 reserved[7];
-+ __be32 crashing_pir; /* OPAL crashing CPU PIR */
-+ __be32 cpu_data_version;
-+ __be32 cpu_data_size;
-+ __be32 region_cnt;
-+ struct opal_mpipl_region region[];
-+} __packed;
-+
- #endif /* __ASSEMBLY__ */
-
- #endif /* __OPAL_API_H */
-diff --git a/arch/powerpc/include/asm/opal.h b/arch/powerpc/include/asm/opal.h
-index d5a0807d21db..a0cf8fba4d12 100644
---- a/arch/powerpc/include/asm/opal.h
-+++ b/arch/powerpc/include/asm/opal.h
-@@ -39,6 +39,7 @@ int64_t opal_npu_spa_clear_cache(uint64_t phb_id, uint32_t bdfn,
- uint64_t PE_handle);
- int64_t opal_npu_tl_set(uint64_t phb_id, uint32_t bdfn, long cap,
- uint64_t rate_phys, uint32_t size);
-+
- int64_t opal_console_write(int64_t term_number, __be64 *length,
- const uint8_t *buffer);
- int64_t opal_console_read(int64_t term_number, __be64 *length,
-@@ -297,6 +298,10 @@ int opal_sensor_group_clear(u32 group_hndl, int token);
- int opal_sensor_group_enable(u32 group_hndl, int token, bool enable);
- int opal_nx_coproc_init(uint32_t chip_id, uint32_t ct);
-
-+s64 opal_mpipl_update(enum opal_mpipl_ops op, u64 src, u64 dest, u64 size);
-+s64 opal_mpipl_register_tag(enum opal_mpipl_tags tag, u64 addr);
-+s64 opal_mpipl_query_tag(enum opal_mpipl_tags tag, u64 *addr);
-+
- s64 opal_signal_system_reset(s32 cpu);
- s64 opal_quiesce(u64 shutdown_type, s32 cpu);
-
-diff --git a/arch/powerpc/platforms/powernv/opal-call.c b/arch/powerpc/platforms/powernv/opal-call.c
-index dccdc9df5213..a2aa5e433ac8 100644
---- a/arch/powerpc/platforms/powernv/opal-call.c
-+++ b/arch/powerpc/platforms/powernv/opal-call.c
-@@ -287,3 +287,6 @@ OPAL_CALL(opal_pci_set_pbcq_tunnel_bar, OPAL_PCI_SET_PBCQ_TUNNEL_BAR);
- OPAL_CALL(opal_sensor_read_u64, OPAL_SENSOR_READ_U64);
- OPAL_CALL(opal_sensor_group_enable, OPAL_SENSOR_GROUP_ENABLE);
- OPAL_CALL(opal_nx_coproc_init, OPAL_NX_COPROC_INIT);
-+OPAL_CALL(opal_mpipl_update, OPAL_MPIPL_UPDATE);
-+OPAL_CALL(opal_mpipl_register_tag, OPAL_MPIPL_REGISTER_TAG);
-+OPAL_CALL(opal_mpipl_query_tag, OPAL_MPIPL_QUERY_TAG);
diff --git a/openpower/linux/0008-Release-OpenPower-kernel.patch b/openpower/linux/0003-Release-OpenPower-kernel.patch
similarity index 74%
rename from openpower/linux/0008-Release-OpenPower-kernel.patch
rename to openpower/linux/0003-Release-OpenPower-kernel.patch
index 1a1240f..b9504bb 100644
--- a/openpower/linux/0008-Release-OpenPower-kernel.patch
+++ b/openpower/linux/0003-Release-OpenPower-kernel.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Joel Stanley <joel@jms.id.au>
Date: Tue, 16 Jul 2019 11:40:02 +0930
-Subject: [PATCH 8/8] Release OpenPower kernel
+Subject: [PATCH 3/3] Release OpenPower kernel
Signed-off-by: Joel Stanley <joel@jms.id.au>
---
@@ -9,15 +9,15 @@
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index 7a3e659c79ae..6f9b6f4b3b5c 100644
+index e16d2e58ed4b..cabff177cbb4 100644
--- a/Makefile
+++ b/Makefile
@@ -2,7 +2,7 @@
VERSION = 5
- PATCHLEVEL = 3
- SUBLEVEL = 7
+ PATCHLEVEL = 4
+ SUBLEVEL = 16
-EXTRAVERSION =
+EXTRAVERSION = -openpower1
- NAME = Bobtail Squid
+ NAME = Kleptomaniac Octopus
# *DOCUMENTATION*
diff --git a/openpower/linux/0003-powerpc-fadump-improve-how-crashed-kernel-s-memory-i.patch b/openpower/linux/0003-powerpc-fadump-improve-how-crashed-kernel-s-memory-i.patch
deleted file mode 100644
index eb6750b..0000000
--- a/openpower/linux/0003-powerpc-fadump-improve-how-crashed-kernel-s-memory-i.patch
+++ /dev/null
@@ -1,105 +0,0 @@
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Hari Bathini <hbathini@linux.ibm.com>
-Date: Wed, 9 Oct 2019 10:45:26 +0530
-Subject: [PATCH 3/8] powerpc/fadump: improve how crashed kernel's memory is
- reserved
-
-The size parameter to fadump_reserve_crash_area() function is not needed
-as all the memory above boot memory size must be preserved anyway. Update
-the function by dropping this redundant parameter.
-
-This is the backport of upstream commit b2a815a554a3 ("powerpc/fadump:
-improve how crashed kernel's memory is reserved").
-
-Signed-off-by: Hari Bathini <hbathini@linux.ibm.com>
-Signed-off-by: Joel Stanley <joel@jms.id.au>
----
- arch/powerpc/kernel/fadump.c | 53 ++++++++++++++++++++----------------
- 1 file changed, 30 insertions(+), 23 deletions(-)
-
-diff --git a/arch/powerpc/kernel/fadump.c b/arch/powerpc/kernel/fadump.c
-index 4eab97292cc2..4dacce3fac72 100644
---- a/arch/powerpc/kernel/fadump.c
-+++ b/arch/powerpc/kernel/fadump.c
-@@ -33,6 +33,9 @@
- #include <asm/setup.h>
-
- static struct fw_dump fw_dump;
-+
-+static void __init fadump_reserve_crash_area(u64 base);
-+
- static struct fadump_mem_struct fdm;
- static const struct fadump_mem_struct *fdm_active;
- #ifdef CONFIG_CMA
-@@ -426,26 +429,6 @@ static unsigned long get_fadump_area_size(void)
- return size;
- }
-
--static void __init fadump_reserve_crash_area(unsigned long base,
-- unsigned long size)
--{
-- struct memblock_region *reg;
-- unsigned long mstart, mend, msize;
--
-- for_each_memblock(memory, reg) {
-- mstart = max_t(unsigned long, base, reg->base);
-- mend = reg->base + reg->size;
-- mend = min(base + size, mend);
--
-- if (mstart < mend) {
-- msize = mend - mstart;
-- memblock_reserve(mstart, msize);
-- pr_info("Reserved %ldMB of memory at %#016lx for saving crash dump\n",
-- (msize >> 20), mstart);
-- }
-- }
--}
--
- int __init fadump_reserve_mem(void)
- {
- unsigned long base, size, memory_boundary;
-@@ -510,13 +493,13 @@ int __init fadump_reserve_mem(void)
- #endif
- /*
- * If last boot has crashed then reserve all the memory
-- * above boot_memory_size so that we don't touch it until
-+ * above boot memory size so that we don't touch it until
- * dump is written to disk by userspace tool. This memory
-- * will be released for general use once the dump is saved.
-+ * can be released for general use by invalidating fadump.
- */
- base = fw_dump.boot_memory_size;
- size = memory_boundary - base;
-- fadump_reserve_crash_area(base, size);
-+ fadump_reserve_crash_area(base);
-
- fw_dump.fadumphdr_addr =
- be64_to_cpu(fdm_active->rmr_region.destination_address) +
-@@ -1701,3 +1684,27 @@ int __init setup_fadump(void)
- return 1;
- }
- subsys_initcall(setup_fadump);
-+
-+/* Preserve everything above the base address */
-+static void __init fadump_reserve_crash_area(u64 base)
-+{
-+ struct memblock_region *reg;
-+ u64 mstart, msize;
-+
-+ for_each_memblock(memory, reg) {
-+ mstart = reg->base;
-+ msize = reg->size;
-+
-+ if ((mstart + msize) < base)
-+ continue;
-+
-+ if (mstart < base) {
-+ msize -= (base - mstart);
-+ mstart = base;
-+ }
-+
-+ pr_info("Reserving %lluMB of memory at %#016llx for preserving crash data",
-+ (msize >> 20), mstart);
-+ memblock_reserve(mstart, msize);
-+ }
-+}
diff --git a/openpower/linux/0004-powerpc-fadump-add-support-to-preserve-crash-data-on.patch b/openpower/linux/0004-powerpc-fadump-add-support-to-preserve-crash-data-on.patch
deleted file mode 100644
index 5a92339..0000000
--- a/openpower/linux/0004-powerpc-fadump-add-support-to-preserve-crash-data-on.patch
+++ /dev/null
@@ -1,291 +0,0 @@
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Hari Bathini <hbathini@linux.ibm.com>
-Date: Wed, 9 Oct 2019 10:45:34 +0530
-Subject: [PATCH 4/8] powerpc/fadump: add support to preserve crash data on
- FADUMP disabled kernel
-
-Add a new kernel config option, CONFIG_PRESERVE_FA_DUMP that ensures
-that crash data, from previously crash'ed kernel, is preserved. This
-helps in cases where FADump is not enabled but the subsequent memory
-preserving kernel boot is likely to process this crash data. One
-typical usecase for this config option is petitboot kernel.
-
-As OPAL allows registering address with it in the first kernel and
-retrieving it after MPIPL, use it to store the top of boot memory.
-A kernel that intends to preserve crash data retrieves it and avoids
-using memory beyond this address.
-
-Move arch_reserved_kernel_pages() function as it is needed for both
-FA_DUMP and PRESERVE_FA_DUMP configurations.
-
-This is the backport of upstream commit bec53196adf4 ("powerpc/fadump:
-add support to preserve crash data on FADUMP disabled kernel").
-
-Also, OPAL FADump metadata definition from upstream commit 742a265accd3
-("powerpc/fadump: register kernel metadata address with opal") is
-backported here for completeness.
-
-Signed-off-by: Hari Bathini <hbathini@linux.ibm.com>
-Signed-off-by: Joel Stanley <joel@jms.id.au>
----
- arch/powerpc/Kconfig | 9 +++
- arch/powerpc/include/asm/fadump.h | 17 ++++-
- arch/powerpc/kernel/Makefile | 4 +-
- arch/powerpc/kernel/fadump.c | 123 ++++++++++++++++++++++++++++--
- arch/powerpc/kernel/prom.c | 4 +-
- 5 files changed, 146 insertions(+), 11 deletions(-)
-
-diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
-index d8dcd8820369..a286c203e732 100644
---- a/arch/powerpc/Kconfig
-+++ b/arch/powerpc/Kconfig
-@@ -579,6 +579,15 @@ config FA_DUMP
-
- If unsure, say "N"
-
-+config PRESERVE_FA_DUMP
-+ bool "Preserve Firmware-assisted dump"
-+ depends on PPC64 && PPC_POWERNV && !FA_DUMP
-+ help
-+ On a kernel with FA_DUMP disabled, this option helps to preserve
-+ crash data from a previously crash'ed kernel. Useful when the next
-+ memory preserving kernel boot would process this crash data.
-+ Petitboot kernel is the typical usecase for this option.
-+
- config IRQ_ALL_CPUS
- bool "Distribute interrupts on all CPUs by default"
- depends on SMP
-diff --git a/arch/powerpc/include/asm/fadump.h b/arch/powerpc/include/asm/fadump.h
-index 17d9b6acaf63..0401a6ffde0c 100644
---- a/arch/powerpc/include/asm/fadump.h
-+++ b/arch/powerpc/include/asm/fadump.h
-@@ -193,9 +193,6 @@ struct fad_crash_memory_ranges {
- };
-
- extern int is_fadump_memory_area(u64 addr, ulong size);
--extern int early_init_dt_scan_fw_dump(unsigned long node,
-- const char *uname, int depth, void *data);
--extern int fadump_reserve_mem(void);
- extern int setup_fadump(void);
- extern int is_fadump_active(void);
- extern int should_fadump_crash(void);
-@@ -208,4 +205,18 @@ static inline int should_fadump_crash(void) { return 0; }
- static inline void crash_fadump(struct pt_regs *regs, const char *str) { }
- static inline void fadump_cleanup(void) { }
- #endif
-+
-+#ifdef CONFIG_PRESERVE_FA_DUMP
-+/* Firmware-assisted dump configuration details. */
-+struct fw_dump {
-+ u64 boot_mem_top;
-+ u64 dump_active;
-+};
-+#endif
-+
-+#if defined(CONFIG_FA_DUMP) || defined(CONFIG_PRESERVE_FA_DUMP)
-+extern int early_init_dt_scan_fw_dump(unsigned long node, const char *uname,
-+ int depth, void *data);
-+extern int fadump_reserve_mem(void);
-+#endif
- #endif
-diff --git a/arch/powerpc/kernel/Makefile b/arch/powerpc/kernel/Makefile
-index 56dfa7a2a6f2..ce70e7776cfd 100644
---- a/arch/powerpc/kernel/Makefile
-+++ b/arch/powerpc/kernel/Makefile
-@@ -78,7 +78,9 @@ obj-$(CONFIG_EEH) += eeh.o eeh_pe.o eeh_dev.o eeh_cache.o \
- eeh_driver.o eeh_event.o eeh_sysfs.o
- obj-$(CONFIG_GENERIC_TBSYNC) += smp-tbsync.o
- obj-$(CONFIG_CRASH_DUMP) += crash_dump.o
--obj-$(CONFIG_FA_DUMP) += fadump.o
-+ifneq ($(CONFIG_FA_DUMP)$(CONFIG_PRESERVE_FA_DUMP),)
-+obj-y += fadump.o
-+endif
- ifdef CONFIG_PPC32
- obj-$(CONFIG_E500) += idle_e500.o
- endif
-diff --git a/arch/powerpc/kernel/fadump.c b/arch/powerpc/kernel/fadump.c
-index 4dacce3fac72..1202dadf1d58 100644
---- a/arch/powerpc/kernel/fadump.c
-+++ b/arch/powerpc/kernel/fadump.c
-@@ -24,11 +24,13 @@
- #include <linux/slab.h>
- #include <linux/cma.h>
- #include <linux/hugetlb.h>
-+#include <linux/libfdt.h>
-
- #include <asm/debugfs.h>
- #include <asm/page.h>
- #include <asm/prom.h>
- #include <asm/rtas.h>
-+#include <asm/opal.h>
- #include <asm/fadump.h>
- #include <asm/setup.h>
-
-@@ -36,6 +38,7 @@ static struct fw_dump fw_dump;
-
- static void __init fadump_reserve_crash_area(u64 base);
-
-+#ifndef CONFIG_PRESERVE_FA_DUMP
- static struct fadump_mem_struct fdm;
- static const struct fadump_mem_struct *fdm_active;
- #ifdef CONFIG_CMA
-@@ -542,11 +545,6 @@ int __init fadump_reserve_mem(void)
- return 1;
- }
-
--unsigned long __init arch_reserved_kernel_pages(void)
--{
-- return memblock_reserved_size() / PAGE_SIZE;
--}
--
- /* Look for fadump= cmdline option. */
- static int __init early_fadump_param(char *p)
- {
-@@ -1684,6 +1682,116 @@ int __init setup_fadump(void)
- return 1;
- }
- subsys_initcall(setup_fadump);
-+#else /* !CONFIG_PRESERVE_FA_DUMP */
-+
-+/* Maximum number of memory regions kernel supports */
-+#define OPAL_FADUMP_MAX_MEM_REGS 128
-+
-+/*
-+ * OPAL FADump kernel metadata
-+ *
-+ * The address of this structure will be registered with f/w for retrieving
-+ * and processing during crash dump.
-+ */
-+struct opal_fadump_mem_struct {
-+ u8 version;
-+ u8 reserved[3];
-+ u16 region_cnt; /* number of regions */
-+ u16 registered_regions; /* Regions registered for MPIPL */
-+ u64 fadumphdr_addr;
-+ struct opal_mpipl_region rgn[OPAL_FADUMP_MAX_MEM_REGS];
-+} __packed;
-+
-+
-+/*
-+ * When dump is active but PRESERVE_FA_DUMP is enabled on the kernel,
-+ * ensure crash data is preserved in hope that the subsequent memory
-+ * preserving kernel boot is going to process this crash data.
-+ */
-+void __init opal_fadump_dt_scan(struct fw_dump *fadump_conf, u64 node)
-+{
-+ const struct opal_fadump_mem_struct *opal_fdm_active;
-+ const __be32 *prop;
-+ unsigned long dn;
-+ u64 addr = 0;
-+ s64 ret;
-+
-+ dn = of_get_flat_dt_subnode_by_name(node, "dump");
-+ if (dn == -FDT_ERR_NOTFOUND)
-+ return;
-+
-+ /*
-+ * Check if dump has been initiated on last reboot.
-+ */
-+ prop = of_get_flat_dt_prop(dn, "mpipl-boot", NULL);
-+ if (!prop)
-+ return;
-+
-+ ret = opal_mpipl_query_tag(OPAL_MPIPL_TAG_KERNEL, &addr);
-+ if ((ret != OPAL_SUCCESS) || !addr) {
-+ pr_debug("Could not get Kernel metadata (%lld)\n", ret);
-+ return;
-+ }
-+
-+ /*
-+ * Preserve memory only if kernel memory regions are registered
-+ * with f/w for MPIPL.
-+ */
-+ addr = be64_to_cpu(addr);
-+ pr_debug("Kernel metadata addr: %llx\n", addr);
-+ opal_fdm_active = (void *)addr;
-+ if (opal_fdm_active->registered_regions == 0)
-+ return;
-+
-+ ret = opal_mpipl_query_tag(OPAL_MPIPL_TAG_BOOT_MEM, &addr);
-+ if ((ret != OPAL_SUCCESS) || !addr) {
-+ pr_err("Failed to get boot memory tag (%lld)\n", ret);
-+ return;
-+ }
-+
-+ /*
-+ * Memory below this address can be used for booting a
-+ * capture kernel or petitboot kernel. Preserve everything
-+ * above this address for processing crashdump.
-+ */
-+ fadump_conf->boot_mem_top = be64_to_cpu(addr);
-+ pr_debug("Preserve everything above %llx\n", fadump_conf->boot_mem_top);
-+
-+ pr_info("Firmware-assisted dump is active.\n");
-+ fadump_conf->dump_active = 1;
-+}
-+
-+/* Scan the Firmware Assisted dump configuration details. */
-+int __init early_init_dt_scan_fw_dump(unsigned long node, const char *uname,
-+ int depth, void *data)
-+{
-+ if ((depth != 1) || (strcmp(uname, "ibm,opal") != 0))
-+ return 0;
-+
-+ opal_fadump_dt_scan(&fw_dump, node);
-+ return 1;
-+}
-+
-+/*
-+ * When dump is active but PRESERVE_FA_DUMP is enabled on the kernel,
-+ * preserve crash data. The subsequent memory preserving kernel boot
-+ * is likely to process this crash data.
-+ */
-+int __init fadump_reserve_mem(void)
-+{
-+ if (fw_dump.dump_active) {
-+ /*
-+ * If last boot has crashed then reserve all the memory
-+ * above boot memory to preserve crash data.
-+ */
-+ pr_info("Preserving crash data for processing in next boot.\n");
-+ fadump_reserve_crash_area(fw_dump.boot_mem_top);
-+ } else
-+ pr_debug("FADump-aware kernel..\n");
-+
-+ return 1;
-+}
-+#endif /* CONFIG_PRESERVE_FA_DUMP */
-
- /* Preserve everything above the base address */
- static void __init fadump_reserve_crash_area(u64 base)
-@@ -1708,3 +1816,8 @@ static void __init fadump_reserve_crash_area(u64 base)
- memblock_reserve(mstart, msize);
- }
- }
-+
-+unsigned long __init arch_reserved_kernel_pages(void)
-+{
-+ return memblock_reserved_size() / PAGE_SIZE;
-+}
-diff --git a/arch/powerpc/kernel/prom.c b/arch/powerpc/kernel/prom.c
-index 7159e791a70d..9c3861bda216 100644
---- a/arch/powerpc/kernel/prom.c
-+++ b/arch/powerpc/kernel/prom.c
-@@ -704,7 +704,7 @@ void __init early_init_devtree(void *params)
- of_scan_flat_dt(early_init_dt_scan_opal, NULL);
- #endif
-
--#ifdef CONFIG_FA_DUMP
-+#if defined(CONFIG_FA_DUMP) || defined(CONFIG_PRESERVE_FA_DUMP)
- /* scan tree to see if dump is active during last boot */
- of_scan_flat_dt(early_init_dt_scan_fw_dump, NULL);
- #endif
-@@ -731,7 +731,7 @@ void __init early_init_devtree(void *params)
- if (PHYSICAL_START > MEMORY_START)
- memblock_reserve(MEMORY_START, 0x8000);
- reserve_kdump_trampoline();
--#ifdef CONFIG_FA_DUMP
-+#if defined(CONFIG_FA_DUMP) || defined(CONFIG_PRESERVE_FA_DUMP)
- /*
- * If we fail to reserve memory for firmware-assisted dump then
- * fallback to kexec based kdump.
diff --git a/openpower/linux/0006-scsi-lpfc-Fix-oops-when-fewer-hdwqs-than-cpus.patch b/openpower/linux/0006-scsi-lpfc-Fix-oops-when-fewer-hdwqs-than-cpus.patch
deleted file mode 100644
index 9238a0a..0000000
--- a/openpower/linux/0006-scsi-lpfc-Fix-oops-when-fewer-hdwqs-than-cpus.patch
+++ /dev/null
@@ -1,239 +0,0 @@
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: James Smart <jsmart2021@gmail.com>
-Date: Wed, 14 Aug 2019 16:56:43 -0700
-Subject: [PATCH 6/8] scsi: lpfc: Fix oops when fewer hdwqs than cpus
-
-When tearing down the adapter for a reset, online/offline, or driver
-unload, the queue free routine would hit a GPF oops. This only occurs on
-conditions where the number of hardware queues created is fewer than the
-number of cpus in the system. In this condition cpus share a hardware
-queue. And of course, it's the 2nd cpu that shares a hardware that
-attempted to free it a second time and hit the oops.
-
-Fix by reworking the cpu to hardware queue mapping such that:
-Assignment of hardware queues to cpus occur in two passes:
-first pass: is first time assignment of a hardware queue to a cpu.
- This will set the LPFC_CPU_FIRST_IRQ flag for the cpu.
-second pass: for cpus that did not get a hardware queue they will
- be assigned one from a primary cpu (one set in first pass).
-
-Deletion of hardware queues is driven by cpu itteration, and queues
-will only be deleted if the LPFC_CPU_FIRST_IRQ flag is set.
-
-Also contains a few small cleanup fixes and a little better logging.
-
-Signed-off-by: Dick Kennedy <dick.kennedy@broadcom.com>
-Signed-off-by: James Smart <jsmart2021@gmail.com>
-Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
-(cherry picked from commit 3ad348d94452d6ab3aa0316105fb9f34f8ed3140)
-Signed-off-by: Joel Stanley <joel@jms.id.au>
----
- drivers/scsi/lpfc/lpfc_init.c | 144 +++++++++++++++++++++-------------
- 1 file changed, 89 insertions(+), 55 deletions(-)
-
-diff --git a/drivers/scsi/lpfc/lpfc_init.c b/drivers/scsi/lpfc/lpfc_init.c
-index 1ac98becb5ba..a5b515fdda2e 100644
---- a/drivers/scsi/lpfc/lpfc_init.c
-+++ b/drivers/scsi/lpfc/lpfc_init.c
-@@ -8864,7 +8864,7 @@ lpfc_sli4_queue_create(struct lpfc_hba *phba)
- }
- qdesc->qe_valid = 1;
- qdesc->hdwq = cpup->hdwq;
-- qdesc->chann = cpu; /* First CPU this EQ is affinitised to */
-+ qdesc->chann = cpu; /* First CPU this EQ is affinitized to */
- qdesc->last_cpu = qdesc->chann;
-
- /* Save the allocated EQ in the Hardware Queue */
-@@ -10711,7 +10711,7 @@ lpfc_find_hyper(struct lpfc_hba *phba, int cpu,
- static void
- lpfc_cpu_affinity_check(struct lpfc_hba *phba, int vectors)
- {
-- int i, cpu, idx, new_cpu, start_cpu, first_cpu;
-+ int i, cpu, idx, next_idx, new_cpu, start_cpu, first_cpu;
- int max_phys_id, min_phys_id;
- int max_core_id, min_core_id;
- struct lpfc_vector_map_info *cpup;
-@@ -10753,8 +10753,8 @@ lpfc_cpu_affinity_check(struct lpfc_hba *phba, int vectors)
- #endif
-
- lpfc_printf_log(phba, KERN_INFO, LOG_INIT,
-- "3328 CPU physid %d coreid %d\n",
-- cpup->phys_id, cpup->core_id);
-+ "3328 CPU %d physid %d coreid %d flag x%x\n",
-+ cpu, cpup->phys_id, cpup->core_id, cpup->flag);
-
- if (cpup->phys_id > max_phys_id)
- max_phys_id = cpup->phys_id;
-@@ -10812,17 +10812,17 @@ lpfc_cpu_affinity_check(struct lpfc_hba *phba, int vectors)
- cpup->eq = idx;
- cpup->irq = pci_irq_vector(phba->pcidev, idx);
-
-- lpfc_printf_log(phba, KERN_INFO, LOG_INIT,
-- "3336 Set Affinity: CPU %d "
-- "irq %d eq %d\n",
-- cpu, cpup->irq, cpup->eq);
--
- /* If this is the first CPU thats assigned to this
- * vector, set LPFC_CPU_FIRST_IRQ.
- */
- if (!i)
- cpup->flag |= LPFC_CPU_FIRST_IRQ;
- i++;
-+
-+ lpfc_printf_log(phba, KERN_INFO, LOG_INIT,
-+ "3336 Set Affinity: CPU %d "
-+ "irq %d eq %d flag x%x\n",
-+ cpu, cpup->irq, cpup->eq, cpup->flag);
- }
- }
-
-@@ -10936,69 +10936,103 @@ lpfc_cpu_affinity_check(struct lpfc_hba *phba, int vectors)
- }
- }
-
-+ /* Assign hdwq indices that are unique across all cpus in the map
-+ * that are also FIRST_CPUs.
-+ */
-+ idx = 0;
-+ for_each_present_cpu(cpu) {
-+ cpup = &phba->sli4_hba.cpu_map[cpu];
-+
-+ /* Only FIRST IRQs get a hdwq index assignment. */
-+ if (!(cpup->flag & LPFC_CPU_FIRST_IRQ))
-+ continue;
-+
-+ /* 1 to 1, the first LPFC_CPU_FIRST_IRQ cpus to a unique hdwq */
-+ cpup->hdwq = idx;
-+ idx++;
-+ lpfc_printf_log(phba, KERN_ERR, LOG_INIT,
-+ "3333 Set Affinity: CPU %d (phys %d core %d): "
-+ "hdwq %d eq %d irq %d flg x%x\n",
-+ cpu, cpup->phys_id, cpup->core_id,
-+ cpup->hdwq, cpup->eq, cpup->irq, cpup->flag);
-+ }
- /* Finally we need to associate a hdwq with each cpu_map entry
- * This will be 1 to 1 - hdwq to cpu, unless there are less
- * hardware queues then CPUs. For that case we will just round-robin
- * the available hardware queues as they get assigned to CPUs.
-+ * The next_idx is the idx from the FIRST_CPU loop above to account
-+ * for irq_chann < hdwq. The idx is used for round-robin assignments
-+ * and needs to start at 0.
- */
-- idx = 0;
-+ next_idx = idx;
- start_cpu = 0;
-+ idx = 0;
- for_each_present_cpu(cpu) {
- cpup = &phba->sli4_hba.cpu_map[cpu];
-- if (idx >= phba->cfg_hdw_queue) {
-- /* We need to reuse a Hardware Queue for another CPU,
-- * so be smart about it and pick one that has its
-- * IRQ/EQ mapped to the same phys_id (CPU package).
-- * and core_id.
-- */
-- new_cpu = start_cpu;
-- for (i = 0; i < phba->sli4_hba.num_present_cpu; i++) {
-- new_cpup = &phba->sli4_hba.cpu_map[new_cpu];
-- if ((new_cpup->hdwq != LPFC_VECTOR_MAP_EMPTY) &&
-- (new_cpup->phys_id == cpup->phys_id) &&
-- (new_cpup->core_id == cpup->core_id))
-- goto found_hdwq;
-- new_cpu = cpumask_next(
-- new_cpu, cpu_present_mask);
-- if (new_cpu == nr_cpumask_bits)
-- new_cpu = first_cpu;
-- }
-
-- /* If we can't match both phys_id and core_id,
-- * settle for just a phys_id match.
-- */
-- new_cpu = start_cpu;
-- for (i = 0; i < phba->sli4_hba.num_present_cpu; i++) {
-- new_cpup = &phba->sli4_hba.cpu_map[new_cpu];
-- if ((new_cpup->hdwq != LPFC_VECTOR_MAP_EMPTY) &&
-- (new_cpup->phys_id == cpup->phys_id))
-- goto found_hdwq;
-- new_cpu = cpumask_next(
-- new_cpu, cpu_present_mask);
-- if (new_cpu == nr_cpumask_bits)
-- new_cpu = first_cpu;
-+ /* FIRST cpus are already mapped. */
-+ if (cpup->flag & LPFC_CPU_FIRST_IRQ)
-+ continue;
-+
-+ /* If the cfg_irq_chann < cfg_hdw_queue, set the hdwq
-+ * of the unassigned cpus to the next idx so that all
-+ * hdw queues are fully utilized.
-+ */
-+ if (next_idx < phba->cfg_hdw_queue) {
-+ cpup->hdwq = next_idx;
-+ next_idx++;
-+ continue;
-+ }
-+
-+ /* Not a First CPU and all hdw_queues are used. Reuse a
-+ * Hardware Queue for another CPU, so be smart about it
-+ * and pick one that has its IRQ/EQ mapped to the same phys_id
-+ * (CPU package) and core_id.
-+ */
-+ new_cpu = start_cpu;
-+ for (i = 0; i < phba->sli4_hba.num_present_cpu; i++) {
-+ new_cpup = &phba->sli4_hba.cpu_map[new_cpu];
-+ if (new_cpup->hdwq != LPFC_VECTOR_MAP_EMPTY &&
-+ new_cpup->phys_id == cpup->phys_id &&
-+ new_cpup->core_id == cpup->core_id) {
-+ goto found_hdwq;
- }
-+ new_cpu = cpumask_next(new_cpu, cpu_present_mask);
-+ if (new_cpu == nr_cpumask_bits)
-+ new_cpu = first_cpu;
-+ }
-
-- /* Otherwise just round robin on cfg_hdw_queue */
-- cpup->hdwq = idx % phba->cfg_hdw_queue;
-- goto logit;
--found_hdwq:
-- /* We found an available entry, copy the IRQ info */
-- start_cpu = cpumask_next(new_cpu, cpu_present_mask);
-- if (start_cpu == nr_cpumask_bits)
-- start_cpu = first_cpu;
-- cpup->hdwq = new_cpup->hdwq;
-- } else {
-- /* 1 to 1, CPU to hdwq */
-- cpup->hdwq = idx;
-+ /* If we can't match both phys_id and core_id,
-+ * settle for just a phys_id match.
-+ */
-+ new_cpu = start_cpu;
-+ for (i = 0; i < phba->sli4_hba.num_present_cpu; i++) {
-+ new_cpup = &phba->sli4_hba.cpu_map[new_cpu];
-+ if (new_cpup->hdwq != LPFC_VECTOR_MAP_EMPTY &&
-+ new_cpup->phys_id == cpup->phys_id)
-+ goto found_hdwq;
-+
-+ new_cpu = cpumask_next(new_cpu, cpu_present_mask);
-+ if (new_cpu == nr_cpumask_bits)
-+ new_cpu = first_cpu;
- }
--logit:
-+
-+ /* Otherwise just round robin on cfg_hdw_queue */
-+ cpup->hdwq = idx % phba->cfg_hdw_queue;
-+ idx++;
-+ goto logit;
-+ found_hdwq:
-+ /* We found an available entry, copy the IRQ info */
-+ start_cpu = cpumask_next(new_cpu, cpu_present_mask);
-+ if (start_cpu == nr_cpumask_bits)
-+ start_cpu = first_cpu;
-+ cpup->hdwq = new_cpup->hdwq;
-+ logit:
- lpfc_printf_log(phba, KERN_ERR, LOG_INIT,
- "3335 Set Affinity: CPU %d (phys %d core %d): "
- "hdwq %d eq %d irq %d flg x%x\n",
- cpu, cpup->phys_id, cpup->core_id,
- cpup->hdwq, cpup->eq, cpup->irq, cpup->flag);
-- idx++;
- }
-
- /* The cpu_map array will be used later during initialization
diff --git a/openpower/linux/0007-scsi-lpfc-Limit-xri-count-for-kdump-environment.patch b/openpower/linux/0007-scsi-lpfc-Limit-xri-count-for-kdump-environment.patch
deleted file mode 100644
index 71ae797..0000000
--- a/openpower/linux/0007-scsi-lpfc-Limit-xri-count-for-kdump-environment.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: James Smart <jsmart2021@gmail.com>
-Date: Wed, 14 Aug 2019 16:56:31 -0700
-Subject: [PATCH 7/8] scsi: lpfc: Limit xri count for kdump environment
-
-scsi-mq operation inherently performs pre-allocation of resources for
-blk-mq request queues. Even though the kdump environment reduces the
-configuration to a single CPU, thus 1 hardware queue, which helps
-significantly, the resources are still rather large due to the per request
-allocations. blk-mq pre-allocations can be over 4KB per request. With
-adapter can_queue values in the 4k or 8k range, this can easily be 32MBs
-before any other driver memory is factored in. Driver SGL DMA buffer
-allocation can be up to 8KB per request as well adding an additional
-64MB. Totals are well over 100MB for a single shost. Given kdump memory
-auto-sizing utilities don't accommodate this amount of memory well, it's
-very possible for kdump to fail due to lack of memory.
-
-Fix by having the driver recognize that it is booting within a kdump
-context and reduce the number of requests it will support to a more
-reasonable value.
-
-Signed-off-by: Dick Kennedy <dick.kennedy@broadcom.com>
-Signed-off-by: James Smart <jsmart2021@gmail.com>
-Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
-(cherry picked from commit 31f06d2e73726160645f8d9976a0b3f42e136da7)
-Signed-off-by: Joel Stanley <joel@jms.id.au>
----
- drivers/scsi/lpfc/lpfc_init.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/drivers/scsi/lpfc/lpfc_init.c b/drivers/scsi/lpfc/lpfc_init.c
-index a5b515fdda2e..7edbba7debc2 100644
---- a/drivers/scsi/lpfc/lpfc_init.c
-+++ b/drivers/scsi/lpfc/lpfc_init.c
-@@ -39,6 +39,7 @@
- #include <linux/msi.h>
- #include <linux/irq.h>
- #include <linux/bitops.h>
-+#include <linux/crash_dump.h>
-
- #include <scsi/scsi.h>
- #include <scsi/scsi_device.h>
-@@ -8309,6 +8310,10 @@ lpfc_sli4_read_config(struct lpfc_hba *phba)
- bf_get(lpfc_mbx_rd_conf_extnts_inuse, rd_config);
- phba->sli4_hba.max_cfg_param.max_xri =
- bf_get(lpfc_mbx_rd_conf_xri_count, rd_config);
-+ /* Reduce resource usage in kdump environment */
-+ if (is_kdump_kernel() &&
-+ phba->sli4_hba.max_cfg_param.max_xri > 512)
-+ phba->sli4_hba.max_cfg_param.max_xri = 512;
- phba->sli4_hba.max_cfg_param.xri_base =
- bf_get(lpfc_mbx_rd_conf_xri_base, rd_config);
- phba->sli4_hba.max_cfg_param.max_vpi =
diff --git a/openpower/package/hcode/Config.in b/openpower/package/hcode/Config.in
index 2e15d99..434bc99 100644
--- a/openpower/package/hcode/Config.in
+++ b/openpower/package/hcode/Config.in
@@ -31,7 +31,7 @@
config BR2_HCODE_VERSION
string
- default "hw121219a.opmst" if BR2_HCODE_LATEST_VERSION
+ default "hw021320a.opmst" if BR2_HCODE_LATEST_VERSION
default BR2_HCODE_CUSTOM_VERSION_VALUE \
if BR2_HCODE_CUSTOM_VERSION
diff --git a/openpower/package/hostboot-binaries/Config.in b/openpower/package/hostboot-binaries/Config.in
index 861dc3e..2866153 100644
--- a/openpower/package/hostboot-binaries/Config.in
+++ b/openpower/package/hostboot-binaries/Config.in
@@ -24,7 +24,7 @@
config BR2_HOSTBOOT_BINARIES_VERSION
string
- default "hw080119a.940" if BR2_HOSTBOOT_BINARIES_LATEST_VERSION
+ default "hw013120a.opmst" if BR2_HOSTBOOT_BINARIES_LATEST_VERSION
default BR2_HOSTBOOT_BINARIES_CUSTOM_VERSION_VALUE \
if BR2_HOSTBOOT_BINARIES_CUSTOM_VERSION
diff --git a/openpower/package/hostboot/Config.in b/openpower/package/hostboot/Config.in
index 902d415..3ec891c 100644
--- a/openpower/package/hostboot/Config.in
+++ b/openpower/package/hostboot/Config.in
@@ -25,7 +25,7 @@
config BR2_HOSTBOOT_VERSION
string
- default "70ef787002a78ebbe6430a5f3355d42a8b1790b9" if BR2_HOSTBOOT_LATEST_VERSION
+ default "46174931e05562140af4ef53b5074420cf142332" if BR2_HOSTBOOT_LATEST_VERSION
default BR2_HOSTBOOT_CUSTOM_VERSION_VALUE \
if BR2_HOSTBOOT_CUSTOM_VERSION
diff --git a/openpower/package/ima-catalog/ima-catalog.mk b/openpower/package/ima-catalog/ima-catalog.mk
index 19d2d6e..f357960 100644
--- a/openpower/package/ima-catalog/ima-catalog.mk
+++ b/openpower/package/ima-catalog/ima-catalog.mk
@@ -3,7 +3,7 @@
# ima-catalog.mk
#
################################################################################
-IMA_CATALOG_VERSION ?= 3d30c7aca6c8ef066f92384271827ad5b66392bf
+IMA_CATALOG_VERSION ?= 89e00ee3ef424b5ff49f4d89d609004ae863bf26
IMA_CATALOG_SITE ?= $(call github,open-power,ima-catalog,$(IMA_CATALOG_VERSION))
IMA_CATALOG_LICENSE = Apache-2.0
IMA_CATALOG_DEPENDENCIES = host-dtc host-xz
diff --git a/openpower/package/libflash/libflash.mk b/openpower/package/libflash/libflash.mk
index c1fe08f..723c90b 100644
--- a/openpower/package/libflash/libflash.mk
+++ b/openpower/package/libflash/libflash.mk
@@ -4,16 +4,18 @@
#
################################################################################
+LIBFLASH_VERSION = $(call qstrip,$(BR2_SKIBOOT_VERSION))
+
ifeq ($(BR2_SKIBOOT_CUSTOM_GIT),y)
LIBFLASH_SITE = $(call qstrip,$(BR2_SKIBOOT_CUSTOM_REPO_URL))
LIBFLASH_SITE_METHOD = git
else
-LIBFLASH_VERSION = $(call qstrip,$(BR2_SKIBOOT_VERSION))
LIBFLASH_SITE = $(call github,open-power,skiboot,$(LIBFLASH_VERSION))
endif
LIBFLASH_INSTALL_STAGING = YES
LIBFLASH_INSTALL_TARGET = YES
+LIBFLASH_DEPENDENCIES += skiboot
LIBFLASH_LICENSE_FILES = LICENCE
diff --git a/openpower/package/ocmb-explorer-fw/Config.in b/openpower/package/ocmb-explorer-fw/Config.in
index 0acf63b..f84251f 100644
--- a/openpower/package/ocmb-explorer-fw/Config.in
+++ b/openpower/package/ocmb-explorer-fw/Config.in
@@ -24,7 +24,7 @@
config BR2_OCMB_EXPLORER_FW_VERSION
string
- default "v2.0" if BR2_OCMB_EXPLORER_FW_LATEST_VERSION
+ default "v3.0" if BR2_OCMB_EXPLORER_FW_LATEST_VERSION
default BR2_OCMB_EXPLORER_FW_CUSTOM_VERSION_VALUE \
if BR2_OCMB_EXPLORER_FW_CUSTOM_VERSION
diff --git a/openpower/package/openpower-pnor-util/openpower-pnor-util.mk b/openpower/package/openpower-pnor-util/openpower-pnor-util.mk
index 4681962..1bfa73f 100644
--- a/openpower/package/openpower-pnor-util/openpower-pnor-util.mk
+++ b/openpower/package/openpower-pnor-util/openpower-pnor-util.mk
@@ -4,7 +4,7 @@
#
################################################################################
-HOST_OPENPOWER_PNOR_UTIL_VERSION ?= d23b5b74cfadea0618e5984e8d3565d2696d26b8
+HOST_OPENPOWER_PNOR_UTIL_VERSION ?= 647d6134d448178e6b32892322596a5cc3d78b2d
HOST_OPENPOWER_PNOR_UTIL_SITE ?= $(call github,openbmc,openpower-pnor-code-mgmt,$(HOST_OPENPOWER_PNOR_UTIL_VERSION))
HOST_OPENPOWER_PNOR_UTIL_DEPENDENCIES = host-squashfs host-libflash
diff --git a/openpower/package/openpower-pnor/openpower-pnor.mk b/openpower/package/openpower-pnor/openpower-pnor.mk
index c4f02b2..29d3f01 100644
--- a/openpower/package/openpower-pnor/openpower-pnor.mk
+++ b/openpower/package/openpower-pnor/openpower-pnor.mk
@@ -4,7 +4,7 @@
#
################################################################################
-OPENPOWER_PNOR_VERSION ?= 7674cbe461c6ed6d324644b88954fce1946a70d7
+OPENPOWER_PNOR_VERSION ?= 6fb8d914134d544a8466c739370947e32d5a4469
OPENPOWER_PNOR_SITE ?= $(call github,open-power,pnor,$(OPENPOWER_PNOR_VERSION))
OPENPOWER_PNOR_LICENSE = Apache-2.0
@@ -174,10 +174,10 @@
# If this is a VPNOR system, run the generate-tar command and
# create a tarball
if [ "$(BR2_BUILD_PNOR_SQUASHFS)" == "y" ]; then \
- PATH=$(HOST_DIR)/usr/bin:$(PATH) $(HOST_DIR)/usr/bin/generate-tar -i squashfs -f $(STAGING_DIR)/pnor/$(BR2_OPENPOWER_PNOR_FILENAME).squashfs.tar $(STAGING_DIR)/pnor/$(BR2_OPENPOWER_PNOR_FILENAME) -s; \
+ PATH=$(HOST_DIR)/usr/bin:$(PATH) $(HOST_DIR)/usr/bin/generate-tar -i squashfs -m $(BR2_OPENPOWER_CONFIG_NAME) -f $(STAGING_DIR)/pnor/$(BR2_OPENPOWER_PNOR_FILENAME).squashfs.tar $(STAGING_DIR)/pnor/$(BR2_OPENPOWER_PNOR_FILENAME) -s; \
$(INSTALL) $(STAGING_DIR)/pnor/$(BR2_OPENPOWER_PNOR_FILENAME).squashfs.tar $(BINARIES_DIR); \
else \
- PATH=$(HOST_DIR)/usr/bin:$(PATH) $(HOST_DIR)/usr/bin/generate-tar -i static -f $(STAGING_DIR)/pnor/$(BR2_OPENPOWER_PNOR_FILENAME).static.tar.gz $(STAGING_DIR)/pnor/$(BR2_OPENPOWER_PNOR_FILENAME) -s; \
+ PATH=$(HOST_DIR)/usr/bin:$(PATH) $(HOST_DIR)/usr/bin/generate-tar -i static -m $(BR2_OPENPOWER_CONFIG_NAME) -f $(STAGING_DIR)/pnor/$(BR2_OPENPOWER_PNOR_FILENAME).static.tar.gz $(STAGING_DIR)/pnor/$(BR2_OPENPOWER_PNOR_FILENAME) -s; \
$(INSTALL) $(STAGING_DIR)/pnor/$(BR2_OPENPOWER_PNOR_FILENAME).static.tar.gz $(BINARIES_DIR); \
fi
diff --git a/openpower/package/petitboot/petitboot.hash b/openpower/package/petitboot/petitboot.hash
index 610c3de..015e87b 100644
--- a/openpower/package/petitboot/petitboot.hash
+++ b/openpower/package/petitboot/petitboot.hash
@@ -1 +1 @@
-sha256 b680747297e17ea1e730d5eacfe09f53f9b1e02d89dfea2fd5766c4b07415cdb petitboot-v1.11.tar.gz
+sha256 121cab15b1eaaccbe9e054ee1af79d379dc4576379c2c09eb69ccad3ffd7bc5d petitboot-v1.12.tar.gz
diff --git a/openpower/package/petitboot/petitboot.mk b/openpower/package/petitboot/petitboot.mk
index e001517..d4e95a8 100644
--- a/openpower/package/petitboot/petitboot.mk
+++ b/openpower/package/petitboot/petitboot.mk
@@ -4,7 +4,7 @@
#
################################################################################
-PETITBOOT_VERSION = v1.11
+PETITBOOT_VERSION = v1.12
PETITBOOT_SOURCE = petitboot-$(PETITBOOT_VERSION).tar.gz
PETITBOOT_SITE ?= https://github.com/open-power/petitboot/releases/download/$(PETITBOOT_VERSION)
PETITBOOT_DEPENDENCIES = ncurses udev host-bison host-flex lvm2
diff --git a/openpower/package/sbe/Config.in b/openpower/package/sbe/Config.in
index 4f3facb..fe2bc97 100644
--- a/openpower/package/sbe/Config.in
+++ b/openpower/package/sbe/Config.in
@@ -26,7 +26,7 @@
config BR2_SBE_VERSION
string
- default "230eeb0ee6f7283b1b961f1ff9534027df118ce6" if BR2_SBE_LATEST_VERSION
+ default "512f92467c65876005f92ebe1d3f2abe078db265" if BR2_SBE_LATEST_VERSION
default BR2_SBE_CUSTOM_VERSION_VALUE \
if BR2_SBE_CUSTOM_VERSION
diff --git a/openpower/package/skiboot/Config.in b/openpower/package/skiboot/Config.in
index 4ee5c35..93d3a43 100644
--- a/openpower/package/skiboot/Config.in
+++ b/openpower/package/skiboot/Config.in
@@ -31,7 +31,7 @@
config BR2_SKIBOOT_VERSION
string
- default "v6.5-145-g80fd2e96" if BR2_SKIBOOT_LATEST_VERSION
+ default "v6.5-219-g53944d45" if BR2_SKIBOOT_LATEST_VERSION
default BR2_SKIBOOT_CUSTOM_VERSION_VALUE \
if BR2_SKIBOOT_CUSTOM_VERSION