Commit 8b007de1 authored by Ron Mercer's avatar Ron Mercer Committed by David S. Miller

qlge: Fix carrier on condition.

We were turning on the carrier without verifying the link was up.
This adds link up to the link initialize check before turning carrier
on.
Signed-off-by: default avatarRon Mercer <ron.mercer@qlogic.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent a5f59dc9
...@@ -3343,7 +3343,11 @@ static int ql_adapter_up(struct ql_adapter *qdev) ...@@ -3343,7 +3343,11 @@ static int ql_adapter_up(struct ql_adapter *qdev)
} }
set_bit(QL_ADAPTER_UP, &qdev->flags); set_bit(QL_ADAPTER_UP, &qdev->flags);
ql_alloc_rx_buffers(qdev); ql_alloc_rx_buffers(qdev);
if ((ql_read32(qdev, STS) & qdev->port_init)) /* If the port is initialized and the
* link is up the turn on the carrier.
*/
if ((ql_read32(qdev, STS) & qdev->port_init) &&
(ql_read32(qdev, STS) & qdev->port_link_up))
netif_carrier_on(qdev->ndev); netif_carrier_on(qdev->ndev);
ql_enable_interrupts(qdev); ql_enable_interrupts(qdev);
ql_enable_all_completion_interrupts(qdev); ql_enable_all_completion_interrupts(qdev);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment