Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Fields
efx_nic_type Struct Reference

#include <net_driver.h>

Data Fields

int(* probe )(struct efx_nic *efx)
 
void(* remove )(struct efx_nic *efx)
 
int(* init )(struct efx_nic *efx)
 
void(* dimension_resources )(struct efx_nic *efx)
 
void(* fini )(struct efx_nic *efx)
 
void(* monitor )(struct efx_nic *efx)
 
enum reset_type(* map_reset_reason )(enum reset_type reason)
 
int(* map_reset_flags )(u32 *flags)
 
int(* reset )(struct efx_nic *efx, enum reset_type method)
 
int(* probe_port )(struct efx_nic *efx)
 
void(* remove_port )(struct efx_nic *efx)
 
bool(* handle_global_event )(struct efx_channel *channel, efx_qword_t *)
 
void(* prepare_flush )(struct efx_nic *efx)
 
void(* update_stats )(struct efx_nic *efx)
 
void(* start_stats )(struct efx_nic *efx)
 
void(* stop_stats )(struct efx_nic *efx)
 
void(* set_id_led )(struct efx_nic *efx, enum efx_led_mode mode)
 
void(* push_irq_moderation )(struct efx_channel *channel)
 
int(* reconfigure_port )(struct efx_nic *efx)
 
int(* reconfigure_mac )(struct efx_nic *efx)
 
bool(* check_mac_fault )(struct efx_nic *efx)
 
void(* get_wol )(struct efx_nic *efx, struct ethtool_wolinfo *wol)
 
int(* set_wol )(struct efx_nic *efx, u32 type)
 
void(* resume_wol )(struct efx_nic *efx)
 
int(* test_chip )(struct efx_nic *efx, struct efx_self_tests *tests)
 
int(* test_nvram )(struct efx_nic *efx)
 
int revision
 
unsigned int mem_map_size
 
unsigned int txd_ptr_tbl_base
 
unsigned int rxd_ptr_tbl_base
 
unsigned int buf_tbl_base
 
unsigned int evq_ptr_tbl_base
 
unsigned int evq_rptr_tbl_base
 
u64 max_dma_mask
 
unsigned int rx_buffer_hash_size
 
unsigned int rx_buffer_padding
 
unsigned int max_interrupt_mode
 
unsigned int phys_addr_channels
 
unsigned int timer_period_max
 
netdev_features_t offload_features
 

Detailed Description

struct efx_nic_type - Efx device type definition : Probe the controller : Free resources allocated by probe() : Initialise the controller : Dimension controller resources (buffer table, and VIs once the available interrupt resources are clear) : Shut down the controller : Periodic function for polling link state and hardware monitor : Map ethtool reset reason to a reset method : Map ethtool reset flags to a reset method, if possible : Reset the controller hardware and possibly the PHY. This will be called while the controller is uninitialised. : Probe the MAC and PHY : Free resources allocated by probe_port() : Handle a "global" event (may be NULL) : Prepare the hardware for flushing the DMA queues : Update statistics not provided by event handling : Start the regular fetching of statistics : Stop the regular fetching of statistics : Set state of identifying LED or revert to automatic function : Apply interrupt moderation value : Push loopback/power/txdis changes to the MAC and PHY : Push MAC address, MTU, flow control and filter settings to the hardware. Serialised by the mac_lock. : Check MAC fault state. True if fault present. : Get WoL configuration from driver state : Push WoL configuration to the NIC : Synchronise WoL state between driver and MC (e.g. after resume) : Test registers. Should use efx_nic_test_registers(), and is expected to reset the NIC. : Test validity of NVRAM contents : Hardware architecture revision : Memory BAR mapped size : TX descriptor ring base address : RX descriptor ring base address : Buffer table base address : Event queue pointer table base address : Event queue read-pointer table base address : Maximum possible DMA mask : Size of hash at start of RX buffer : Size of padding at end of RX buffer : Highest capability interrupt mode supported from &enum efx_init_mode. : Number of channels with physically addressed descriptors : Maximum period of interrupt timer (in ticks) : net_device feature flags for protocol offload features implemented in hardware

