Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions | Variables
r8169.c File Reference
#include <linux/module.h>
#include <linux/moduleparam.h>
#include <linux/pci.h>
#include <linux/netdevice.h>
#include <linux/etherdevice.h>
#include <linux/delay.h>
#include <linux/ethtool.h>
#include <linux/mii.h>
#include <linux/if_vlan.h>
#include <linux/crc32.h>
#include <linux/in.h>
#include <linux/ip.h>
#include <linux/tcp.h>
#include <linux/init.h>
#include <linux/interrupt.h>
#include <linux/dma-mapping.h>
#include <linux/pm_runtime.h>
#include <linux/firmware.h>
#include <linux/pci-aspm.h>
#include <linux/prefetch.h>
#include <asm/io.h>
#include <asm/irq.h>

Go to the source code of this file.

Data Structures

struct  rtl_tx_desc_info
 
struct  TxDesc
 
struct  RxDesc
 
struct  ring_info
 
struct  rtl8169_counters
 
struct  rtl8169_stats
 
struct  rtl8169_private
 
struct  rtl8169_private::mdio_ops
 
struct  rtl8169_private::pll_power_ops
 
struct  rtl8169_private::jumbo_ops
 
struct  rtl8169_private::csi_ops
 
struct  rtl8169_private::rtl_fw
 
struct  rtl8169_private::rtl_fw::rtl_fw_phy_action
 
struct  rtl_cond
 
struct  exgmac_reg
 
struct  phy_reg
 
struct  fw_info
 
struct  ephy_info
 
struct  rtl_cfg_info
 

Macros

#define RTL8169_VERSION   "2.3LK-NAPI"
 
#define MODULENAME   "r8169"
 
#define PFX   MODULENAME ": "
 
#define FIRMWARE_8168D_1   "rtl_nic/rtl8168d-1.fw"
 
#define FIRMWARE_8168D_2   "rtl_nic/rtl8168d-2.fw"
 
#define FIRMWARE_8168E_1   "rtl_nic/rtl8168e-1.fw"
 
#define FIRMWARE_8168E_2   "rtl_nic/rtl8168e-2.fw"
 
#define FIRMWARE_8168E_3   "rtl_nic/rtl8168e-3.fw"
 
#define FIRMWARE_8168F_1   "rtl_nic/rtl8168f-1.fw"
 
#define FIRMWARE_8168F_2   "rtl_nic/rtl8168f-2.fw"
 
#define FIRMWARE_8105E_1   "rtl_nic/rtl8105e-1.fw"
 
#define FIRMWARE_8402_1   "rtl_nic/rtl8402-1.fw"
 
#define FIRMWARE_8411_1   "rtl_nic/rtl8411-1.fw"
 
#define FIRMWARE_8106E_1   "rtl_nic/rtl8106e-1.fw"
 
#define FIRMWARE_8168G_1   "rtl_nic/rtl8168g-1.fw"
 
#define assert(expr)   do {} while (0)
 
#define dprintk(fmt, args...)   do {} while (0)
 
#define R8169_MSG_DEFAULT   (NETIF_MSG_DRV | NETIF_MSG_PROBE | NETIF_MSG_IFUP | NETIF_MSG_IFDOWN)
 
#define TX_SLOTS_AVAIL(tp)   (tp->dirty_tx + NUM_TX_DESC - tp->cur_tx)
 
#define TX_FRAGS_READY_FOR(tp, nr_frags)   (TX_SLOTS_AVAIL(tp) >= (nr_frags + 1))
 
#define MAX_READ_REQUEST_SHIFT   12
 
#define TX_DMA_BURST   7 /* Maximum PCI burst, '7' is unlimited */
 
#define SafeMtu   0x1c20 /* ... actually life sucks beyond ~7k */
 
#define InterFrameGap   0x03 /* 3 means InterFrameGap = the shortest one */
 
#define R8169_REGS_SIZE   256
 
#define R8169_NAPI_WEIGHT   64
 
#define NUM_TX_DESC   64 /* Number of Tx descriptor registers */
 
#define NUM_RX_DESC   256 /* Number of Rx descriptor registers */
 
#define RX_BUF_SIZE   1536 /* Rx Buffer size */
 
#define R8169_TX_RING_BYTES   (NUM_TX_DESC * sizeof(struct TxDesc))
 
#define R8169_RX_RING_BYTES   (NUM_RX_DESC * sizeof(struct RxDesc))
 
#define RTL8169_TX_TIMEOUT   (6*HZ)
 
#define RTL8169_PHY_TIMEOUT   (10*HZ)
 
#define RTL_EEPROM_SIG   cpu_to_le32(0x8129)
 
#define RTL_EEPROM_SIG_MASK   cpu_to_le32(0xffff)
 
#define RTL_EEPROM_SIG_ADDR   0x0000
 
#define RTL_W8(reg, val8)   writeb ((val8), ioaddr + (reg))
 
#define RTL_W16(reg, val16)   writew ((val16), ioaddr + (reg))
 
#define RTL_W32(reg, val32)   writel ((val32), ioaddr + (reg))
 
#define RTL_R8(reg)   readb (ioaddr + (reg))
 
#define RTL_R16(reg)   readw (ioaddr + (reg))
 
#define RTL_R32(reg)   readl (ioaddr + (reg))
 
#define JUMBO_1K   ETH_DATA_LEN
 
#define JUMBO_4K   (4*1024 - ETH_HLEN - 2)
 
#define JUMBO_6K   (6*1024 - ETH_HLEN - 2)
 
#define JUMBO_7K   (7*1024 - ETH_HLEN - 2)
 
#define JUMBO_9K   (9*1024 - ETH_HLEN - 2)
 
#define _R(NAME, TD, FW, SZ, B)
 
#define TXCFG_AUTO_FIFO   (1 << 7) /* 8111e-vl */
 
#define TXCFG_EMPTY   (1 << 11) /* 8111e-vl */
 
#define RX128_INT_EN   (1 << 15) /* 8111c and later */
 
#define RX_MULTI_EN   (1 << 14) /* 8111c only */
 
#define RXCFG_FIFO_SHIFT   13
 
#define RX_FIFO_THRESH   (7 << RXCFG_FIFO_SHIFT)
 
#define RXCFG_DMA_SHIFT   8
 
#define RX_DMA_BURST   (7 << RXCFG_DMA_SHIFT)
 
#define PME_SIGNAL   (1 << 5) /* 8168c and later */
 
#define NoEarlyTx   0x3f /* Max value : no early transmit. */
 
#define TxPacketMax   (8064 >> 7)
 
#define EarlySize   0x27
 
#define CSIAR_FLAG   0x80000000
 
#define CSIAR_WRITE_CMD   0x80000000
 
#define CSIAR_BYTE_ENABLE   0x0f
 
