be2net: Bug fix in init code in probe
authorSarveshwar Bandi <sarveshwarb@serverengines.com>
Tue, 25 May 2010 01:38:25 +0000 (18:38 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 25 May 2010 01:38:25 +0000 (18:38 -0700)
PCI function reset needs to invoked after fw init ioctl is issued.

Signed-off-by: Sarveshwar Bandi <sarveshwarb@serverengines.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/benet/be_main.c

index 058d7f95f5ae17df77c65c473a9683d4ec2a737a..1c79c2009e40cf35e92167ab84df1bbd1d8ea2c6 100644 (file)
@@ -2487,10 +2487,6 @@ static int __devinit be_probe(struct pci_dev *pdev,
                status = be_cmd_POST(adapter);
                if (status)
                        goto ctrl_clean;
-
-               status = be_cmd_reset_function(adapter);
-               if (status)
-                       goto ctrl_clean;
        }
 
        /* tell fw we're ready to fire cmds */
@@ -2498,6 +2494,12 @@ static int __devinit be_probe(struct pci_dev *pdev,
        if (status)
                goto ctrl_clean;
 
+       if (be_physfn(adapter)) {
+               status = be_cmd_reset_function(adapter);
+               if (status)
+                       goto ctrl_clean;
+       }
+
        status = be_stats_init(adapter);
        if (status)
                goto ctrl_clean;