sfc: Add support for SFC9000 family (2)
This integrates support for the SFC9000 family of 10G Ethernet controllers and LAN-on-motherboard chips, starting with the SFL9021 'Siena' and SFC9020 'Bethpage'. Credit for this code is largely due to my colleagues at Solarflare: Guido Barzini Steve Hodgson Kieran Mansley Matthew Slattery Neil Turton Signed-off-by: Ben Hutchings <bhutchings@solarflare.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
afd4aea03f
commit
8880f4ec21
@ -706,6 +706,7 @@ union efx_multicast_hash {
|
||||
* @phy_op: PHY interface
|
||||
* @phy_data: PHY private data (including PHY-specific stats)
|
||||
* @mdio: PHY MDIO interface
|
||||
* @mdio_bus: PHY MDIO bus ID (only used by Siena)
|
||||
* @phy_mode: PHY operating mode. Serialised by @mac_lock.
|
||||
* @xmac_poll_required: XMAC link state needs polling
|
||||
* @link_advertising: Autonegotiation advertising flags
|
||||
@ -756,6 +757,7 @@ struct efx_nic {
|
||||
|
||||
struct efx_buffer irq_status;
|
||||
volatile signed int last_irq_cpu;
|
||||
unsigned long irq_zero_count;
|
||||
|
||||
struct efx_spi_device *spi_flash;
|
||||
struct efx_spi_device *spi_eeprom;
|
||||
@ -766,7 +768,7 @@ struct efx_nic {
|
||||
|
||||
unsigned n_rx_nodesc_drop_cnt;
|
||||
|
||||
struct falcon_nic_data *nic_data;
|
||||
void *nic_data;
|
||||
|
||||
struct mutex mac_lock;
|
||||
struct work_struct mac_work;
|
||||
@ -792,6 +794,7 @@ struct efx_nic {
|
||||
struct efx_phy_operations *phy_op;
|
||||
void *phy_data;
|
||||
struct mdio_if_info mdio;
|
||||
unsigned int mdio_bus;
|
||||
enum efx_phy_mode phy_mode;
|
||||
|
||||
bool xmac_poll_required;
|
||||
@ -824,6 +827,11 @@ static inline const char *efx_dev_name(struct efx_nic *efx)
|
||||
return efx_dev_registered(efx) ? efx->name : "";
|
||||
}
|
||||
|
||||
static inline unsigned int efx_port_num(struct efx_nic *efx)
|
||||
{
|
||||
return PCI_FUNC(efx->pci_dev->devfn);
|
||||
}
|
||||
|
||||
/**
|
||||
* struct efx_nic_type - Efx device type definition
|
||||
* @probe: Probe the controller
|
||||
|
Reference in New Issue
Block a user