Release Linux 4.9.2-openpower1

This moves from the 4.4 based kernel series to the newer long term
support kernel, Linux 4.9.

To make the move we regenerate the kernel defconfig for the new kernel.

We still have three out of tree patches. This commit makes the following
changes:

  * Drops 5 of our out of tree patches
  * Two remain for XHCI kexec issues
  * One remains for VGA handover

We also update bnx2x firmware version for newer kernel driver, which
means modify the firmware whitelist.

Signed-off-by: Joel Stanley <joel@jms.id.au>
diff --git a/openpower/linux/0003-xhci-do-not-halt-the-secondary-HCD.patch b/openpower/linux/0003-xhci-do-not-halt-the-secondary-HCD.patch
new file mode 100644
index 0000000..6adfeb9
--- /dev/null
+++ b/openpower/linux/0003-xhci-do-not-halt-the-secondary-HCD.patch
@@ -0,0 +1,56 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Joel Stanley <joel@jms.id.au>
+Date: Tue, 19 Jul 2016 22:43:26 +0930
+Subject: [PATCH 3/4] xhci: do not halt the secondary HCD
+
+We can't halt the secondary HCD, because it's also the primary HCD,
+which will cause problems if we have devices attached to the primary
+HCD, like a keyboard.
+
+Sined-off-by: Joel Stanley <joel@jms.id.au>
+Signed-off-by: Joel Stanley <joel@jms.id.au>
+---
+ drivers/usb/host/xhci.c | 20 +++++++++++++++-----
+ 1 file changed, 15 insertions(+), 5 deletions(-)
+
+diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
+index 1a4ca02729c2..6f80130db955 100644
+--- a/drivers/usb/host/xhci.c
++++ b/drivers/usb/host/xhci.c
+@@ -683,6 +683,21 @@ void xhci_stop(struct usb_hcd *hcd)
+ 
+ 	mutex_lock(&xhci->mutex);
+ 
++	/*
++	 * We can't halt the secondary HCD, because it's also the primary
++	 * HCD, which will cause problems if we have devices attached to the
++	 * primary HCD, like a keyboard.
++	 */
++	if (!usb_hcd_is_primary_hcd(hcd)) {
++		/* The shared_hcd is going to be deallocated shortly (the USB
++		 * core only calls this function when allocation fails in
++		 * usb_add_hcd(), or usb_remove_hcd() is called).  So we need
++		 * to unset xHCI's pointer.  */
++		xhci->shared_hcd = NULL;
++		mutex_unlock(&xhci->mutex);
++		return;
++	}
++
+ 	if (!(xhci->xhc_state & XHCI_STATE_HALTED)) {
+ 		spin_lock_irq(&xhci->lock);
+ 
+@@ -694,11 +709,6 @@ void xhci_stop(struct usb_hcd *hcd)
+ 		spin_unlock_irq(&xhci->lock);
+ 	}
+ 
+-	if (!usb_hcd_is_primary_hcd(hcd)) {
+-		mutex_unlock(&xhci->mutex);
+-		return;
+-	}
+-
+ 	xhci_cleanup_msix(xhci);
+ 
+ 	/* Deleting Compliance Mode Recovery Timer */
+-- 
+2.11.0
+