aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/sfc/efx.h
diff options
context:
space:
mode:
authorSteve Hodgson <shodgson@solarflare.com>2009-01-29 12:50:51 -0500
committerDavid S. Miller <davem@davemloft.net>2009-01-30 17:06:30 -0500
commit4b988280be13a1b4c17f51cc66948aef467e7601 (patch)
treeb8a0bd4e96520461caeaeeea2f91aa64d6c32bdd /drivers/net/sfc/efx.h
parent0cc128387969753ae037401eb49e4bbb474186ea (diff)
sfc: Reinitialise the PHY completely in case of a PHY or NIC reset
In particular, set pause advertising bits properly. A PHY reset is not necessary to recover from the register self-test, so use a "invisible" reset there instead. Signed-off-by: Ben Hutchings <bhutchings@solarflare.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/sfc/efx.h')
-rw-r--r--drivers/net/sfc/efx.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/net/sfc/efx.h b/drivers/net/sfc/efx.h
index 0dd7a532c78a..ac201587a163 100644
--- a/drivers/net/sfc/efx.h
+++ b/drivers/net/sfc/efx.h
@@ -40,9 +40,10 @@ extern void efx_reconfigure_port(struct efx_nic *efx);
40extern void __efx_reconfigure_port(struct efx_nic *efx); 40extern void __efx_reconfigure_port(struct efx_nic *efx);
41 41
42/* Reset handling */ 42/* Reset handling */
43extern void efx_reset_down(struct efx_nic *efx, struct ethtool_cmd *ecmd); 43extern void efx_reset_down(struct efx_nic *efx, enum reset_type method,
44extern int efx_reset_up(struct efx_nic *efx, struct ethtool_cmd *ecmd, 44 struct ethtool_cmd *ecmd);
45 bool ok); 45extern int efx_reset_up(struct efx_nic *efx, enum reset_type method,
46 struct ethtool_cmd *ecmd, bool ok);
46 47
47/* Global */ 48/* Global */
48extern void efx_schedule_reset(struct efx_nic *efx, enum reset_type type); 49extern void efx_schedule_reset(struct efx_nic *efx, enum reset_type type);