amd8111e: use pdev->pm_cap instead of pci_find_capability(.., PCI_CAP_ID_PM)
authorYijing Wang <wangyijing@huawei.com>
Tue, 18 Jun 2013 08:06:37 +0000 (16:06 +0800)
committerDavid S. Miller <davem@davemloft.net>
Thu, 20 Jun 2013 05:22:56 +0000 (22:22 -0700)
Pci core has been saved pm cap register offset by pdev->pm_cap in pci_pm_init()
in init path. So we can use pdev->pm_cap instead of using
pci_find_capability(pdev, PCI_CAP_ID_PM) for better performance and simplified code.

Signed-off-by: Yijing Wang <wangyijing@huawei.com>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Patrick McHardy <kaber@trash.net>
Cc: Bill Pemberton <wfp5p@virginia.edu>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: netdev@vger.kernel.org (open list:NETWORKING DRIVERS)
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/amd/amd8111e.c

index bc71aec..1b1429d 100644 (file)
@@ -1813,7 +1813,7 @@ static const struct net_device_ops amd8111e_netdev_ops = {
 static int amd8111e_probe_one(struct pci_dev *pdev,
                                  const struct pci_device_id *ent)
 {
-       int err,i,pm_cap;
+       int err, i;
        unsigned long reg_addr,reg_len;
        struct amd8111e_priv* lp;
        struct net_device* dev;
@@ -1842,7 +1842,7 @@ static int amd8111e_probe_one(struct pci_dev *pdev,
        pci_set_master(pdev);
 
        /* Find power-management capability. */
-       if((pm_cap = pci_find_capability(pdev, PCI_CAP_ID_PM))==0){
+       if (!pdev->pm_cap) {
                printk(KERN_ERR "amd8111e: No Power Management capability, "
                       "exiting.\n");
                err = -ENODEV;
@@ -1875,7 +1875,7 @@ static int amd8111e_probe_one(struct pci_dev *pdev,
        lp = netdev_priv(dev);
        lp->pci_dev = pdev;
        lp->amd8111e_net_dev = dev;
-       lp->pm_cap = pm_cap;
+       lp->pm_cap = pdev->pm_cap;
 
        spin_lock_init(&lp->lock);