summaryrefslogtreecommitdiffstats
path: root/drivers/net/sfc/efx.h
diff options
context:
space:
mode:
authorSteve Hodgson2009-01-29 18:50:51 +0100
committerDavid S. Miller2009-01-30 23:06:30 +0100
commit4b988280be13a1b4c17f51cc66948aef467e7601 (patch)
treeb8a0bd4e96520461caeaeeea2f91aa64d6c32bdd /drivers/net/sfc/efx.h
parentsfc: Fix post-reset MAC selection (diff)
downloadkernel-qcow2-linux-4b988280be13a1b4c17f51cc66948aef467e7601.tar.gz
kernel-qcow2-linux-4b988280be13a1b4c17f51cc66948aef467e7601.tar.xz
kernel-qcow2-linux-4b988280be13a1b4c17f51cc66948aef467e7601.zip
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);
extern void __efx_reconfigure_port(struct efx_nic *efx);
/* Reset handling */
-extern void efx_reset_down(struct efx_nic *efx, struct ethtool_cmd *ecmd);
-extern int efx_reset_up(struct efx_nic *efx, struct ethtool_cmd *ecmd,
- bool ok);
+extern void efx_reset_down(struct efx_nic *efx, enum reset_type method,
+ struct ethtool_cmd *ecmd);
+extern int efx_reset_up(struct efx_nic *efx, enum reset_type method,
+ struct ethtool_cmd *ecmd, bool ok);
/* Global */
extern void efx_schedule_reset(struct efx_nic *efx, enum reset_type type);