diff options
author | Ben Hutchings <bhutchings@solarflare.com> | 2012-09-19 00:56:18 +0100 |
---|---|---|
committer | Ben Hutchings <bhutchings@solarflare.com> | 2013-08-21 20:20:38 +0100 |
commit | df2cd8af097850bb3440817fdb6b08922ff4b327 (patch) | |
tree | e9778f51808f1ad6ef3795ae470068c4e95c6cf4 /drivers/net/ethernet/sfc/net_driver.h | |
parent | f2b0befd1dd2f0b08feff8e66741d56b239af7b8 (diff) |
sfc: Add support for MCDI v2
MCDI v2 adds a second header dword with wider command and length
fields. It also defines extra error codes.
Change the fallback error number for unknown MCDI error codes from EIO
to EPROTO. EIO is treated as indicating the MCDI transport has failed
and we need to reset the function, which is rather drastic.
v2 error codes and lengths don't fit into completion events, so for a
v2-capable transport, always read the response header rather then
using the event fields.
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Diffstat (limited to 'drivers/net/ethernet/sfc/net_driver.h')
-rw-r--r-- | drivers/net/ethernet/sfc/net_driver.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/ethernet/sfc/net_driver.h b/drivers/net/ethernet/sfc/net_driver.h index 7283cc1a90fe..e1deec4da397 100644 --- a/drivers/net/ethernet/sfc/net_driver.h +++ b/drivers/net/ethernet/sfc/net_driver.h @@ -1029,6 +1029,7 @@ static inline unsigned int efx_port_num(struct efx_nic *efx) * @timer_period_max: Maximum period of interrupt timer (in ticks) * @offload_features: net_device feature flags for protocol offload * features implemented in hardware + * @mcdi_max_ver: Maximum MCDI version supported */ struct efx_nic_type { int (*probe)(struct efx_nic *efx); @@ -1105,6 +1106,7 @@ struct efx_nic_type { unsigned int phys_addr_channels; unsigned int timer_period_max; netdev_features_t offload_features; + int mcdi_max_ver; }; /************************************************************************** |