diff --git a/openpower/configs/barreleye_defconfig b/openpower/configs/barreleye_defconfig
index d0236a2..4ddeb75 100644
--- a/openpower/configs/barreleye_defconfig
+++ b/openpower/configs/barreleye_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="4.15.14"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.16.1"
 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 2157dba..bb8d52b 100644
--- a/openpower/configs/firenze_defconfig
+++ b/openpower/configs/firenze_defconfig
@@ -13,7 +13,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="4.15.14"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.16.1"
 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 73a55b6..8137e83 100644
--- a/openpower/configs/firestone_defconfig
+++ b/openpower/configs/firestone_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="4.15.14"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.16.1"
 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 846218f..ccb5a4a 100644
--- a/openpower/configs/garrison_defconfig
+++ b/openpower/configs/garrison_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="4.15.14"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.16.1"
 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 d51ef42..20e84c4 100644
--- a/openpower/configs/habanero_defconfig
+++ b/openpower/configs/habanero_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="4.15.14"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.16.1"
 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_p9_defconfig b/openpower/configs/linux/skiroot_p9_defconfig
index 1c12e98..6124137 100644
--- a/openpower/configs/linux/skiroot_p9_defconfig
+++ b/openpower/configs/linux/skiroot_p9_defconfig
@@ -53,6 +53,7 @@
 CONFIG_CMDLINE_BOOL=y
 CONFIG_CMDLINE="console=tty0 console=hvc0 ipr.fast_reboot=1"
 # CONFIG_SECCOMP is not set
+# CONFIG_PPC_MEM_KEYS is not set
 CONFIG_NET=y
 CONFIG_PACKET=y
 CONFIG_UNIX=y
@@ -79,6 +80,7 @@
 CONFIG_NVME_MULTIPATH=y
 CONFIG_EEPROM_AT24=y
 # CONFIG_CXL is not set
+# CONFIG_OCXL is not set
 CONFIG_BLK_DEV_SD=m
 CONFIG_BLK_DEV_SR=m
 CONFIG_BLK_DEV_SR_VENDOR=y
@@ -126,7 +128,9 @@
 CONFIG_ACENIC_OMIT_TIGON_I=y
 CONFIG_TIGON3=y
 CONFIG_BNX2X=m
+# CONFIG_CAVIUM_PTP is not set
 CONFIG_CHELSIO_T1=y
+# CONFIG_NET_VENDOR_CORTINA is not set
 CONFIG_BE2NET=m
 CONFIG_S2IO=m
 # CONFIG_NET_VENDOR_HUAWEI is not set
@@ -140,11 +144,11 @@
 CONFIG_MLX5_CORE=m
 CONFIG_MLX5_CORE_EN=y
 # CONFIG_MLX5_MPFS is not set
-# CONFIG_MLX5_ESWITCH is not set
 CONFIG_MYRI10GE=m
 CONFIG_QLGE=m
 CONFIG_NETXEN_NIC=m
 CONFIG_SFC=m
+# CONFIG_NET_VENDOR_SOCIONEXT is not set
 # CONFIG_USB_NET_DRIVERS is not set
 # CONFIG_WLAN is not set
 CONFIG_INPUT_EVDEV=y
@@ -226,6 +230,7 @@
 CONFIG_WQ_WATCHDOG=y
 CONFIG_SCHEDSTATS=y
 # CONFIG_FTRACE is not set
+# CONFIG_RUNTIME_TESTING_MENU is not set
 CONFIG_XMON=y
 CONFIG_XMON_DEFAULT=y
 CONFIG_SECURITY=y
diff --git a/openpower/configs/openpower_mambo_defconfig b/openpower/configs/openpower_mambo_defconfig
index 0724d3c..3f89280 100644
--- a/openpower/configs/openpower_mambo_defconfig
+++ b/openpower/configs/openpower_mambo_defconfig
@@ -11,7 +11,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="4.15.14"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.16.1"
 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/openpower_p9_mambo_defconfig b/openpower/configs/openpower_p9_mambo_defconfig
index cfdff54..5de9b9a 100644
--- a/openpower/configs/openpower_p9_mambo_defconfig
+++ b/openpower/configs/openpower_p9_mambo_defconfig
@@ -11,7 +11,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="4.15.14"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.16.1"
 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 1b10e48..b98b88a 100644
