e100: Use pci_pme_active to clear PME_Status and disable PME#
authorRafael J. Wysocki <rjw@sisk.pl>
Thu, 7 Aug 2008 22:18:04 +0000 (00:18 +0200)
committerJeff Garzik <jgarzik@redhat.com>
Fri, 19 Sep 2008 01:42:50 +0000 (21:42 -0400)
Currently e100 uses pci_enable_wake() to clear pending wake-up events
and disable PME# during intitialization, but that function is not
suitable for this purpose, because it immediately returns error code
if device_may_wakeup() returns false for given device.

Make e100 use pci_pme_active(), which carries out exactly the
required operations, instead.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
drivers/net/e100.c

index 453115acaad231c0efb4b902db371760c5d5bf0c..5cf78d612c4579ed337e2ed726c19121f656aab7 100644 (file)
@@ -2738,9 +2738,7 @@ static int __devinit e100_probe(struct pci_dev *pdev,
                nic->flags |= wol_magic;
 
        /* ack any pending wake events, disable PME */
-       err = pci_enable_wake(pdev, 0, 0);
-       if (err)
-               DPRINTK(PROBE, ERR, "Error clearing wake event\n");
+       pci_pme_active(pdev, false);
 
        strcpy(netdev->name, "eth%d");
        if((err = register_netdev(netdev))) {