aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/sfc/efx.h
diff options
context:
space:
mode:
authorSteve Hodgson <shodgson@solarflare.com>2009-11-28 00:34:05 -0500
committerDavid S. Miller <davem@davemloft.net>2009-11-29 02:58:50 -0500
commitfdaa9aed21c8c8b529f3c94a5ffa138bf3360b75 (patch)
tree6db7fd76481b3f87f0f4e94e1bd55c0624fba296 /drivers/net/sfc/efx.h
parent5e7565930524410f097f5b04f8aba663089a6ffc (diff)
sfc: Simplify PHY polling
Falcon can generate events for LASI interrupts from the PHY, but in practice we have never implemented this in reference designs. Instead we have polled, inserted the appropriate events, and then handled the events later. This is a waste of time and code. Instead, make PHY poll functions update the link state synchronously and report whether it changed. We can still make use of the LASI registers as a shortcut on the SFT9001. 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.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/sfc/efx.h b/drivers/net/sfc/efx.h
index 01b93f93d316..15edda2a2242 100644
--- a/drivers/net/sfc/efx.h
+++ b/drivers/net/sfc/efx.h
@@ -90,6 +90,7 @@ extern int efx_port_dummy_op_int(struct efx_nic *efx);
90extern void efx_port_dummy_op_void(struct efx_nic *efx); 90extern void efx_port_dummy_op_void(struct efx_nic *efx);
91extern void 91extern void
92efx_port_dummy_op_set_id_led(struct efx_nic *efx, enum efx_led_mode mode); 92efx_port_dummy_op_set_id_led(struct efx_nic *efx, enum efx_led_mode mode);
93extern bool efx_port_dummy_op_poll(struct efx_nic *efx);
93 94
94/* MTD */ 95/* MTD */
95#ifdef CONFIG_SFC_MTD 96#ifdef CONFIG_SFC_MTD
@@ -113,4 +114,6 @@ static inline void efx_schedule_channel(struct efx_channel *channel)
113 napi_schedule(&channel->napi_str); 114 napi_schedule(&channel->napi_str);
114} 115}
115 116
117extern void efx_link_status_changed(struct efx_nic *efx);
118
116#endif /* EFX_EFX_H */ 119#endif /* EFX_EFX_H */