qlge: Clean up link down processing.
authorRon Mercer <ron.mercer@qlogic.com>
Tue, 3 Mar 2009 12:10:31 +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 ebb7b0c..5871bc9 100644 (file)
@@ -181,23 +181,15 @@ exit:
 
 static void ql_link_down(struct ql_adapter *qdev, struct mbox_params *mbcp)
 {
 
 static void ql_link_down(struct ql_adapter *qdev, struct mbox_params *mbcp)
 {
+       int status;
+
        mbcp->out_count = 3;
 
        mbcp->out_count = 3;
 
-       if (ql_get_mb_sts(qdev, mbcp)) {
-               QPRINTK(qdev, DRV, ERR, "Firmware did not initialize!\n");
-               goto exit;
-       }
+       status = ql_get_mb_sts(qdev, mbcp);
+       if (status)
+               QPRINTK(qdev, DRV, ERR, "Link down AEN broken!\n");
 
 
-       if (netif_carrier_ok(qdev->ndev)) {
-               QPRINTK(qdev, LINK, INFO, "Link is Down.\n");
-               netif_carrier_off(qdev->ndev);
-               netif_stop_queue(qdev->ndev);
-       }
-       QPRINTK(qdev, DRV, ERR, "Link Down.\n");
-       QPRINTK(qdev, DRV, ERR, "Link Status = 0x%.08x.\n", mbcp->mbox_out[1]);
-exit:
-       /* Clear the MPI firmware status. */
-       ql_write32(qdev, CSR, CSR_CMD_CLR_R2PCI_INT);
+       netif_carrier_off(qdev->ndev);
 }
 
 static int ql_sfp_in(struct ql_adapter *qdev, struct mbox_params *mbcp)
 }
 
 static int ql_sfp_in(struct ql_adapter *qdev, struct mbox_params *mbcp)