--- a/openpower/configs/p9dsu_defconfig
+++ b/openpower/configs/p9dsu_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="4.15.14"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.16.1"
 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_p9_defconfig"
diff --git a/openpower/configs/palmetto_defconfig b/openpower/configs/palmetto_defconfig
index 85efe1a..e03ce42 100644
--- a/openpower/configs/palmetto_defconfig
+++ b/openpower/configs/palmetto_defconfig
@@ -13,7 +13,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="4.15.14"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.16.1"
 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 d9258e5..4c3706e 100644
--- a/openpower/configs/pseries_defconfig
+++ b/openpower/configs/pseries_defconfig
@@ -13,7 +13,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="4.15.14"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.16.1"
 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 5f78349..e5f9bb5 100644
--- a/openpower/configs/romulus_defconfig
+++ b/openpower/configs/romulus_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="4.15.14"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.16.1"
 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_p9_defconfig"
diff --git a/openpower/configs/vesnin_defconfig b/openpower/configs/vesnin_defconfig
index cb7350e..6b45190 100644
--- a/openpower/configs/vesnin_defconfig
+++ b/openpower/configs/vesnin_defconfig
@@ -13,7 +13,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="4.15.14"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.16.1"
 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 eb85dc9..ed8c006 100644
--- a/openpower/configs/witherspoon_defconfig
+++ b/openpower/configs/witherspoon_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="4.15.14"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.16.1"
 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_p9_defconfig"
diff --git a/openpower/configs/zaius_defconfig b/openpower/configs/zaius_defconfig
index d855e82..3ba8049 100644
--- a/openpower/configs/zaius_defconfig
+++ b/openpower/configs/zaius_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="4.15.14"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.16.1"
 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_p9_defconfig"
diff --git a/openpower/configs/zz_defconfig b/openpower/configs/zz_defconfig
index 1ccb704..b35ce4c 100644
--- a/openpower/configs/zz_defconfig
+++ b/openpower/configs/zz_defconfig
@@ -13,7 +13,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="4.15.14"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.16.1"
 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_p9_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 3675f53..55c0f56 100644
--- a/openpower/linux/0001-xhci-Reset-controller-on-xhci-shutdown.patch
+++ b/openpower/linux/0001-xhci-Reset-controller-on-xhci-shutdown.patch
@@ -14,10 +14,10 @@
  1 file changed, 1 insertion(+)
 
 diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
-index a7c99e121cc6..f953c94b2c5e 100644
+index 5d37700ae4b0..27848c3226a4 100644
 --- a/drivers/usb/host/xhci.c
 +++ b/drivers/usb/host/xhci.c
-@@ -722,6 +722,7 @@ static void xhci_shutdown(struct usb_hcd *hcd)
+@@ -717,6 +717,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);
diff --git a/openpower/linux/0003-powerpc-eeh-Fix-race-with-driver-un-bind.patch b/openpower/linux/0002-powerpc-eeh-Fix-race-with-driver-un-bind.patch
similarity index 63%
rename from openpower/linux/0003-powerpc-eeh-Fix-race-with-driver-un-bind.patch
rename to openpower/linux/0002-powerpc-eeh-Fix-race-with-driver-un-bind.patch
index a75e804..14e33fd 100644
--- a/openpower/linux/0003-powerpc-eeh-Fix-race-with-driver-un-bind.patch
+++ b/openpower/linux/0002-powerpc-eeh-Fix-race-with-driver-un-bind.patch
@@ -1,46 +1,45 @@
 From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
 From: Michael Neuling <mikey@neuling.org>
 Date: Mon, 26 Mar 2018 15:17:07 +1100
-Subject: [PATCH 3/4] powerpc/eeh: Fix race with driver un/bind
+Subject: [PATCH 2/4] powerpc/eeh: Fix race with driver un/bind
 
-The current EEH callbacks can race with a driver unbind. This
-can result in a backtraces like this:
+The current EEH callbacks can race with a driver unbind. This can
+result in a backtraces like this:
 