#define CSIAR_BYTE_ENABLE_SHIFT   12
 
#define CSIAR_ADDR_MASK   0x0fff
 
#define CSIAR_FUNC_CARD   0x00000000
 
#define CSIAR_FUNC_SDIO   0x00010000
 
#define CSIAR_FUNC_NIC   0x00020000
 
#define EPHYAR_FLAG   0x80000000
 
#define EPHYAR_WRITE_CMD   0x80000000
 
#define EPHYAR_REG_MASK   0x1f
 
#define EPHYAR_REG_SHIFT   16
 
#define EPHYAR_DATA_MASK   0xffff
 
#define PFM_EN   (1 << 6)
 
#define FIX_NAK_1   (1 << 4)
 
#define FIX_NAK_2   (1 << 3)
 
#define NOW_IS_OOB   (1 << 7)
 
#define TX_EMPTY   (1 << 5)
 
#define RX_EMPTY   (1 << 4)
 
#define RXTX_EMPTY   (TX_EMPTY | RX_EMPTY)
 
#define EN_NDP   (1 << 3)
 
#define EN_OOB_RESET   (1 << 2)
 
#define LINK_LIST_RDY   (1 << 1)
 
#define EFUSEAR_FLAG   0x80000000
 
#define EFUSEAR_WRITE_CMD   0x80000000
 
#define EFUSEAR_READ_CMD   0x00000000
 
#define EFUSEAR_REG_MASK   0x03ff
 
#define EFUSEAR_REG_SHIFT   8
 
#define EFUSEAR_DATA_MASK   0xff
 
#define ERIAR_FLAG   0x80000000
 
#define ERIAR_WRITE_CMD   0x80000000
 
#define ERIAR_READ_CMD   0x00000000
 
#define ERIAR_ADDR_BYTE_ALIGN   4
 
#define ERIAR_TYPE_SHIFT   16
 
#define ERIAR_EXGMAC   (0x00 << ERIAR_TYPE_SHIFT)
 
#define ERIAR_MSIX   (0x01 << ERIAR_TYPE_SHIFT)
 
#define ERIAR_ASF   (0x02 << ERIAR_TYPE_SHIFT)
 
#define ERIAR_MASK_SHIFT   12
 
#define ERIAR_MASK_0001   (0x1 << ERIAR_MASK_SHIFT)
 
#define ERIAR_MASK_0011   (0x3 << ERIAR_MASK_SHIFT)
 
#define ERIAR_MASK_0101   (0x5 << ERIAR_MASK_SHIFT)
 
#define ERIAR_MASK_1111   (0xf << ERIAR_MASK_SHIFT)
 
#define OCPDR_WRITE_CMD   0x80000000
 
#define OCPDR_READ_CMD   0x00000000
 
#define OCPDR_REG_MASK   0x7f
 
#define OCPDR_GPHY_REG_SHIFT   16
 
#define OCPDR_DATA_MASK   0xffff
 
#define OCPAR_FLAG   0x80000000
 
#define OCPAR_GPHY_WRITE_CMD   0x8000f060
 
#define OCPAR_GPHY_READ_CMD   0x0000f060
 
#define TXPLA_RST   (1 << 29)
 
#define DISABLE_LAN_EN   (1 << 23) /* Enable GPIO pin */
 
#define PWM_EN   (1 << 22)
 
#define RXDV_GATED_EN   (1 << 19)
 
#define EARLY_TALLY_EN   (1 << 16)
 
#define RX_CONFIG_ACCEPT_MASK   0x3f
 
#define TD_MSS_MAX   0x07ffu /* MSS value */
 
#define TD0_MSS_SHIFT   16 /* MSS position (11 bits) */
 
#define TD1_MSS_SHIFT   18 /* MSS position (11 bits) */
 
#define RxProtoUDP   (PID1)
 
#define RxProtoTCP   (PID0)
 
#define RxProtoIP   (PID1 | PID0)
 
#define RxProtoMask   RxProtoIP
 
#define RsvdMask   0x3fffc000
 
#define RTL_VER_SIZE   32
 
#define RTL_FIRMWARE_UNKNOWN   ERR_PTR(-EAGAIN)
 
#define DECLARE_RTL_COND(name)
 
#define OOB_CMD_RESET   0x00
 
#define OOB_CMD_DRIVER_START   0x05
 
#define OOB_CMD_DRIVER_STOP   0x06
 
#define OCP_STD_PHY_BASE   0xa400
 
#define R8168DP_1_MDIO_ACCESS_BIT   0x00020000
 
#define RTL_EVENT_NAPI_RX   (RxOK | RxErr)
 
#define RTL_EVENT_NAPI_TX   (TxOK | TxErr)
 
#define RTL_EVENT_NAPI   (RTL_EVENT_NAPI_RX | RTL_EVENT_NAPI_TX)
 
#define WAKE_ANY   (WAKE_PHY | WAKE_MAGIC | WAKE_UCAST | WAKE_BCAST | WAKE_MCAST)
 
#define PHY_READ   0x00000000
 
#define PHY_DATA_OR   0x10000000
 
#define PHY_DATA_AND   0x20000000
 
#define PHY_BJMPN   0x30000000
 
#define PHY_READ_EFUSE   0x40000000
 
#define PHY_READ_MAC_BYTE   0x50000000
 
#define PHY_WRITE_MAC_BYTE   0x60000000
 
#define PHY_CLEAR_READCOUNT   0x70000000
 
#define PHY_WRITE   0x80000000
 
#define PHY_READCOUNT_EQ_SKIP   0x90000000
 
#define PHY_COMP_EQ_SKIPN   0xa0000000
 
#define PHY_COMP_NEQ_SKIPN   0xb0000000
 
#define PHY_WRITE_PREVIOUS   0xc0000000
 
#define PHY_SKIPN   0xd0000000
 
#define PHY_DELAY_MS   0xe0000000
 
#define PHY_WRITE_ERI_WORD   0xf0000000
 
#define FW_OPCODE_SIZE   sizeof(typeof(*((struct rtl_fw_phy_action *)0)->code))
 
#define R8168_CPCMD_QUIRK_MASK
 
#define R810X_CPCMD_QUIRK_MASK
 
#define RTL8169_PM_OPS   NULL
 

Enumerations

