diff options
Diffstat (limited to 'drivers/net/netxen/netxen_nic_main.c')
-rw-r--r-- | drivers/net/netxen/netxen_nic_main.c | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/drivers/net/netxen/netxen_nic_main.c b/drivers/net/netxen/netxen_nic_main.c index 6cae26a5bd67..24279e6e55f5 100644 --- a/drivers/net/netxen/netxen_nic_main.c +++ b/drivers/net/netxen/netxen_nic_main.c | |||
@@ -340,7 +340,7 @@ netxen_check_hw_init(struct netxen_adapter *adapter, int first_boot) | |||
340 | if (!(first_boot & 0x4)) { | 340 | if (!(first_boot & 0x4)) { |
341 | first_boot |= 0x4; | 341 | first_boot |= 0x4; |
342 | NXWR32(adapter, NETXEN_PCIE_REG(0x4), first_boot); | 342 | NXWR32(adapter, NETXEN_PCIE_REG(0x4), first_boot); |
343 | first_boot = NXRD32(adapter, NETXEN_PCIE_REG(0x4)); | 343 | NXRD32(adapter, NETXEN_PCIE_REG(0x4)); |
344 | } | 344 | } |
345 | 345 | ||
346 | /* This is the first boot after power up */ | 346 | /* This is the first boot after power up */ |
@@ -1898,12 +1898,8 @@ static void netxen_nic_handle_phy_intr(struct netxen_adapter *adapter) | |||
1898 | linkup = (val == XG_LINK_UP_P3); | 1898 | linkup = (val == XG_LINK_UP_P3); |
1899 | } else { | 1899 | } else { |
1900 | val = NXRD32(adapter, CRB_XG_STATE); | 1900 | val = NXRD32(adapter, CRB_XG_STATE); |
1901 | if (adapter->ahw.port_type == NETXEN_NIC_GBE) | 1901 | val = (val >> port*8) & 0xff; |
1902 | linkup = (val >> port) & 1; | 1902 | linkup = (val == XG_LINK_UP); |
1903 | else { | ||
1904 | val = (val >> port*8) & 0xff; | ||
1905 | linkup = (val == XG_LINK_UP); | ||
1906 | } | ||
1907 | } | 1903 | } |
1908 | 1904 | ||
1909 | netxen_advert_link_change(adapter, linkup); | 1905 | netxen_advert_link_change(adapter, linkup); |
@@ -1945,7 +1941,7 @@ static void netxen_tx_timeout_task(struct work_struct *work) | |||
1945 | netif_wake_queue(adapter->netdev); | 1941 | netif_wake_queue(adapter->netdev); |
1946 | 1942 | ||
1947 | clear_bit(__NX_RESETTING, &adapter->state); | 1943 | clear_bit(__NX_RESETTING, &adapter->state); |
1948 | 1944 | return; | |
1949 | } else { | 1945 | } else { |
1950 | clear_bit(__NX_RESETTING, &adapter->state); | 1946 | clear_bit(__NX_RESETTING, &adapter->state); |
1951 | if (!netxen_nic_reset_context(adapter)) { | 1947 | if (!netxen_nic_reset_context(adapter)) { |
@@ -2244,7 +2240,9 @@ netxen_detach_work(struct work_struct *work) | |||
2244 | 2240 | ||
2245 | netxen_nic_down(adapter, netdev); | 2241 | netxen_nic_down(adapter, netdev); |
2246 | 2242 | ||
2243 | rtnl_lock(); | ||
2247 | netxen_nic_detach(adapter); | 2244 | netxen_nic_detach(adapter); |
2245 | rtnl_unlock(); | ||
2248 | 2246 | ||
2249 | status = NXRD32(adapter, NETXEN_PEG_HALT_STATUS1); | 2247 | status = NXRD32(adapter, NETXEN_PEG_HALT_STATUS1); |
2250 | 2248 | ||