]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
The Windows driver .inf disables ASPM on all cciss devices. Do the same.
authorMatthew Garrett <mjg@redhat.com>
Fri, 11 Nov 2011 21:05:54 +0000 (22:05 +0100)
committerJoe Jin <joe.jin@oracle.com>
Tue, 15 May 2012 07:51:02 +0000 (15:51 +0800)
Signed-off-by: Matthew Garrett <mjg@redhat.com>
Cc: iss_storagedev@hp.com
Acked-by: Mike Miller <mike.miller@hp.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
(cherry picked from commit 193733585692301f38d489b8ad8724c2f88349c0)

Signed-off-by: Joe Jin <joe.jin@oracle.com>
drivers/block/cciss.c

index dfbe10b61f4cf3f6fa80b8251be8cb3777e0356b..87b9daaa1ec9326c8a2d81845ef330aaac9b65ef 100644 (file)
@@ -24,6 +24,7 @@
 #include <linux/interrupt.h>
 #include <linux/types.h>
 #include <linux/pci.h>
+#include <linux/pci-aspm.h>
 #include <linux/kernel.h>
 #include <linux/slab.h>
 #include <linux/delay.h>
@@ -4365,6 +4366,10 @@ static int __devinit cciss_pci_init(ctlr_info_t *h)
                dev_warn(&h->pdev->dev, "controller appears to be disabled\n");
                return -ENODEV;
        }
+
+       pci_disable_link_state(h->pdev, PCIE_LINK_STATE_L0S |
+                               PCIE_LINK_STATE_L1 | PCIE_LINK_STATE_CLKPM);
+
        err = pci_enable_device(h->pdev);
        if (err) {
                dev_warn(&h->pdev->dev, "Unable to Enable PCI device\n");