Definition at line 945 of file net_driver.h.

Field Documentation

unsigned int buf_tbl_base

Definition at line 977 of file net_driver.h.

bool(* check_mac_fault)(struct efx_nic *efx)

Definition at line 966 of file net_driver.h.

void(* dimension_resources)(struct efx_nic *efx)

Definition at line 949 of file net_driver.h.

unsigned int evq_ptr_tbl_base

Definition at line 978 of file net_driver.h.

unsigned int evq_rptr_tbl_base

Definition at line 979 of file net_driver.h.

void(* fini)(struct efx_nic *efx)

Definition at line 950 of file net_driver.h.

Definition at line 967 of file net_driver.h.

bool(* handle_global_event)(struct efx_channel *channel, efx_qword_t *)

Definition at line 957 of file net_driver.h.

int(* init)(struct efx_nic *efx)

Definition at line 948 of file net_driver.h.

int(* map_reset_flags)(u32 *flags)

Definition at line 953 of file net_driver.h.

enum reset_type(* map_reset_reason)(enum reset_type reason)

Definition at line 952 of file net_driver.h.

u64 max_dma_mask

Definition at line 980 of file net_driver.h.

unsigned int max_interrupt_mode

Definition at line 983 of file net_driver.h.

unsigned int mem_map_size

Definition at line 974 of file net_driver.h.

void(* monitor)(struct efx_nic *efx)

Definition at line 951 of file net_driver.h.

netdev_features_t offload_features

Definition at line 986 of file net_driver.h.

unsigned int phys_addr_channels

Definition at line 984 of file net_driver.h.

void(* prepare_flush)(struct efx_nic *efx)

Definition at line 958 of file net_driver.h.

int(* probe)(struct efx_nic *efx)

Definition at line 946 of file net_driver.h.

int(* probe_port)(struct efx_nic *efx)

Definition at line 955 of file net_driver.h.

void(* push_irq_moderation)(struct efx_channel *channel)

Definition at line 963 of file net_driver.h.

int(* reconfigure_mac)(struct efx_nic *efx)

Definition at line 965 of file net_driver.h.

int(* reconfigure_port)(struct efx_nic *efx)

Definition at line 964 of file net_driver.h.

void(* remove)(struct efx_nic *efx)

Definition at line 947 of file net_driver.h.

void(* remove_port)(struct efx_nic *efx)

Definition at line 956 of file net_driver.h.

int(* reset)(struct efx_nic *efx, enum reset_type method)

Definition at line 954 of file net_driver.h.

void(* resume_wol)(struct efx_nic *efx)

Definition at line 969 of file net_driver.h.

Definition at line 973 of file net_driver.h.

unsigned int rx_buffer_hash_size

Definition at line 981 of file net_driver.h.

unsigned int rx_buffer_padding

Definition at line 982 of file net_driver.h.

unsigned int rxd_ptr_tbl_base

Definition at line 976 of file net_driver.h.

void(* set_id_led)(struct efx_nic *efx, enum efx_led_mode mode)

Definition at line 962 of file net_driver.h.

int(* set_wol)(struct efx_nic *efx, u32 type)

Definition at line 968 of file net_driver.h.

void(* start_stats)(struct efx_nic *efx)

Definition at line 960 of file net_driver.h.

void(* stop_stats)(struct efx_nic *efx)

Definition at line 961 of file net_driver.h.

int(* test_chip)(struct efx_nic *efx, struct efx_self_tests *tests)

Definition at line 970 of file net_driver.h.

int(* test_nvram)(struct efx_nic *efx)

Definition at line 971 of file net_driver.h.

unsigned int timer_period_max

Definition at line 985 of file net_driver.h.

unsigned int txd_ptr_tbl_base

Definition at line 975 of file net_driver.h.

void(* update_stats)(struct efx_nic *efx)

Definition at line 959 of file net_driver.h.


The documentation for this struct was generated from the following file: