diff options
Diffstat (limited to 'drivers/net/benet/be_main.c')
-rw-r--r-- | drivers/net/benet/be_main.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/drivers/net/benet/be_main.c b/drivers/net/benet/be_main.c index 058d7f95f5ae..aa065c71ddd8 100644 --- a/drivers/net/benet/be_main.c +++ b/drivers/net/benet/be_main.c | |||
@@ -2319,6 +2319,7 @@ static int be_ctrl_init(struct be_adapter *adapter) | |||
2319 | spin_lock_init(&adapter->mcc_lock); | 2319 | spin_lock_init(&adapter->mcc_lock); |
2320 | spin_lock_init(&adapter->mcc_cq_lock); | 2320 | spin_lock_init(&adapter->mcc_cq_lock); |
2321 | 2321 | ||
2322 | init_completion(&adapter->flash_compl); | ||
2322 | pci_save_state(adapter->pdev); | 2323 | pci_save_state(adapter->pdev); |
2323 | return 0; | 2324 | return 0; |
2324 | 2325 | ||
@@ -2487,10 +2488,6 @@ static int __devinit be_probe(struct pci_dev *pdev, | |||
2487 | status = be_cmd_POST(adapter); | 2488 | status = be_cmd_POST(adapter); |
2488 | if (status) | 2489 | if (status) |
2489 | goto ctrl_clean; | 2490 | goto ctrl_clean; |
2490 | |||
2491 | status = be_cmd_reset_function(adapter); | ||
2492 | if (status) | ||
2493 | goto ctrl_clean; | ||
2494 | } | 2491 | } |
2495 | 2492 | ||
2496 | /* tell fw we're ready to fire cmds */ | 2493 | /* tell fw we're ready to fire cmds */ |
@@ -2498,6 +2495,12 @@ static int __devinit be_probe(struct pci_dev *pdev, | |||
2498 | if (status) | 2495 | if (status) |
2499 | goto ctrl_clean; | 2496 | goto ctrl_clean; |
2500 | 2497 | ||
2498 | if (be_physfn(adapter)) { | ||
2499 | status = be_cmd_reset_function(adapter); | ||
2500 | if (status) | ||
2501 | goto ctrl_clean; | ||
2502 | } | ||
2503 | |||
2501 | status = be_stats_init(adapter); | 2504 | status = be_stats_init(adapter); |
2502 | if (status) | 2505 | if (status) |
2503 | goto ctrl_clean; | 2506 | goto ctrl_clean; |