enum  mac_version {
  RTL_GIGA_MAC_VER_01 = 0, RTL_GIGA_MAC_VER_02, RTL_GIGA_MAC_VER_03, RTL_GIGA_MAC_VER_04,
  RTL_GIGA_MAC_VER_05, RTL_GIGA_MAC_VER_06, RTL_GIGA_MAC_VER_07, RTL_GIGA_MAC_VER_08,
  RTL_GIGA_MAC_VER_09, RTL_GIGA_MAC_VER_10, RTL_GIGA_MAC_VER_11, RTL_GIGA_MAC_VER_12,
  RTL_GIGA_MAC_VER_13, RTL_GIGA_MAC_VER_14, RTL_GIGA_MAC_VER_15, RTL_GIGA_MAC_VER_16,
  RTL_GIGA_MAC_VER_17, RTL_GIGA_MAC_VER_18, RTL_GIGA_MAC_VER_19, RTL_GIGA_MAC_VER_20,
  RTL_GIGA_MAC_VER_21, RTL_GIGA_MAC_VER_22, RTL_GIGA_MAC_VER_23, RTL_GIGA_MAC_VER_24,
  RTL_GIGA_MAC_VER_25, RTL_GIGA_MAC_VER_26, RTL_GIGA_MAC_VER_27, RTL_GIGA_MAC_VER_28,
  RTL_GIGA_MAC_VER_29, RTL_GIGA_MAC_VER_30, RTL_GIGA_MAC_VER_31, RTL_GIGA_MAC_VER_32,
  RTL_GIGA_MAC_VER_33, RTL_GIGA_MAC_VER_34, RTL_GIGA_MAC_VER_35, RTL_GIGA_MAC_VER_36,
  RTL_GIGA_MAC_VER_37, RTL_GIGA_MAC_VER_38, RTL_GIGA_MAC_VER_39, RTL_GIGA_MAC_VER_40,
  RTL_GIGA_MAC_VER_41, RTL_GIGA_MAC_NONE = 0xff
}
 
enum  rtl_tx_desc_version { RTL_TD_0 = 0, RTL_TD_1 = 1 }
 
enum  cfg_version { RTL_CFG_0 = 0x00, RTL_CFG_1, RTL_CFG_2 }
 
enum  rtl_registers {
  MAC0 = 0, MAC4 = 4, MAR0 = 8, CounterAddrLow = 0x10,
  CounterAddrHigh = 0x14, TxDescStartAddrLow = 0x20, TxDescStartAddrHigh = 0x24, TxHDescStartAddrLow = 0x28,
  TxHDescStartAddrHigh = 0x2c, FLASH = 0x30, ERSR = 0x36, ChipCmd = 0x37,
  TxPoll = 0x38, IntrMask = 0x3c, IntrStatus = 0x3e, TxConfig = 0x40,
  RxConfig = 0x44, RxMissed = 0x4c, Cfg9346 = 0x50, Config0 = 0x51,
  Config1 = 0x52, Config2 = 0x53, Config3 = 0x54, Config4 = 0x55,
  Config5 = 0x56, MultiIntr = 0x5c, PHYAR = 0x60, PHYstatus = 0x6c,
  RxMaxSize = 0xda, CPlusCmd = 0xe0, IntrMitigate = 0xe2, RxDescAddrLow = 0xe4,
  RxDescAddrHigh = 0xe8, EarlyTxThres = 0xec, MaxTxPacketSize = 0xec, FuncEvent = 0xf0,
  FuncEventMask = 0xf4, FuncPresetState = 0xf8, FuncForceEvent = 0xfc
}
 
enum  rtl8110_registers { TBICSR = 0x64, TBI_ANAR = 0x68, TBI_LPAR = 0x6a }
 
enum  rtl8168_8101_registers {
  CSIDR = 0x64, CSIAR = 0x68, PMCH = 0x6f, EPHYAR = 0x80,
  DLLPR = 0xd0, DBG_REG = 0xd1, TWSI = 0xd2, MCU = 0xd3,
  EFUSEAR = 0xdc
}
 
enum  rtl8168_registers {
  LED_FREQ = 0x1a, EEE_LED = 0x1b, ERIDR = 0x70, ERIAR = 0x74,
  EPHY_RXER_NUM = 0x7c, OCPDR = 0xb0, OCPAR = 0xb4, GPHY_OCP = 0xb8,
  RDSAR1 = 0xd0, MISC = 0xf0
}
 
enum  rtl_register_content {
  SYSErr = 0x8000, PCSTimeout = 0x4000, SWInt = 0x0100, TxDescUnavail = 0x0080,
  RxFIFOOver = 0x0040, LinkChg = 0x0020, RxOverflow = 0x0010, TxErr = 0x0008,
  TxOK = 0x0004, RxErr = 0x0002, RxOK = 0x0001, RxBOVF = (1 << 24),
  RxFOVF = (1 << 23), RxRWT = (1 << 22), RxRES = (1 << 21), RxRUNT = (1 << 20),
  RxCRC = (1 << 19), StopReq = 0x80, CmdReset = 0x10, CmdRxEnb = 0x08,
  CmdTxEnb = 0x04, RxBufEmpty = 0x01, HPQ = 0x80, NPQ = 0x40,
  FSWInt = 0x01, Cfg9346_Lock = 0x00, Cfg9346_Unlock = 0xc0, AcceptErr = 0x20,
  AcceptRunt = 0x10, AcceptBroadcast = 0x08, AcceptMulticast = 0x04, AcceptMyPhys = 0x02,
  AcceptAllPhys = 0x01, TxInterFrameGapShift = 24, TxDMAShift = 8, LEDS1 = (1 << 7),
  LEDS0 = (1 << 6), Speed_down = (1 << 4), MEMMAP = (1 << 3), IOMAP = (1 << 2),
  VPD = (1 << 1), PMEnable = (1 << 0), MSIEnable = (1 << 5), PCI_Clock_66MHz = 0x01,
  PCI_Clock_33MHz = 0x00, MagicPacket = (1 << 5), LinkUp = (1 << 4), Jumbo_En0 = (1 << 2),
  Beacon_en = (1 << 0), Jumbo_En1 = (1 << 1), BWF = (1 << 6), MWF = (1 << 5),
  UWF = (1 << 4), Spi_en = (1 << 3), LanWake = (1 << 1), PMEStatus = (1 << 0),
  TBIReset = 0x80000000, TBILoopback = 0x40000000, TBINwEnable = 0x20000000, TBINwRestart = 0x10000000,
  TBILinkOk = 0x02000000, TBINwComplete = 0x01000000, EnableBist = (1 << 15), Mac_dbgo_oe = (1 << 14),
  Normal_mode = (1 << 13), Force_half_dup = (1 << 12), Force_rxflow_en = (1 << 11), Force_txflow_en = (1 << 10),
  Cxpl_dbg_sel = (1 << 9), ASF = (1 << 8), PktCntrDisable = (1 << 7), Mac_dbgo_sel = 0x001c,
  RxVlan = (1 << 6), RxChkSum = (1 << 5), PCIDAC = (1 << 4), PCIMulRW = (1 << 3),
  INTT_0 = 0x0000, INTT_1 = 0x0001, INTT_2 = 0x0002, INTT_3 = 0x0003,
  TBI_Enable = 0x80, TxFlowCtrl = 0x40, RxFlowCtrl = 0x20, _1000bpsF = 0x10,
  _100bps = 0x08, _10bps = 0x04, LinkStatus = 0x02, FullDup = 0x01,
  TBILinkOK = 0x02000000, CounterDump = 0x8
}
 
