iPXE
|
#include <ipxe/ethernet.h>
#include "etherboot.h"
#include "nic.h"
#include <ipxe/isa.h>
#include "3c509.h"
Go to the source code of this file.
Enumerations | |
enum | { none, bnc, utp } |
Functions | |
FILE_LICENCE (BSD2) | |
void | t5x9_disable (struct nic *nic) |
static void | t509_enable (struct nic *nic) |
static void | t509_reset (struct nic *nic) |
static void | t509_transmit (struct nic *nic, const char *d, unsigned int t, unsigned int s, const char *p) |
static int | t509_poll (struct nic *nic, int retrieve) |
static void | t509_irq (struct nic *nic __unused, irq_action_t action __unused) |
static int | eeprom_rdy (uint16_t ioaddr) |
static int | get_e (uint16_t ioaddr, int offset) |
int | t5x9_probe (struct nic *nic, uint16_t prod_id_check, uint16_t prod_id_mask) |
Variables | |
static enum { ... } | connector = none |
static char | padmap [] |
static struct nic_operations | t509_operations |
anonymous enum |
Enumerator | |
---|---|
none | |
bnc | |
utp |
FILE_LICENCE | ( | BSD2 | ) |
void t5x9_disable | ( | struct nic * | nic | ) |
Definition at line 40 of file 3c5x9.c.
References C_INTR_LATCH, EP_COMMAND, EP_STATUS, EP_W0_CONFIG_CTRL, EP_W0_RESOURCE_CFG, GO_WINDOW, inw(), nic::ioaddr, outw, RX_DISABLE, RX_DISCARD_TOP_PACK, RX_RESET, S_COMMAND_IN_PROGRESS, SET_INTR_MASK, SET_IRQ, SET_RD_0_MASK, SET_RX_FILTER, STOP_TRANSCEIVER, TX_DISABLE, TX_RESET, and udelay().
Referenced by el3_eisa_disable(), legacy_t509_disable(), t509_reset(), and t529_disable().
|
static |
Definition at line 71 of file 3c5x9.c.
References ACK_INTR, bnc, connector, ENABLE_DRQ_IRQ, ENABLE_UTP, EP_COMMAND, EP_W0_CONFIG_CTRL, EP_W1_TX_STATUS, EP_W2_ADDR_0, EP_W4_MEDIA_TYPE, ETH_ALEN, ETH_ZLEN, FIL_BRDCST, FIL_GROUP, FIL_INDIVIDUAL, GO_WINDOW, inb(), nic::ioaddr, mdelay(), nic::node_addr, outb, outw, RX_ENABLE, RX_RESET, S_5_INTS, SET_INTR_MASK, SET_RD_0_MASK, SET_RX_EARLY_THRESH, SET_RX_FILTER, SET_TX_START_THRESH, START_TRANSCEIVER, TX_ENABLE, TX_RESET, udelay(), and utp.
Referenced by t509_reset().
|
static |
Definition at line 124 of file 3c5x9.c.
References t509_enable(), and t5x9_disable().
Referenced by t5x9_probe().
|
static |
Definition at line 135 of file 3c5x9.c.
References EP_COMMAND, EP_STATUS, EP_W1_FREE_TX, EP_W1_TX_PIO_WR_1, EP_W1_TX_STATUS, ETH_ALEN, ETH_FRAME_LEN, ETH_HLEN, htons, inb(), inw(), nic::ioaddr, len, nic::node_addr, outb, outsw(), outw, pad, padmap, printf(), S_COMMAND_IN_PROGRESS, status, TX_ENABLE, TX_RESET, TXS_COMPLETE, TXS_MAX_COLLISION, TXS_STATUS_OVERFLOW, and TXS_UNDERRUN.
|
static |
Definition at line 199 of file 3c5x9.c.
References ACK_INTR, C_INTR_LATCH, EP_COMMAND, EP_STATUS, EP_W1_RX_PIO_RD_1, EP_W1_RX_STATUS, ERR_RX, ETH_ALEN, inb(), insw(), inw(), nic::ioaddr, outw, nic::packet, nic::packetlen, printf(), RX_BYTES_MASK, RX_DISCARD_TOP_PACK, RX_INCOMPLETE, S_5_INTS, S_COMMAND_IN_PROGRESS, S_RX_COMPLETE, status, type, and udelay().
|
static |
|
static |
Definition at line 306 of file 3c5x9.c.
References ioaddr, is_eeprom_busy, and MAX_EEPROMBUSY.
Referenced by get_e().
|
static |
Definition at line 322 of file 3c5x9.c.
References EEPROM_CMD_RD, eeprom_rdy(), EP_W0_EEPROM_COMMAND, EP_W0_EEPROM_DATA, GO_WINDOW, inw(), ioaddr, offset, and outw.
Referenced by t5x9_probe().
Definition at line 342 of file 3c5x9.c.
References bnc, connector, DBG, EEPROM_PROD_ID, EP_W0_ADDRESS_CFG, EP_W0_CONFIG_CTRL, EP_W2_ADDR_0, ETH_ALEN, eth_ntoa(), get_e(), GO_WINDOW, htons, inw(), nic::ioaddr, IS_AUI, IS_BNC, IS_UTP, nic::nic_op, nic::node_addr, ntohs, outw, printf(), t509_operations, t509_reset(), and utp.
Referenced by el3_eisa_probe(), legacy_t509_probe(), and t529_probe().
enum { ... } connector |
Referenced by t509_enable(), and t5x9_probe().
|
static |
Definition at line 132 of file 3c5x9.c.
Referenced by t509_transmit().
|
static |
Definition at line 332 of file 3c5x9.c.
Referenced by t5x9_probe().