-[    7.573055] EEH: Frozen PHB#0-PE#1fc detected
-[    7.573063] EEH: PE location: S000009, PHB location: N/A
-[    7.573069] CPU: 2 PID: 2312 Comm: kworker/u258:3 Not tainted 4.15.6-openpower1 #2
-[    7.573078] Workqueue: nvme-wq nvme_reset_work [nvme]
-[    7.573080] Call Trace:
-[    7.573088] [c000000ff12a3a30] [c0000000005f5000] dump_stack+0x9c/0xd0
-[    7.573093]  (unreliable)
-[    7.573106] [c000000ff12a3a70] [c00000000002385c] eeh_dev_check_failure+0x420/0x470
-[    7.573111] [c000000ff12a3b10] [c00000000002394c] eeh_check_failure+0xa0/0xa4
-[    7.573115] [c000000ff12a3b50] [c0080000088c2ff0] nvme_reset_work+0x138/0x1414 [nvme]
-[    7.573122] [c000000ff12a3cb0] [c000000000089c78] process_one_work+0x1ec/0x328
-[    7.573132] [c000000ff12a3d40] [c00000000008a3b4] worker_thread+0x2e4/0x3a8
-[    7.573140] [c000000ff12a3dc0] [c00000000008fed0] kthread+0x14c/0x154
-[    7.573150] [c000000ff12a3e30] [c00000000000b594] ret_from_kernel_thread+0x5c/0xc8
-[    7.573183] nvme nvme1: Removing after probe failure status: -19
-<snip>
-cpu 0x23: Vector: 300 (Data Access) at [c000000ff50f3800]
-    pc: c0080000089a0eb0: nvme_error_detected+0x4c/0x90 [nvme]
-    lr: c000000000026564: eeh_report_error+0xe0/0x110
-    sp: c000000ff50f3a80
-   msr: 9000000000009033
-   dar: 400
- dsisr: 40000000
-  current = 0xc000000ff507c000
-  paca    = 0xc00000000fdc9d80   softe: 0        irq_happened: 0x01
-    pid   = 782, comm = eehd
-Linux version 4.15.6-openpower1 (smc@smc-desktop) (gcc version 6.4.0 (Buildroot 2017.11.2-00008-g4b6188e)) #2 SM                                             P Tue Feb 27 12:33:27 PST 2018
-enter ? for help
-[c000000ff50f3af0] c000000000026564 eeh_report_error+0xe0/0x110
-[c000000ff50f3b30] c000000000025520 eeh_pe_dev_traverse+0xc0/0xdc
-[c000000ff50f3bc0] c000000000026bd0 eeh_handle_normal_event+0x184/0x4c4
-[c000000ff50f3c70] c000000000026ff4 eeh_handle_event+0x30/0x288
-[c000000ff50f3d10] c00000000002758c eeh_event_handler+0x124/0x170
-[c000000ff50f3dc0] c00000000008fed0 kthread+0x14c/0x154
-[c000000ff50f3e30] c00000000000b594 ret_from_kernel_thread+0x5c/0xc8
+  EEH: Frozen PHB#0-PE#1fc detected
+  EEH: PE location: S000009, PHB location: N/A
+  CPU: 2 PID: 2312 Comm: kworker/u258:3 Not tainted 4.15.6-openpower1 #2
+  Workqueue: nvme-wq nvme_reset_work [nvme]
+  Call Trace:
+    dump_stack+0x9c/0xd0 (unreliable)
+    eeh_dev_check_failure+0x420/0x470
+    eeh_check_failure+0xa0/0xa4
+    nvme_reset_work+0x138/0x1414 [nvme]
+    process_one_work+0x1ec/0x328
+    worker_thread+0x2e4/0x3a8
+    kthread+0x14c/0x154
+    ret_from_kernel_thread+0x5c/0xc8
+  nvme nvme1: Removing after probe failure status: -19
+  <snip>
+  cpu 0x23: Vector: 300 (Data Access) at [c000000ff50f3800]
+      pc: c0080000089a0eb0: nvme_error_detected+0x4c/0x90 [nvme]
+      lr: c000000000026564: eeh_report_error+0xe0/0x110
+      sp: c000000ff50f3a80
+     msr: 9000000000009033
+     dar: 400
+   dsisr: 40000000
+    current = 0xc000000ff507c000
+    paca    = 0xc00000000fdc9d80   softe: 0        irq_happened: 0x01
+      pid   = 782, comm = eehd
+  Linux version 4.15.6-openpower1 (smc@smc-desktop) (gcc version 6.4.0 (Buildroot 2017.11.2-00008-g4b6188e)) #2 SM                                             P Tue Feb 27 12:33:27 PST 2018
+  enter ? for help
+    eeh_report_error+0xe0/0x110
+    eeh_pe_dev_traverse+0xc0/0xdc
+    eeh_handle_normal_event+0x184/0x4c4
+    eeh_handle_event+0x30/0x288
+    eeh_event_handler+0x124/0x170
+    kthread+0x14c/0x154
+    ret_from_kernel_thread+0x5c/0xc8
 
 The first part is an EEH (on boot), the second half is the resulting
 crash. nvme probe starts the nvme_reset_work() worker thread. This