enum  rtl_desc_bit { DescOwn = (1 << 31), RingEnd = (1 << 30), FirstFrag = (1 << 29), LastFrag = (1 << 28) }
 
enum  rtl_tx_desc_bit { TD_LSO = (1 << 27), TxVlanTag = (1 << 17) }
 
enum  rtl_tx_desc_bit_0 { TD0_TCP_CS = (1 << 16), TD0_UDP_CS = (1 << 17), TD0_IP_CS = (1 << 18) }
 
enum  rtl_tx_desc_bit_1 { TD1_IP_CS = (1 << 29), TD1_TCP_CS = (1 << 30), TD1_UDP_CS = (1 << 31) }
 
enum  rtl_rx_desc_bit {
  PID1 = (1 << 18), PID0 = (1 << 17), IPFail = (1 << 16), UDPFail = (1 << 15),
  TCPFail = (1 << 14), RxVlanTag = (1 << 16)
}
 
enum  features { RTL_FEATURE_WOL = (1 << 0), RTL_FEATURE_MSI = (1 << 1), RTL_FEATURE_GMII = (1 << 2) }
 
enum  rtl_flag {
  RTL_FLAG_TASK_ENABLED, RTL_FLAG_TASK_SLOW_PENDING, RTL_FLAG_TASK_RESET_PENDING, RTL_FLAG_TASK_PHY_PENDING,
  RTL_FLAG_MAX
}
 

Functions

 MODULE_DEVICE_TABLE (pci, rtl8169_pci_tbl)
 
 MODULE_AUTHOR ("Realtek and the Linux r8169 crew <[email protected]>")
 
 MODULE_DESCRIPTION ("RealTek RTL-8169 Gigabit Ethernet driver")
 
 module_param (use_dac, int, 0)
 
 MODULE_PARM_DESC (use_dac,"Enable PCI DAC. Unsafe on 32 bit PCI slot.")
 
 module_param_named (debug, debug.msg_enable, int, 0)
 
 MODULE_PARM_DESC (debug,"Debug verbosity level (0=none, ..., 16=all)")
 
 MODULE_LICENSE ("GPL")
 
 MODULE_VERSION (RTL8169_VERSION)
 
 MODULE_FIRMWARE (FIRMWARE_8168D_1)
 
 MODULE_FIRMWARE (FIRMWARE_8168D_2)
 
 MODULE_FIRMWARE (FIRMWARE_8168E_1)
 
 MODULE_FIRMWARE (FIRMWARE_8168E_2)
 
 MODULE_FIRMWARE (FIRMWARE_8168E_3)
 
 MODULE_FIRMWARE (FIRMWARE_8105E_1)
 
 MODULE_FIRMWARE (FIRMWARE_8168F_1)
 
 MODULE_FIRMWARE (FIRMWARE_8168F_2)
 
 MODULE_FIRMWARE (FIRMWARE_8402_1)
 
 MODULE_FIRMWARE (FIRMWARE_8411_1)
 
 MODULE_FIRMWARE (FIRMWARE_8106E_1)
 
 MODULE_FIRMWARE (FIRMWARE_8168G_1)
 
 DECLARE_RTL_COND (rtl_ocpar_cond)
 
 DECLARE_RTL_COND (rtl_eriar_cond)
 
 DECLARE_RTL_COND (rtl_ocp_read_cond)
 
 DECLARE_RTL_COND (rtl_ocp_gphy_cond)
 
 DECLARE_RTL_COND (rtl_phyar_cond)
 
 DECLARE_RTL_COND (rtl_ephyar_cond)
 
 DECLARE_RTL_COND (rtl_efusear_cond)
 
 DECLARE_RTL_COND (rtl_counters_cond)
 
 DECLARE_RTL_COND (rtl_phy_reset_cond)
 
 DECLARE_RTL_COND (rtl_chipcmd_cond)
 
 DECLARE_RTL_COND (rtl_npq_cond)
 
 DECLARE_RTL_COND (rtl_txcfg_empty_cond)
 
 DECLARE_RTL_COND (rtl_csiar_cond)
 
 DECLARE_RTL_COND (rtl_link_list_ready_cond)
 
 DECLARE_RTL_COND (rtl_rxtx_empty_cond)
 
 module_init (rtl8169_init_module)
 
 module_exit (rtl8169_cleanup_module)
 

Variables

struct fw_info __packed
 

Macro Definition Documentation

#define _R (   NAME,
  TD,
  FW,
  SZ,
  B 
)
Value:
{ \
.name = NAME, \
.txd_version = TD, \
.fw_name = FW, \
.jumbo_max = SZ, \
.jumbo_tx_csum = B \
}

Definition at line 163 of file r8169.c.

#define assert (   expr)    do {} while (0)

Definition at line 61 of file r8169.c.

#define CSIAR_ADDR_MASK   0x0fff

Definition at line 388 of file r8169.c.

#define CSIAR_BYTE_ENABLE   0x0f

Definition at line 386 of file r8169.c.

#define CSIAR_BYTE_ENABLE_SHIFT   12

Definition at line 387 of file r8169.c.

#define CSIAR_FLAG   0x80000000

Definition at line 384 of file r8169.c.

#define CSIAR_FUNC_CARD   0x00000000

Definition at line 389 of file r8169.c.

#define CSIAR_FUNC_NIC   0x00020000

Definition at line 391 of file r8169.c.

#define CSIAR_FUNC_SDIO   0x00010000

Definition at line 390 of file r8169.c.

#define CSIAR_WRITE_CMD   0x80000000

Definition at line 385 of file r8169.c.

#define DECLARE_RTL_COND (   name)
Value:
static bool name ## _check(struct rtl8169_private *); \
\
static const struct rtl_cond name = { \
.check = name ## _check, \
.msg = #name \
}; \
\
static bool name ## _check(struct rtl8169_private *tp)

Definition at line 896 of file r8169.c.

#define DISABLE_LAN_EN   (1 << 23) /* Enable GPIO pin */

Definition at line 455 of file r8169.c.

#define dprintk (   fmt,
  args... 
)    do {} while (0)

Definition at line 62 of file r8169.c.

#define EARLY_TALLY_EN   (1 << 16)

Definition at line 458 of file r8169.c.

#define EarlySize   0x27

Definition at line 367 of file r8169.c.

#define EFUSEAR_DATA_MASK   0xff

Definition at line 419 of file r8169.c.

#define EFUSEAR_FLAG   0x80000000

Definition at line 414 of file r8169.c.

#define EFUSEAR_READ_CMD   0x00000000

