Release 4.4-openpower2 kernel
- Updated defconfig for 4.4
- Adds EEH PE patch
- Restores xhci driver workarounds for USB bugs
- aacraid driver is now usptream
- Powerpc kexec patches are upstream
Tested on palmetto and habanero systems.
Signed-off-by: Joel Stanley <joel@jms.id.au>
diff --git a/openpower/linux/linux-0003-xhci-do-not-halt-the-secondary-HCD.patch b/openpower/linux/linux-0003-xhci-do-not-halt-the-secondary-HCD.patch
new file mode 100644
index 0000000..3ad6157
--- /dev/null
+++ b/openpower/linux/linux-0003-xhci-do-not-halt-the-secondary-HCD.patch
@@ -0,0 +1,42 @@
+From 82addbe4d27c12454572e1200f962cd5ee25523f Mon Sep 17 00:00:00 2001
+From: Thadeu Lima de Souza Cascardo <cascardo@linux.vnet.ibm.com>
+Date: Mon, 10 Mar 2014 13:02:13 -0300
+Subject: [PATCH 3/5] 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.
+
+Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
+Signed-off-by: Joel Stanley <joel@jms.id.au>
+---
+ drivers/usb/host/xhci.c | 13 ++++++++++++-
+ 1 file changed, 12 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
+index 2cc689a3b549..aa6d1e0b4bea 100644
+--- a/drivers/usb/host/xhci.c
++++ b/drivers/usb/host/xhci.c
+@@ -670,7 +670,18 @@ static void xhci_only_stop_hcd(struct usb_hcd *hcd)
+ struct xhci_hcd *xhci = hcd_to_xhci(hcd);
+
+ spin_lock_irq(&xhci->lock);
+- xhci_halt(xhci);
++ /*
++ * 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.
++ */
++ /*xhci_halt(xhci);*/
++
++ /* 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;
+ spin_unlock_irq(&xhci->lock);
+ }
+
+--
+2.7.0.rc3
+