Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions | Variables
e1000_82575.c File Reference
#include <linux/types.h>
#include <linux/if_ether.h>
#include "e1000_mac.h"
#include "e1000_82575.h"
#include "e1000_i210.h"

Go to the source code of this file.

Macros

#define pr_fmt(fmt)   KBUILD_MODNAME ": " fmt
 
#define E1000_82580_RXPBS_TABLE_SIZE   (sizeof(e1000_82580_rxpbs_table)/sizeof(u16))
 

Functions

void igb_power_up_serdes_link_82575 (struct e1000_hw *hw)
 
void igb_shutdown_serdes_link_82575 (struct e1000_hw *hw)
 
void igb_power_down_phy_copper_82575 (struct e1000_hw *hw)
 
void igb_rx_fifo_flush_82575 (struct e1000_hw *hw)
 
void igb_vmdq_set_anti_spoofing_pf (struct e1000_hw *hw, bool enable, int pf)
 
void igb_vmdq_set_loopback_pf (struct e1000_hw *hw, bool enable)
 
void igb_vmdq_set_replication_pf (struct e1000_hw *hw, bool enable)
 
u16 igb_rxpbs_adjust_82580 (u32 data)
 
s32 igb_set_eee_i350 (struct e1000_hw *hw)
 

Variables

struct e1000_info e1000_82575_info
 

Macro Definition Documentation

#define E1000_82580_RXPBS_TABLE_SIZE   (sizeof(e1000_82580_rxpbs_table)/sizeof(u16))

Definition at line 79 of file e1000_82575.c.

#define pr_fmt (   fmt)    KBUILD_MODNAME ": " fmt

Definition at line 32 of file e1000_82575.c.

Function Documentation

void igb_power_down_phy_copper_82575 ( struct e1000_hw hw)

igb_power_down_phy_copper_82575 - Remove link during PHY power down : pointer to the HW structure

In the case of a PHY power down to save power, or to turn off link during a driver unload, or wake on lan is not enabled, remove the link.

Definition at line 1533 of file e1000_82575.c.

void igb_power_up_serdes_link_82575 ( struct e1000_hw hw)

igb_power_up_serdes_link_82575 - Power up the serdes link after shutdown : pointer to the HW structure

Definition at line 1041 of file e1000_82575.c.

void igb_rx_fifo_flush_82575 ( struct e1000_hw hw)

igb_rx_fifo_flush_82575 - Clean rx fifo after RX enable : pointer to the HW structure

After rx enable if managability is enabled then there is likely some bad data at the start of the fifo and possibly in the DMA fifo. This function clears the fifos and flushes any packets that came in as rx was being enabled.

Definition at line 1612 of file e1000_82575.c.

u16 igb_rxpbs_adjust_82580 ( u32  data)

igb_rxpbs_adjust_82580 - adjust RXPBS value to reflect actual RX PBA size : data received by reading RXPBS register

The 82580 uses a table based approach for packet buffer allocation sizes. This function converts the retrieved value into the correct table value 0x0 0x1 0x2 0x3 0x4 0x5 0x6 0x7 0x0 36 72 144 1 2 4 8 16 0x8 35 70 140 rsv rsv rsv rsv rsv

Definition at line 2003 of file e1000_82575.c.

s32 igb_set_eee_i350 ( struct e1000_hw hw)

igb_set_eee_i350 - Enable/disable EEE support : pointer to the HW structure

Enable/disable EEE based on setting in dev_spec structure.

Definition at line 2223 of file e1000_82575.c.

void igb_shutdown_serdes_link_82575 ( struct e1000_hw hw)

igb_shutdown_serdes_link_82575 - Remove link during power down : pointer to the HW structure

In the case of fiber serdes, shut down optics and PCS on driver unload when management pass thru is not enabled.

Definition at line 1127 of file e1000_82575.c.

void igb_vmdq_set_anti_spoofing_pf ( struct e1000_hw hw,
bool  enable,
int  pf 
)

igb_vmdq_set_anti_spoofing_pf - enable or disable anti-spoofing : pointer to the hardware struct : state to enter, either enabled or disabled : Physical Function pool - do not set anti-spoofing for the PF

enables/disables L2 switch anti-spoofing functionality.

Definition at line 1735 of file e1000_82575.c.

void igb_vmdq_set_loopback_pf ( struct e1000_hw hw,
bool  enable 
)

igb_vmdq_set_loopback_pf - enable or disable vmdq loopback : pointer to the hardware struct : state to enter, either enabled or disabled

enables/disables L2 switch loopback functionality.

Definition at line 1767 of file e1000_82575.c.

void igb_vmdq_set_replication_pf ( struct e1000_hw hw,
bool  enable 
)

igb_vmdq_set_replication_pf - enable or disable vmdq replication : pointer to the hardware struct : state to enter, either enabled or disabled

enables/disables replication of packets across multiple pools.

Definition at line 1803 of file e1000_82575.c.

Variable Documentation

struct e1000_info e1000_82575_info
Initial value:
= {
.get_invariants = igb_get_invariants_82575,
.mac_ops = &e1000_mac_ops_82575,
.phy_ops = &e1000_phy_ops_82575,
.nvm_ops = &e1000_nvm_ops_82575,
}

Definition at line 2287 of file e1000_82575.c.