Definition at line 416 of file r8169.c.

#define EFUSEAR_REG_MASK   0x03ff

Definition at line 417 of file r8169.c.

#define EFUSEAR_REG_SHIFT   8

Definition at line 418 of file r8169.c.

#define EFUSEAR_WRITE_CMD   0x80000000

Definition at line 415 of file r8169.c.

#define EN_NDP   (1 << 3)

Definition at line 410 of file r8169.c.

#define EN_OOB_RESET   (1 << 2)

Definition at line 411 of file r8169.c.

#define EPHYAR_DATA_MASK   0xffff

Definition at line 398 of file r8169.c.

#define EPHYAR_FLAG   0x80000000

Definition at line 394 of file r8169.c.

#define EPHYAR_REG_MASK   0x1f

Definition at line 396 of file r8169.c.

#define EPHYAR_REG_SHIFT   16

Definition at line 397 of file r8169.c.

#define EPHYAR_WRITE_CMD   0x80000000

Definition at line 395 of file r8169.c.

#define ERIAR_ADDR_BYTE_ALIGN   4

Definition at line 430 of file r8169.c.

#define ERIAR_ASF   (0x02 << ERIAR_TYPE_SHIFT)

Definition at line 434 of file r8169.c.

#define ERIAR_EXGMAC   (0x00 << ERIAR_TYPE_SHIFT)

Definition at line 432 of file r8169.c.

#define ERIAR_FLAG   0x80000000

Definition at line 427 of file r8169.c.

#define ERIAR_MASK_0001   (0x1 << ERIAR_MASK_SHIFT)

Definition at line 436 of file r8169.c.

#define ERIAR_MASK_0011   (0x3 << ERIAR_MASK_SHIFT)

Definition at line 437 of file r8169.c.

#define ERIAR_MASK_0101   (0x5 << ERIAR_MASK_SHIFT)

Definition at line 438 of file r8169.c.

#define ERIAR_MASK_1111   (0xf << ERIAR_MASK_SHIFT)

Definition at line 439 of file r8169.c.

#define ERIAR_MASK_SHIFT   12

Definition at line 435 of file r8169.c.

#define ERIAR_MSIX   (0x01 << ERIAR_TYPE_SHIFT)

Definition at line 433 of file r8169.c.

#define ERIAR_READ_CMD   0x00000000

Definition at line 429 of file r8169.c.

#define ERIAR_TYPE_SHIFT   16

Definition at line 431 of file r8169.c.

#define ERIAR_WRITE_CMD   0x80000000

Definition at line 428 of file r8169.c.

#define FIRMWARE_8105E_1   "rtl_nic/rtl8105e-1.fw"

Definition at line 46 of file r8169.c.

#define FIRMWARE_8106E_1   "rtl_nic/rtl8106e-1.fw"

Definition at line 49 of file r8169.c.

#define FIRMWARE_8168D_1   "rtl_nic/rtl8168d-1.fw"

Definition at line 39 of file r8169.c.

#define FIRMWARE_8168D_2   "rtl_nic/rtl8168d-2.fw"

Definition at line 40 of file r8169.c.

#define FIRMWARE_8168E_1   "rtl_nic/rtl8168e-1.fw"

Definition at line 41 of file r8169.c.

#define FIRMWARE_8168E_2   "rtl_nic/rtl8168e-2.fw"

Definition at line 42 of file r8169.c.

#define FIRMWARE_8168E_3   "rtl_nic/rtl8168e-3.fw"

Definition at line 43 of file r8169.c.

#define FIRMWARE_8168F_1   "rtl_nic/rtl8168f-1.fw"

Definition at line 44 of file r8169.c.

#define FIRMWARE_8168F_2   "rtl_nic/rtl8168f-2.fw"

Definition at line 45 of file r8169.c.

#define FIRMWARE_8168G_1   "rtl_nic/rtl8168g-1.fw"

Definition at line 50 of file r8169.c.

#define FIRMWARE_8402_1   "rtl_nic/rtl8402-1.fw"

Definition at line 47 of file r8169.c.

#define FIRMWARE_8411_1   "rtl_nic/rtl8411-1.fw"

Definition at line 48 of file r8169.c.

#define FIX_NAK_1   (1 << 4)

Definition at line 402 of file r8169.c.

#define FIX_NAK_2   (1 << 3)

Definition at line 403 of file r8169.c.

#define FW_OPCODE_SIZE   sizeof(typeof(*((struct rtl_fw_phy_action *)0)->code))

Definition at line 2176 of file r8169.c.

#define InterFrameGap   0x03 /* 3 means InterFrameGap = the shortest one */

Definition at line 82 of file r8169.c.

#define JUMBO_1K   ETH_DATA_LEN

Definition at line 157 of file r8169.c.

#define JUMBO_4K   (4*1024 - ETH_HLEN - 2)

Definition at line 158 of file r8169.c.

#define JUMBO_6K   (6*1024 - ETH_HLEN - 2)

Definition at line 159 of file r8169.c.

#define JUMBO_7K   (7*1024 - ETH_HLEN - 2)

Definition at line 160 of file r8169.c.

#define JUMBO_9K   (9*1024 - ETH_HLEN - 2)

Definition at line 161 of file r8169.c.

#define LINK_LIST_RDY   (1 << 1)

Definition at line 412 of file r8169.c.

#define MAX_READ_REQUEST_SHIFT   12

Definition at line 79 of file r8169.c.

#define MODULENAME   "r8169"

Definition at line 36 of file r8169.c.

#define NoEarlyTx   0x3f /* Max value : no early transmit. */

Definition at line 362 of file r8169.c.

#define NOW_IS_OOB   (1 << 7)

Definition at line 406 of file r8169.c.

#define NUM_RX_DESC   256 /* Number of Rx descriptor registers */

Definition at line 87 of file r8169.c.

#define NUM_TX_DESC   64 /* Number of Tx descriptor registers */

Definition at line 86 of file r8169.c.

#define OCP_STD_PHY_BASE   0xa400

Definition at line 1064 of file r8169.c.

#define OCPAR_FLAG   0x80000000

Definition at line 448 of file r8169.c.

#define OCPAR_GPHY_READ_CMD   0x0000f060

Definition at line 450 of file r8169.c.

#define OCPAR_GPHY_WRITE_CMD   0x8000f060

Definition at line 449 of file r8169.c.

#define OCPDR_DATA_MASK   0xffff

Definition at line 446 of file r8169.c.

#define OCPDR_GPHY_REG_SHIFT   16

Definition at line 445 of file r8169.c.

#define OCPDR_READ_CMD   0x00000000

Definition at line 443 of file r8169.c.

#define OCPDR_REG_MASK   0x7f

Definition at line 444 of file r8169.c.

#define OCPDR_WRITE_CMD   0x80000000