@@ -63,16 +62,19 @@
 in 2005 (in 77bd7415610) but it's not clear if a lock was needed back
 then.
 
+Fixes: 77bd74156101 ("[PATCH] powerpc: PCI Error Recovery: PPC64 core recovery routines")
+Cc: stable@vger.kernel.org # v2.6.16+
 Signed-off-by: Michael Neuling <mikey@neuling.org>
 Reviewed-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
-[joel: backport to 4.15]
+Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
+(cherry picked from commit f0295e047fcf52ccb42561fb7de6942f5201b676)
 Signed-off-by: Joel Stanley <joel@jms.id.au>
 ---
- arch/powerpc/kernel/eeh_driver.c | 62 ++++++++++++++++++++++++----------------
- 1 file changed, 38 insertions(+), 24 deletions(-)
+ arch/powerpc/kernel/eeh_driver.c | 68 ++++++++++++++++++++------------
+ 1 file changed, 42 insertions(+), 26 deletions(-)
 
 diff --git a/arch/powerpc/kernel/eeh_driver.c b/arch/powerpc/kernel/eeh_driver.c
-index 4f71e4c9beb7..169531150e13 100644
+index 0c0b66fc5bfb..295ba833846e 100644
 --- a/arch/powerpc/kernel/eeh_driver.c
 +++ b/arch/powerpc/kernel/eeh_driver.c
 @@ -207,18 +207,18 @@ static void *eeh_report_error(void *data, void *userdata)
@@ -99,18 +101,21 @@
  
  	rc = driver->err_handler->error_detected(dev, pci_channel_io_frozen);
  
-@@ -227,7 +227,10 @@ static void *eeh_report_error(void *data, void *userdata)
+@@ -227,8 +227,12 @@ static void *eeh_report_error(void *data, void *userdata)
  	if (*res == PCI_ERS_RESULT_NONE) *res = rc;
  
  	edev->in_error = true;
+-	eeh_pcid_put(dev);
+ 	pci_uevent_ers(dev, PCI_ERS_RESULT_NONE);
++
 +out:
- 	eeh_pcid_put(dev);
++	eeh_pcid_put(dev);
 +out_no_dev:
 +	device_unlock(&dev->dev);
  	return NULL;
  }
  
-@@ -250,15 +253,14 @@ static void *eeh_report_mmio_enabled(void *data, void *userdata)
+@@ -251,15 +255,14 @@ static void *eeh_report_mmio_enabled(void *data, void *userdata)
  	if (!dev || eeh_dev_removed(edev) || eeh_pe_passed(edev->pe))
  		return NULL;
  
@@ -130,7 +135,7 @@
  
  	rc = driver->err_handler->mmio_enabled(dev);
  
-@@ -266,7 +268,10 @@ static void *eeh_report_mmio_enabled(void *data, void *userdata)
+@@ -267,7 +270,10 @@ static void *eeh_report_mmio_enabled(void *data, void *userdata)
  	if (rc == PCI_ERS_RESULT_NEED_RESET) *res = rc;
  	if (*res == PCI_ERS_RESULT_NONE) *res = rc;
  
@@ -141,7 +146,7 @@
  	return NULL;
  }
  
-@@ -289,20 +294,20 @@ static void *eeh_report_reset(void *data, void *userdata)
+@@ -290,20 +296,20 @@ static void *eeh_report_reset(void *data, void *userdata)
  
  	if (!dev || eeh_dev_removed(edev) || eeh_pe_passed(edev->pe))
  		return NULL;
