qlge: Clean up link up processing.
authorRon Mercer <ron.mercer@qlogic.com>
Tue, 3 Mar 2009 12:10:32 +0000 (12:10 +0000)
committerDavid S. Miller <davem@davemloft.net>
Wed, 4 Mar 2009 07:50:46 +0000 (23:50 -0800)
Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/qlge/qlge_mpi.c

index 5871bc967d88ed43bf1876dca1378d66fc683953..3b4b494387aa5d997dd489b78b160cd14ab0d24f 100644 (file)
@@ -159,24 +159,23 @@ static int ql_idc_cmplt_aen(struct ql_adapter *qdev)
 
        return status;
 }
+
 static void ql_link_up(struct ql_adapter *qdev, struct mbox_params *mbcp)
 {
+       int status;
        mbcp->out_count = 2;
 
-       if (ql_get_mb_sts(qdev, mbcp))
-               goto exit;
+       status = ql_get_mb_sts(qdev, mbcp);
+       if (status) {
+               QPRINTK(qdev, DRV, ERR,
+                       "%s: Could not get mailbox status.\n", __func__);
+               return;
+       }
 
        qdev->link_status = mbcp->mbox_out[1];
        QPRINTK(qdev, DRV, ERR, "Link Up.\n");
-       QPRINTK(qdev, DRV, INFO, "Link Status = 0x%.08x.\n", mbcp->mbox_out[1]);
-       if (!netif_carrier_ok(qdev->ndev)) {
-               QPRINTK(qdev, LINK, INFO, "Link is Up.\n");
-               netif_carrier_on(qdev->ndev);
-               netif_wake_queue(qdev->ndev);
-       }
-exit:
-       /* Clear the MPI firmware status. */
-       ql_write32(qdev, CSR, CSR_CMD_CLR_R2PCI_INT);
+
+       netif_carrier_on(qdev->ndev);
 }
 
 static void ql_link_down(struct ql_adapter *qdev, struct mbox_params *mbcp)