Definition at line 442 of file r8169.c.

#define OOB_CMD_DRIVER_START   0x05

Definition at line 955 of file r8169.c.

#define OOB_CMD_DRIVER_STOP   0x06

Definition at line 956 of file r8169.c.

#define OOB_CMD_RESET   0x00

Definition at line 954 of file r8169.c.

#define PFM_EN   (1 << 6)

Definition at line 400 of file r8169.c.

#define PFX   MODULENAME ": "

Definition at line 37 of file r8169.c.

#define PHY_BJMPN   0x30000000

Definition at line 2154 of file r8169.c.

#define PHY_CLEAR_READCOUNT   0x70000000

Definition at line 2158 of file r8169.c.

#define PHY_COMP_EQ_SKIPN   0xa0000000

Definition at line 2161 of file r8169.c.

#define PHY_COMP_NEQ_SKIPN   0xb0000000

Definition at line 2162 of file r8169.c.

#define PHY_DATA_AND   0x20000000

Definition at line 2153 of file r8169.c.

#define PHY_DATA_OR   0x10000000

Definition at line 2152 of file r8169.c.

#define PHY_DELAY_MS   0xe0000000

Definition at line 2165 of file r8169.c.

#define PHY_READ   0x00000000

Definition at line 2151 of file r8169.c.

#define PHY_READ_EFUSE   0x40000000

Definition at line 2155 of file r8169.c.

#define PHY_READ_MAC_BYTE   0x50000000

Definition at line 2156 of file r8169.c.

#define PHY_READCOUNT_EQ_SKIP   0x90000000

Definition at line 2160 of file r8169.c.

#define PHY_SKIPN   0xd0000000

Definition at line 2164 of file r8169.c.

#define PHY_WRITE   0x80000000

Definition at line 2159 of file r8169.c.

#define PHY_WRITE_ERI_WORD   0xf0000000

Definition at line 2166 of file r8169.c.

#define PHY_WRITE_MAC_BYTE   0x60000000

Definition at line 2157 of file r8169.c.

#define PHY_WRITE_PREVIOUS   0xc0000000

Definition at line 2163 of file r8169.c.

#define PME_SIGNAL   (1 << 5) /* 8168c and later */

Definition at line 347 of file r8169.c.

#define PWM_EN   (1 << 22)

Definition at line 456 of file r8169.c.

#define R810X_CPCMD_QUIRK_MASK
Value:
(\
EnableBist | \
Mac_dbgo_oe | \
Force_half_dup | \
Force_rxflow_en | \
Force_txflow_en | \
Cxpl_dbg_sel | \
ASF | \
PktCntrDisable | \
Mac_dbgo_sel)

Definition at line 5247 of file r8169.c.

#define R8168_CPCMD_QUIRK_MASK
Value:
(\
EnableBist | \
Mac_dbgo_oe | \
Force_half_dup | \
Force_rxflow_en | \
Force_txflow_en | \
Cxpl_dbg_sel | \
ASF | \
PktCntrDisable | \
Mac_dbgo_sel)

Definition at line 4752 of file r8169.c.

#define R8168DP_1_MDIO_ACCESS_BIT   0x00020000

Definition at line 1158 of file r8169.c.

#define R8169_MSG_DEFAULT   (NETIF_MSG_DRV | NETIF_MSG_PROBE | NETIF_MSG_IFUP | NETIF_MSG_IFDOWN)

Definition at line 65 of file r8169.c.

#define R8169_NAPI_WEIGHT   64

Definition at line 85 of file r8169.c.

#define R8169_REGS_SIZE   256

Definition at line 84 of file r8169.c.

#define R8169_RX_RING_BYTES   (NUM_RX_DESC * sizeof(struct RxDesc))

Definition at line 90 of file r8169.c.

#define R8169_TX_RING_BYTES   (NUM_TX_DESC * sizeof(struct TxDesc))

Definition at line 89 of file r8169.c.

#define RsvdMask   0x3fffc000

Definition at line 666 of file r8169.c.

#define RTL8169_PHY_TIMEOUT   (10*HZ)

Definition at line 93 of file r8169.c.

#define RTL8169_PM_OPS   NULL

Definition at line 6520 of file r8169.c.

#define RTL8169_TX_TIMEOUT   (6*HZ)

Definition at line 92 of file r8169.c.

#define RTL8169_VERSION   "2.3LK-NAPI"

Definition at line 35 of file r8169.c.

#define RTL_EEPROM_SIG   cpu_to_le32(0x8129)

Definition at line 95 of file r8169.c.

#define RTL_EEPROM_SIG_ADDR   0x0000

Definition at line 97 of file r8169.c.

#define RTL_EEPROM_SIG_MASK   cpu_to_le32(0xffff)

Definition at line 96 of file r8169.c.

#define RTL_EVENT_NAPI   (RTL_EVENT_NAPI_RX | RTL_EVENT_NAPI_TX)

Definition at line 1357 of file r8169.c.

#define RTL_EVENT_NAPI_RX   (RxOK | RxErr)

Definition at line 1355 of file r8169.c.

#define RTL_EVENT_NAPI_TX   (TxOK | TxErr)

Definition at line 1356 of file r8169.c.

#define RTL_FIRMWARE_UNKNOWN   ERR_PTR(-EAGAIN)

Definition at line 800 of file r8169.c.

#define RTL_R16 (   reg)    readw (ioaddr + (reg))

Definition at line 104 of file r8169.c.

#define RTL_R32 (   reg)    readl (ioaddr + (reg))

Definition at line 105 of file r8169.c.

#define RTL_R8 (   reg)    readb (ioaddr + (reg))

Definition at line 103 of file r8169.c.

#define RTL_VER_SIZE   32

Definition at line 791 of file r8169.c.

#define RTL_W16 (   reg,
  val16 
)    writew ((val16), ioaddr + (reg))

Definition at line 101 of file r8169.c.

#define RTL_W32 (   reg,
  val32 
)    writel ((val32), ioaddr + (reg))

Definition at line 102 of file r8169.c.

#define RTL_W8 (   reg,
  val8 
)    writeb ((val8), ioaddr + (reg))

Definition at line 100 of file r8169.c.

#define RX128_INT_EN   (1 << 15) /* 8111c and later */

Definition at line 333 of file r8169.c.

#define RX_BUF_SIZE   1536 /* Rx Buffer size */

Definition at line 88 of file r8169.c.

#define RX_CONFIG_ACCEPT_MASK   0x3f

Definition at line 506 of file r8169.c.

#define RX_DMA_BURST   (7 << RXCFG_DMA_SHIFT)

Definition at line 340 of file r8169.c.

#define RX_EMPTY   (1 << 4)

Definition at line 408 of file r8169.c.

#define RX_FIFO_THRESH   (7 << RXCFG_FIFO_SHIFT)