@@ -167,7 +172,7 @@
  
  	rc = driver->err_handler->slot_reset(dev);
  	if ((*res == PCI_ERS_RESULT_NONE) ||
-@@ -310,7 +315,10 @@ static void *eeh_report_reset(void *data, void *userdata)
+@@ -311,7 +317,10 @@ static void *eeh_report_reset(void *data, void *userdata)
  	if (*res == PCI_ERS_RESULT_DISCONNECT &&
  	     rc == PCI_ERS_RESULT_NEED_RESET) *res = rc;
  
@@ -178,7 +183,7 @@
  	return NULL;
  }
  
-@@ -361,10 +369,12 @@ static void *eeh_report_resume(void *data, void *userdata)
+@@ -362,10 +371,12 @@ static void *eeh_report_resume(void *data, void *userdata)
  
  	if (!dev || eeh_dev_removed(edev) || eeh_pe_passed(edev->pe))
  		return NULL;
@@ -192,7 +197,7 @@
  
  	was_in_error = edev->in_error;
  	edev->in_error = false;
-@@ -374,13 +384,15 @@ static void *eeh_report_resume(void *data, void *userdata)
+@@ -375,18 +386,20 @@ static void *eeh_report_resume(void *data, void *userdata)
  	    !driver->err_handler->resume ||
  	    (edev->mode & EEH_DEV_NO_HANDLER) || !was_in_error) {
  		edev->mode &= ~EEH_DEV_NO_HANDLER;
@@ -203,14 +208,20 @@
  
  	driver->err_handler->resume(dev);
  
+-	eeh_pcid_put(dev);
+ 	pci_uevent_ers(dev, PCI_ERS_RESULT_RECOVERED);
 +out:
- 	eeh_pcid_put(dev);
++	eeh_pcid_put(dev);
+ #ifdef CONFIG_PCI_IOV
+ 	if (eeh_ops->notify_resume && eeh_dev_to_pdn(edev))
+ 		eeh_ops->notify_resume(eeh_dev_to_pdn(edev));
+ #endif
 +out_no_dev:
 +	device_unlock(&dev->dev);
  	return NULL;
  }
  
-@@ -400,22 +412,24 @@ static void *eeh_report_failure(void *data, void *userdata)
+@@ -406,23 +419,26 @@ static void *eeh_report_failure(void *data, void *userdata)
  
  	if (!dev || eeh_dev_removed(edev) || eeh_pe_passed(edev->pe))
  		return NULL;
@@ -233,9 +244,11 @@
 +		goto out;
  
  	driver->err_handler->error_detected(dev, pci_channel_io_perm_failure);
--
+ 
+-	eeh_pcid_put(dev);
+ 	pci_uevent_ers(dev, PCI_ERS_RESULT_DISCONNECT);
 +out:
- 	eeh_pcid_put(dev);
++	eeh_pcid_put(dev);
 +out_no_dev:
 +	device_unlock(&dev->dev);
  	return NULL;