Definition at line 337 of file r8169.c.

#define RX_MULTI_EN   (1 << 14) /* 8111c only */

Definition at line 334 of file r8169.c.

#define RXCFG_DMA_SHIFT   8

Definition at line 338 of file r8169.c.

#define RXCFG_FIFO_SHIFT   13

Definition at line 335 of file r8169.c.

#define RXDV_GATED_EN   (1 << 19)

Definition at line 457 of file r8169.c.

#define RxProtoIP   (PID1 | PID0)

Definition at line 657 of file r8169.c.

#define RxProtoMask   RxProtoIP

Definition at line 658 of file r8169.c.

#define RxProtoTCP   (PID0)

Definition at line 656 of file r8169.c.

#define RxProtoUDP   (PID1)

Definition at line 655 of file r8169.c.

#define RXTX_EMPTY   (TX_EMPTY | RX_EMPTY)

Definition at line 409 of file r8169.c.

#define SafeMtu   0x1c20 /* ... actually life sucks beyond ~7k */

Definition at line 81 of file r8169.c.

#define TD0_MSS_SHIFT   16 /* MSS position (11 bits) */

Definition at line 609 of file r8169.c.

#define TD1_MSS_SHIFT   18 /* MSS position (11 bits) */

Definition at line 618 of file r8169.c.

#define TD_MSS_MAX   0x07ffu /* MSS value */

Definition at line 600 of file r8169.c.

#define TX_DMA_BURST   7 /* Maximum PCI burst, '7' is unlimited */

Definition at line 80 of file r8169.c.

#define TX_EMPTY   (1 << 5)

Definition at line 407 of file r8169.c.

#define TX_FRAGS_READY_FOR (   tp,
  nr_frags 
)    (TX_SLOTS_AVAIL(tp) >= (nr_frags + 1))

Definition at line 72 of file r8169.c.

#define TX_SLOTS_AVAIL (   tp)    (tp->dirty_tx + NUM_TX_DESC - tp->cur_tx)

Definition at line 68 of file r8169.c.

#define TXCFG_AUTO_FIFO   (1 << 7) /* 8111e-vl */

Definition at line 329 of file r8169.c.

#define TXCFG_EMPTY   (1 << 11) /* 8111e-vl */

Definition at line 330 of file r8169.c.

#define TxPacketMax   (8064 >> 7)

Definition at line 366 of file r8169.c.

#define TXPLA_RST   (1 << 29)

Definition at line 454 of file r8169.c.

#define WAKE_ANY   (WAKE_PHY | WAKE_MAGIC | WAKE_UCAST | WAKE_BCAST | WAKE_MCAST)

Definition at line 1494 of file r8169.c.

Enumeration Type Documentation

Enumerator:
RTL_CFG_0 
RTL_CFG_1 
RTL_CFG_2 

Definition at line 278 of file r8169.c.

Enumerator:
RTL_FEATURE_WOL 
RTL_FEATURE_MSI 
RTL_FEATURE_GMII 

Definition at line 686 of file r8169.c.

Enumerator:
RTL_GIGA_MAC_VER_01 
RTL_GIGA_MAC_VER_02 
RTL_GIGA_MAC_VER_03 
RTL_GIGA_MAC_VER_04 
RTL_GIGA_MAC_VER_05 
RTL_GIGA_MAC_VER_06 
RTL_GIGA_MAC_VER_07 
RTL_GIGA_MAC_VER_08 
RTL_GIGA_MAC_VER_09 
RTL_GIGA_MAC_VER_10 
RTL_GIGA_MAC_VER_11 
RTL_GIGA_MAC_VER_12 
RTL_GIGA_MAC_VER_13 
RTL_GIGA_MAC_VER_14 
RTL_GIGA_MAC_VER_15 
RTL_GIGA_MAC_VER_16 
RTL_GIGA_MAC_VER_17 
RTL_GIGA_MAC_VER_18 
RTL_GIGA_MAC_VER_19 
RTL_GIGA_MAC_VER_20 
RTL_GIGA_MAC_VER_21 
RTL_GIGA_MAC_VER_22 
RTL_GIGA_MAC_VER_23 
RTL_GIGA_MAC_VER_24 
RTL_GIGA_MAC_VER_25 
RTL_GIGA_MAC_VER_26 
RTL_GIGA_MAC_VER_27 
RTL_GIGA_MAC_VER_28 
RTL_GIGA_MAC_VER_29 
RTL_GIGA_MAC_VER_30 
RTL_GIGA_MAC_VER_31 
RTL_GIGA_MAC_VER_32 
RTL_GIGA_MAC_VER_33 
RTL_GIGA_MAC_VER_34 
RTL_GIGA_MAC_VER_35 
RTL_GIGA_MAC_VER_36 
RTL_GIGA_MAC_VER_37 
RTL_GIGA_MAC_VER_38 
RTL_GIGA_MAC_VER_39 
RTL_GIGA_MAC_VER_40 
RTL_GIGA_MAC_VER_41 
RTL_GIGA_MAC_NONE 

Definition at line 107 of file r8169.c.

Enumerator:
TBICSR 
TBI_ANAR 
TBI_LPAR 

Definition at line 375 of file r8169.c.

Enumerator:
CSIDR 
CSIAR 
PMCH 
EPHYAR 
DLLPR 
DBG_REG 
TWSI 
MCU 
EFUSEAR 

Definition at line 381 of file r8169.c.

Enumerator:
LED_FREQ 
EEE_LED 
ERIDR 
ERIAR 
EPHY_RXER_NUM 
OCPDR 
OCPAR 
GPHY_OCP 
RDSAR1 
MISC 

Definition at line 422 of file r8169.c.

Enumerator:
DescOwn 
RingEnd 
FirstFrag 
LastFrag 

Definition at line 588 of file r8169.c.

enum rtl_flag
Enumerator:
RTL_FLAG_TASK_ENABLED 
RTL_FLAG_TASK_SLOW_PENDING 
RTL_FLAG_TASK_RESET_PENDING 
RTL_FLAG_TASK_PHY_PENDING 
RTL_FLAG_MAX 

Definition at line 708 of file r8169.c.