diff --git a/openpower/linux/0002-tg3-APE-heartbeat-changes.patch b/openpower/linux/0002-tg3-APE-heartbeat-changes.patch
deleted file mode 100644
index d1c333e..0000000
--- a/openpower/linux/0002-tg3-APE-heartbeat-changes.patch
+++ /dev/null
@@ -1,162 +0,0 @@
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Prashant Sreedharan <prashant.sreedharan@broadcom.com>
-Date: Mon, 19 Feb 2018 12:27:04 +0530
-Subject: [PATCH 2/4] tg3: APE heartbeat changes
-
-In ungraceful host shutdown or driver crash case BMC connectivity is
-lost. APE firmware is missing the driver state in this
-case to keep the BMC connectivity alive.
-This patch has below change to address this issue.
-
-Heartbeat mechanism with APE firmware. This heartbeat mechanism
-is needed to notify the APE firmware about driver state.
-
-This patch also has the change in wait time for APE event from
-1ms to 20ms as there can be some delay in getting response.
-
-v2: Drop inline keyword as per David suggestion.
-
-Signed-off-by: Prashant Sreedharan <prashant.sreedharan@broadcom.com>
-Signed-off-by: Satish Baddipadige <satish.baddipadige@broadcom.com>
-Signed-off-by: Siva Reddy Kallam <siva.kallam@broadcom.com>
-Acked-by: Michael Chan <michael.chan@broadcom.com>
-Signed-off-by: David S. Miller <davem@davemloft.net>
-(cherry picked from commit 506b0a395f26e52b3f18827e0de1be051acb77ab)
-Signed-off-by: Joel Stanley <joel@jms.id.au>
----
- drivers/net/ethernet/broadcom/tg3.c | 35 ++++++++++++++++++++++++-----------
- drivers/net/ethernet/broadcom/tg3.h |  5 +++++
- 2 files changed, 29 insertions(+), 11 deletions(-)
-
-diff --git a/drivers/net/ethernet/broadcom/tg3.c b/drivers/net/ethernet/broadcom/tg3.c
-index 8995cfefbfcf..0cbf537c8f6c 100644
---- a/drivers/net/ethernet/broadcom/tg3.c
-+++ b/drivers/net/ethernet/broadcom/tg3.c
-@@ -820,7 +820,7 @@ static int tg3_ape_event_lock(struct tg3 *tp, u32 timeout_us)
- 
- 		tg3_ape_unlock(tp, TG3_APE_LOCK_MEM);
- 
--		udelay(10);
-+		usleep_range(10, 20);
- 		timeout_us -= (timeout_us > 10) ? 10 : timeout_us;
- 	}
- 
-@@ -922,8 +922,8 @@ static int tg3_ape_send_event(struct tg3 *tp, u32 event)
- 	if (!(apedata & APE_FW_STATUS_READY))
- 		return -EAGAIN;
- 
--	/* Wait for up to 1 millisecond for APE to service previous event. */
--	err = tg3_ape_event_lock(tp, 1000);
-+	/* Wait for up to 20 millisecond for APE to service previous event. */
-+	err = tg3_ape_event_lock(tp, 20000);
- 	if (err)
- 		return err;
- 
-@@ -946,6 +946,7 @@ static void tg3_ape_driver_state_change(struct tg3 *tp, int kind)
- 
- 	switch (kind) {
- 	case RESET_KIND_INIT:
-+		tg3_ape_write32(tp, TG3_APE_HOST_HEARTBEAT_COUNT, tp->ape_hb++);
- 		tg3_ape_write32(tp, TG3_APE_HOST_SEG_SIG,
- 				APE_HOST_SEG_SIG_MAGIC);
- 		tg3_ape_write32(tp, TG3_APE_HOST_SEG_LEN,
-@@ -962,13 +963,6 @@ static void tg3_ape_driver_state_change(struct tg3 *tp, int kind)
- 		event = APE_EVENT_STATUS_STATE_START;
- 		break;
- 	case RESET_KIND_SHUTDOWN:
--		/* With the interface we are currently using,
--		 * APE does not track driver state.  Wiping
--		 * out the HOST SEGMENT SIGNATURE forces
--		 * the APE to assume OS absent status.
--		 */
--		tg3_ape_write32(tp, TG3_APE_HOST_SEG_SIG, 0x0);
--
- 		if (device_may_wakeup(&tp->pdev->dev) &&
- 		    tg3_flag(tp, WOL_ENABLE)) {
- 			tg3_ape_write32(tp, TG3_APE_HOST_WOL_SPEED,
-@@ -990,6 +984,18 @@ static void tg3_ape_driver_state_change(struct tg3 *tp, int kind)
- 	tg3_ape_send_event(tp, event);
- }
- 
-+static void tg3_send_ape_heartbeat(struct tg3 *tp,
-+				   unsigned long interval)
-+{
-+	/* Check if hb interval has exceeded */
-+	if (!tg3_flag(tp, ENABLE_APE) ||
-+	    time_before(jiffies, tp->ape_hb_jiffies + interval))
-+		return;
-+
-+	tg3_ape_write32(tp, TG3_APE_HOST_HEARTBEAT_COUNT, tp->ape_hb++);
-+	tp->ape_hb_jiffies = jiffies;
-+}
-+
- static void tg3_disable_ints(struct tg3 *tp)
- {
- 	int i;
-@@ -7262,6 +7268,7 @@ static int tg3_poll_msix(struct napi_struct *napi, int budget)
- 		}
- 	}
- 
-+	tg3_send_ape_heartbeat(tp, TG3_APE_HB_INTERVAL << 1);
- 	return work_done;
- 
- tx_recovery:
-@@ -7344,6 +7351,7 @@ static int tg3_poll(struct napi_struct *napi, int budget)
- 		}
- 	}
- 
-+	tg3_send_ape_heartbeat(tp, TG3_APE_HB_INTERVAL << 1);
- 	return work_done;
- 
- tx_recovery:
-@@ -10732,7 +10740,7 @@ static int tg3_reset_hw(struct tg3 *tp, bool reset_phy)
- 	if (tg3_flag(tp, ENABLE_APE))
- 		/* Write our heartbeat update interval to APE. */
- 		tg3_ape_write32(tp, TG3_APE_HOST_HEARTBEAT_INT_MS,
--				APE_HOST_HEARTBEAT_INT_DISABLE);
-+				APE_HOST_HEARTBEAT_INT_5SEC);
- 
- 	tg3_write_sig_post_reset(tp, RESET_KIND_INIT);
- 
-@@ -11077,6 +11085,9 @@ static void tg3_timer(struct timer_list *t)
- 		tp->asf_counter = tp->asf_multiplier;
- 	}
- 
-+	/* Update the APE heartbeat every 5 seconds.*/
-+	tg3_send_ape_heartbeat(tp, TG3_APE_HB_INTERVAL);
-+
- 	spin_unlock(&tp->lock);
- 
- restart_timer:
-@@ -16636,6 +16647,8 @@ static int tg3_get_invariants(struct tg3 *tp, const struct pci_device_id *ent)
- 				       pci_state_reg);
- 
- 		tg3_ape_lock_init(tp);
-+		tp->ape_hb_interval =
-+			msecs_to_jiffies(APE_HOST_HEARTBEAT_INT_5SEC);
- 	}
- 
- 	/* Set up tp->grc_local_ctrl before calling
-diff --git a/drivers/net/ethernet/broadcom/tg3.h b/drivers/net/ethernet/broadcom/tg3.h
-index 1f0271fa7c74..4b9d2906da90 100644
---- a/drivers/net/ethernet/broadcom/tg3.h
-+++ b/drivers/net/ethernet/broadcom/tg3.h
-@@ -2499,6 +2499,7 @@
- #define TG3_APE_LOCK_PHY3		5
- #define TG3_APE_LOCK_GPIO		7
- 
-+#define TG3_APE_HB_INTERVAL             (tp->ape_hb_interval)
- #define TG3_EEPROM_SB_F1R2_MBA_OFF	0x10
- 
- 
-@@ -3413,6 +3414,10 @@ struct tg3 {
- 	struct device			*hwmon_dev;
- 	bool				link_up;
- 	bool				pcierr_recovery;
-+
-+	u32                             ape_hb;
-+	unsigned long                   ape_hb_interval;
-+	unsigned long                   ape_hb_jiffies;
- };
- 
- /* Accessor macros for chip and asic attributes
diff --git a/openpower/linux/0003-powerpc-mm-radix-Fix-checkstops-caused-by-invalid-tl.patch b/openpower/linux/0003-powerpc-mm-radix-Fix-checkstops-caused-by-invalid-tl.patch
new file mode 100644
index 0000000..8e871e8
--- /dev/null
+++ b/openpower/linux/0003-powerpc-mm-radix-Fix-checkstops-caused-by-invalid-tl.patch
@@ -0,0 +1,71 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Michael Ellerman <mpe@ellerman.id.au>
+Date: Thu, 12 Apr 2018 15:53:52 +1000
+Subject: [PATCH 3/4] powerpc/mm/radix: Fix checkstops caused by invalid tlbiel
+
+In tlbiel_radix_set_isa300() we use the PPC_TLBIEL() macro to
+construct tlbiel instructions. The instruction takes 5 fields, two of
+which are registers, and the others are constants. But because it's
+constructed with inline asm the compiler doesn't know that.
+
+We got the constraint wrong on the 'r' field, using "r" tells the
+compiler to put the value in a register. The value we then get in the
+macro is the *register number*, not the value of the field.
+
+That means when we mask the register number with 0x1 we get 0 or 1
+depending on which register the compiler happens to put the constant
+in, eg:
+
+  li      r10,1
+  tlbiel  r8,r9,2,0,0
+
+  li      r7,1
+  tlbiel  r10,r6,0,0,1
+
+If we're unlucky we might generate an invalid instruction form, for
+example RIC=0, PRS=1 and R=0, tlbiel r8,r7,0,1,0, this has been
+observed to cause machine checks:
+
+  Oops: Machine check, sig: 7 [#1]
+  CPU: 24 PID: 0 Comm: swapper
+  NIP:  00000000000385f4 LR: 000000000100ed00 CTR: 000000000000007f
+  REGS: c00000000110bb40 TRAP: 0200
+  MSR:  9000000000201003 <SF,HV,ME,RI,LE>  CR: 48002222  XER: 20040000
+  CFAR: 00000000000385d0 DAR: 0000000000001c00 DSISR: 00000200 SOFTE: 1
+
+If the machine check happens early in boot while we have MSR_ME=0 it
+will escalate into a checkstop and kill the box entirely.
+
+To fix it we could change the inline asm constraint to "i" which
+tells the compiler the value is a constant. But a better fix is to just
+pass a literal 1 into the macro, which bypasses any problems with inline
+asm constraints.
+
+Fixes: d4748276ae14 ("powerpc/64s: Improve local TLB flush for boot and MCE on POWER9")
+Cc: stable@vger.kernel.org # v4.16+
+Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
+Signed-off-by: Joel Stanley <joel@jms.id.au>
+---
+ arch/powerpc/mm/tlb-radix.c | 5 ++---
+ 1 file changed, 2 insertions(+), 3 deletions(-)
+
+diff --git a/arch/powerpc/mm/tlb-radix.c b/arch/powerpc/mm/tlb-radix.c
+index a07f5372a4bf..9ab051155af3 100644
+--- a/arch/powerpc/mm/tlb-radix.c
++++ b/arch/powerpc/mm/tlb-radix.c
+@@ -33,13 +33,12 @@ static inline void tlbiel_radix_set_isa300(unsigned int set, unsigned int is,
+ {
+ 	unsigned long rb;
+ 	unsigned long rs;
+-	unsigned int r = 1; /* radix format */
+ 
+ 	rb = (set << PPC_BITLSHIFT(51)) | (is << PPC_BITLSHIFT(53));
+ 	rs = ((unsigned long)pid << PPC_BITLSHIFT(31));
+ 
+-	asm volatile(PPC_TLBIEL(%0, %1, %2, %3, %4)
+-		     : : "r"(rb), "r"(rs), "i"(ric), "i"(prs), "r"(r)
++	asm volatile(PPC_TLBIEL(%0, %1, %2, %3, 1)
++		     : : "r"(rb), "r"(rs), "i"(ric), "i"(prs)
+ 		     : "memory");
+ }
+ 
diff --git a/openpower/linux/0004-Release-OpenPower-kernel.patch b/openpower/linux/0004-Release-OpenPower-kernel.patch
index 7184b81..c5bcf72 100644
--- a/openpower/linux/0004-Release-OpenPower-kernel.patch
+++ b/openpower/linux/0004-Release-OpenPower-kernel.patch
@@ -1,6 +1,6 @@
 From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
 From: Joel Stanley <joel@jms.id.au>
-Date: Thu, 29 Mar 2018 17:10:52 +1100
+Date: Mon, 9 Apr 2018 12:03:25 +0930
 Subject: [PATCH 4/4] 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 a5e561900daf..3c8e12e69a5b 100644
+index 1773c718074e..692f4f732128 100644
 --- a/Makefile
 +++ b/Makefile
 @@ -2,7 +2,7 @@
  VERSION = 4
- PATCHLEVEL = 15
- SUBLEVEL = 14
+ PATCHLEVEL = 16
+ SUBLEVEL = 1
 -EXTRAVERSION =
-+EXTRAVERSION = -openpower1
++EXTRAVERSION = -openpower2
  NAME = Fearless Coyote
  
  # *DOCUMENTATION*