Enumerator:
SYSErr 
PCSTimeout 
SWInt 
TxDescUnavail 
RxFIFOOver 
LinkChg 
RxOverflow 
TxErr 
TxOK 
RxErr 
RxOK 
RxBOVF 
RxFOVF 
RxRWT 
RxRES 
RxRUNT 
RxCRC 
StopReq 
CmdReset 
CmdRxEnb 
CmdTxEnb 
RxBufEmpty 
HPQ 
NPQ 
FSWInt 
Cfg9346_Lock 
Cfg9346_Unlock 
AcceptErr 
AcceptRunt 
AcceptBroadcast 
AcceptMulticast 
AcceptMyPhys 
AcceptAllPhys 
TxInterFrameGapShift 
TxDMAShift 
LEDS1 
LEDS0 
Speed_down 
MEMMAP 
IOMAP 
VPD 
PMEnable 
MSIEnable 
PCI_Clock_66MHz 
PCI_Clock_33MHz 
MagicPacket 
LinkUp 
Jumbo_En0 
Beacon_en 
Jumbo_En1 
BWF 
MWF 
UWF 
Spi_en 
LanWake 
PMEStatus 
TBIReset 
TBILoopback 
TBINwEnable 
TBINwRestart 
TBILinkOk 
TBINwComplete 
EnableBist 
Mac_dbgo_oe 
Normal_mode 
Force_half_dup 
Force_rxflow_en 
Force_txflow_en 
Cxpl_dbg_sel 
ASF 
PktCntrDisable 
Mac_dbgo_sel 
RxVlan 
RxChkSum 
PCIDAC 
PCIMulRW 
INTT_0 
INTT_1 
INTT_2 
INTT_3 
TBI_Enable 
TxFlowCtrl 
RxFlowCtrl 
_1000bpsF 
_100bps 
_10bps 
LinkStatus 
FullDup 
TBILinkOK 
CounterDump 

Definition at line 461 of file r8169.c.

Enumerator:
MAC0 
MAC4 
MAR0 
CounterAddrLow 
CounterAddrHigh 
TxDescStartAddrLow 
TxDescStartAddrHigh 
TxHDescStartAddrLow 
TxHDescStartAddrHigh 
FLASH 
ERSR 
ChipCmd 
TxPoll 
IntrMask 
IntrStatus 
TxConfig 
RxConfig 
RxMissed 
Cfg9346 
Config0 
Config1 
Config2 
Config3 
Config4 
Config5 
MultiIntr 
PHYAR 
PHYstatus 
RxMaxSize 
CPlusCmd 
IntrMitigate 
RxDescAddrLow 
RxDescAddrHigh 
EarlyTxThres 
MaxTxPacketSize 
FuncEvent 
FuncEventMask 
FuncPresetState 
FuncForceEvent 

Definition at line 311 of file r8169.c.

Enumerator:
PID1 
PID0 
IPFail 
UDPFail 
TCPFail 
RxVlanTag 

Definition at line 650 of file r8169.c.

Enumerator:
TD_LSO 
TxVlanTag 

Definition at line 597 of file r8169.c.

Enumerator:
TD0_TCP_CS 
TD0_UDP_CS 
TD0_IP_CS 

Definition at line 607 of file r8169.c.

Enumerator:
TD1_IP_CS 
TD1_TCP_CS 
TD1_UDP_CS 

Definition at line 616 of file r8169.c.

Enumerator:
RTL_TD_0 
RTL_TD_1 

Definition at line 152 of file r8169.c.

Function Documentation

DECLARE_RTL_COND ( rtl_ocpar_cond  )

Definition at line 906 of file r8169.c.

DECLARE_RTL_COND ( rtl_eriar_cond  )

Definition at line 933 of file r8169.c.

DECLARE_RTL_COND ( rtl_ocp_read_cond  )

Definition at line 963 of file r8169.c.

DECLARE_RTL_COND ( rtl_ocp_gphy_cond  )

Definition at line 1002 of file r8169.c.

DECLARE_RTL_COND ( rtl_phyar_cond  )

Definition at line 1087 of file r8169.c.

DECLARE_RTL_COND ( rtl_ephyar_cond  )

Definition at line 1233 of file r8169.c.

DECLARE_RTL_COND ( rtl_efusear_cond  )

Definition at line 1308 of file r8169.c.

DECLARE_RTL_COND ( rtl_counters_cond  )

Definition at line 1929 of file r8169.c.

DECLARE_RTL_COND ( rtl_phy_reset_cond  )

Definition at line 3652 of file r8169.c.

DECLARE_RTL_COND ( rtl_chipcmd_cond  )

Definition at line 4297 of file r8169.c.

DECLARE_RTL_COND ( rtl_npq_cond  )

Definition at line 4364 of file r8169.c.

DECLARE_RTL_COND ( rtl_txcfg_empty_cond  )

Definition at line 4371 of file r8169.c.

DECLARE_RTL_COND ( rtl_csiar_cond  )

Definition at line 4634 of file r8169.c.

DECLARE_RTL_COND ( rtl_link_list_ready_cond  )

Definition at line 6678 of file r8169.c.

DECLARE_RTL_COND ( rtl_rxtx_empty_cond  )

Definition at line 6685 of file r8169.c.

MODULE_AUTHOR ( "Realtek and the Linux r8169 crew <[email protected]>"  )
MODULE_DESCRIPTION ( "RealTek RTL-8169 Gigabit Ethernet driver )
MODULE_DEVICE_TABLE ( pci  ,
rtl8169_pci_tbl   
)
module_exit ( rtl8169_cleanup_module  )
MODULE_FIRMWARE ( FIRMWARE_8168D_1  )
MODULE_FIRMWARE ( FIRMWARE_8168D_2  )
MODULE_FIRMWARE ( FIRMWARE_8168E_1  )
MODULE_FIRMWARE ( FIRMWARE_8168E_2  )
MODULE_FIRMWARE ( FIRMWARE_8168E_3  )
MODULE_FIRMWARE ( FIRMWARE_8105E_1  )
MODULE_FIRMWARE ( FIRMWARE_8168F_1  )
MODULE_FIRMWARE ( FIRMWARE_8168F_2  )
MODULE_FIRMWARE ( FIRMWARE_8402_1  )
MODULE_FIRMWARE ( FIRMWARE_8411_1  )
MODULE_FIRMWARE ( FIRMWARE_8106E_1  )
MODULE_FIRMWARE ( FIRMWARE_8168G_1  )
module_init ( rtl8169_init_module  )
MODULE_LICENSE ( "GPL"  )
module_param ( use_dac  ,
int  ,
 
)
module_param_named ( debug  ,
debug.  msg_enable,
int  ,
 
)
MODULE_PARM_DESC ( use_dac  ,
"Enable PCI DAC. Unsafe on 32 bit PCI slot."   
)
MODULE_PARM_DESC ( debug  ,
"Debug verbosity level (0=none, ..., 16=all)"   
)
MODULE_VERSION ( RTL8169_VERSION  )

Variable Documentation

const char* fw_name

Definition at line 174 of file r8169.c.

u16 jumbo_max

Definition at line 175 of file r8169.c.

bool jumbo_tx_csum

Definition at line 176 of file r8169.c.

u32 msg_enable

Definition at line 308 of file r8169.c.

const char* name

Definition at line 172 of file r8169.c.

enum rtl_tx_desc_version txd_version

Definition at line 173 of file r8169.c.