|
iPXE
|
#include "etherboot.h"#include "nic.h"#include "ns8390.h"#include <ipxe/ethernet.h>#include <ipxe/pci.h>Go to the source code of this file.
Macros | |
| #define | INCLUDE_NS8390 1 |
| #define | eth_probe nepci_probe |
| #define | ASIC_PIO NE_DATA |
Functions | |
| FILE_LICENCE (BSD2) | |
| static void | eth_pio_read (unsigned int src, unsigned char *dst, unsigned int cnt) |
| static void | eth_pio_write (const unsigned char *src, unsigned int dst, unsigned int cnt) |
| static void | enable_multicast (unsigned short eth_nic_base) |
| static void | ns8390_reset (struct nic *nic) |
| static int | ns8390_poll (struct nic *nic, int retrieve) |
| static void | eth_rx_overrun (struct nic *nic) |
| static void | ns8390_transmit (struct nic *nic, const char *d, unsigned int t, unsigned int s, const char *p) |
| static void | ns8390_disable (struct nic *nic, void *hwdev __unused) |
| static void | ns8390_irq (struct nic *nic __unused, irq_action_t action __unused) |
| static int | eth_probe (struct nic *nic, struct pci_device *pci) |
| PCI_DRIVER (nepci_driver, nepci_nics, PCI_NO_CLASS) | |
| DRIVER ("NE2000/PCI", nic_driver, pci_driver, nepci_driver, nepci_probe, ns8390_disable, no_fake_bss) | |
Variables | |
| static unsigned char | eth_vendor |
| static unsigned char | eth_flags |
| static unsigned short | eth_nic_base |
| static unsigned short | eth_asic_base |
| static unsigned char | eth_memsize |
| static unsigned char | eth_rx_start |
| static unsigned char | eth_tx_start |
| static Address | eth_bmem |
| static Address | eth_rmem |
| static unsigned char | eth_drain_receiver |
| static struct nic_operations | ns8390_operations |
| static struct pci_device_id | nepci_nics [] |
| FILE_LICENCE | ( | BSD2 | ) |
|
static |
Definition at line 131 of file ns8390.c.
References _3COM_CR, _3COM_CR_START, _3COM_DALSB, _3COM_DAMSB, _3COM_STREG, _3COM_STREG_DPRDY, ASIC_PIO, D8390_COMMAND_RD0, D8390_COMMAND_RD2, D8390_COMMAND_STA, D8390_P0_COMMAND, D8390_P0_RBCR0, D8390_P0_RBCR1, D8390_P0_RSAR0, D8390_P0_RSAR1, eth_asic_base, eth_flags, eth_nic_base, FLAG_16BIT, inb, inw, outb, src, and WD_GP2.
Referenced by eth_probe(), and ns8390_poll().
|
static |
Definition at line 178 of file ns8390.c.
References _3COM_CR, _3COM_CR_DDIR, _3COM_CR_START, _3COM_DALSB, _3COM_DAMSB, _3COM_STREG, _3COM_STREG_DPRDY, ASIC_PIO, COMPEX_RL2000_TRIES, D8390_COMMAND_RD1, D8390_COMMAND_RD2, D8390_COMMAND_STA, D8390_ISR_RDC, D8390_P0_COMMAND, D8390_P0_ISR, D8390_P0_RBCR0, D8390_P0_RBCR1, D8390_P0_RSAR0, D8390_P0_RSAR1, eth_asic_base, eth_flags, eth_nic_base, FLAG_16BIT, inb, outb, outw, printf(), src, WD_GP2, and x.
Referenced by eth_probe(), and ns8390_transmit().
|
static |
Definition at line 252 of file ns8390.c.
References D8390_COMMAND_PS0, D8390_COMMAND_PS1, D8390_COMMAND_RD2, D8390_P0_COMMAND, D8390_P0_RCR, eth_nic_base, inb, memset(), outb, and printf().
Referenced by ns8390_reset().
|
static |
Definition at line 272 of file ns8390.c.
References _3COM_CR, _3COM_CR_XSEL, D8390_COMMAND_PS0, D8390_COMMAND_PS1, D8390_COMMAND_RD2, D8390_COMMAND_STA, D8390_COMMAND_STP, D8390_P0_BOUND, D8390_P0_COMMAND, D8390_P0_DCR, D8390_P0_IMR, D8390_P0_ISR, D8390_P0_PSTART, D8390_P0_PSTOP, D8390_P0_RBCR0, D8390_P0_RBCR1, D8390_P0_RCR, D8390_P0_TCR, D8390_P0_TPSR, D8390_P1_CURR, D8390_P1_MAR0, D8390_P1_PAR0, enable_multicast(), ETH_ALEN, eth_asic_base, eth_drain_receiver, eth_flags, eth_memsize, eth_nic_base, eth_rx_start, eth_tx_start, FLAG_16BIT, FLAG_790, nic::flags, nic::node_addr, and outb.
Referenced by eth_probe(), and ns8390_disable().
|
static |
Definition at line 502 of file ns8390.c.
References bus_to_virt(), D8390_COMMAND_PS0, D8390_COMMAND_PS1, D8390_ISR_OVW, D8390_P0_BOUND, D8390_P0_COMMAND, D8390_P0_ISR, D8390_P0_RSR, D8390_P1_CURR, D8390_RSTAT_PRX, eth_asic_base, eth_drain_receiver, eth_flags, ETH_FRAME_LEN, eth_memsize, eth_nic_base, eth_pio_read(), eth_rmem, eth_rx_overrun(), eth_rx_start, ETH_ZLEN, FLAG_16BIT, FLAG_790, FLAG_PIO, inb, len, ringbuffer::len, memcpy(), next, ringbuffer::next, outb, nic::packet, nic::packetlen, printf(), ringbuffer::status, WD_LAAR, WD_LAAR_M16EN, WD_MSR, and WD_MSR_MENB.
Referenced by eth_rx_overrun().
|
static |
Definition at line 353 of file ns8390.c.
References currticks(), D8390_COMMAND_PS0, D8390_COMMAND_RD2, D8390_COMMAND_STA, D8390_COMMAND_STP, D8390_ISR_OVW, D8390_P0_COMMAND, D8390_P0_ISR, D8390_P0_RBCR0, D8390_P0_RBCR1, D8390_P0_TCR, eth_drain_receiver, eth_flags, eth_nic_base, FLAG_790, ns8390_poll(), and outb.
Referenced by ns8390_poll().
|
static |
Definition at line 403 of file ns8390.c.
References bus_to_virt(), D8390_COMMAND_PS0, D8390_COMMAND_RD2, D8390_COMMAND_STA, D8390_COMMAND_TXP, D8390_P0_COMMAND, D8390_P0_TBCR0, D8390_P0_TBCR1, D8390_P0_TPSR, ETH_ALEN, eth_asic_base, eth_bmem, eth_flags, ETH_HLEN, eth_nic_base, eth_pio_write(), eth_tx_start, ETH_ZLEN, FLAG_16BIT, FLAG_790, FLAG_PIO, inb, memcpy(), nic::node_addr, outb, type, WD_LAAR, WD_LAAR_M16EN, WD_MSR, and WD_MSR_MENB.
|
static |
Definition at line 600 of file ns8390.c.
References __unused, and ns8390_reset().
Referenced by DRIVER().
|
static |
|
static |
Definition at line 631 of file ns8390.c.
References _3COM_ASIC_OFFSET, _3COM_BCFR, _3COM_CR, _3COM_CR_EALO, _3COM_CR_RST, _3COM_CR_XSEL, _3COM_GACFR, _3COM_GACFR_MBS0, _3COM_GACFR_NIM, _3COM_GACFR_RSEL, _3COM_GACFR_TCM, _3COM_PCFR, _3COM_PCFR_C8000, _3COM_PCFR_CC000, _3COM_PCFR_D8000, _3COM_PCFR_DC000, _3COM_PCFR_PIO, _3COM_PSPR, _3COM_PSTR, _3COM_VPTR0, _3COM_VPTR1, _3COM_VPTR2, __unused, addr, base, bus_to_virt(), D8390_COMMAND_RD2, D8390_COMMAND_STP, D8390_DCR_FT1, D8390_DCR_LS, D8390_DCR_WTS, D8390_P0_COMMAND, D8390_P0_DCR, D8390_P0_PSTART, D8390_P0_PSTOP, D8390_P0_RCR, D8390_RCR_MON, D8390_TXBUF_SIZE, DBG, ETH_ALEN, eth_asic_base, eth_bmem, eth_drain_receiver, eth_flags, eth_memsize, eth_nic_base, eth_ntoa(), eth_pio_read(), eth_pio_write(), eth_rmem, eth_rx_start, eth_tx_start, eth_vendor, FLAG_16BIT, FLAG_790, FLAG_PIO, nic::flags, GENERIC_ISAPNP_VENDOR, htons, inb, nic::ioaddr, pci_device::ioaddr, nic::irqno, ISA_MAX_ADDR, MEM_16384, MEM_32768, MEM_8192, memcmp(), memset(), NE_ASIC_OFFSET, NE_RESET, nic::nic_op, nic::node_addr, ns8390_operations, ns8390_reset(), NULL, outb, printf(), test, TYPE_SMC8216C, TYPE_SMC8216T, TYPE_WD8013EP, VENDOR_3COM, VENDOR_NONE, VENDOR_NOVELL, VENDOR_WD, WD_BID, WD_DEFAULT_MEM, WD_HIGH_BASE, WD_ICR, WD_ICR_16BIT, WD_LAAR, WD_LAAR_L16EN, WD_LAAR_M16EN, WD_LAR, WD_LOW_BASE, WD_MSR, WD_MSR_MENB, WD_NIC_ADDR, and WD_SOFTCONFIG.
| PCI_DRIVER | ( | nepci_driver | , |
| nepci_nics | , | ||
| PCI_NO_CLASS | ) |
References nepci_nics.
| DRIVER | ( | "NE2000/PCI" | , |
| nic_driver | , | ||
| pci_driver | , | ||
| nepci_driver | , | ||
| nepci_probe | , | ||
| ns8390_disable | , | ||
| no_fake_bss | ) |
References no_fake_bss, and ns8390_disable().
|
static |
Definition at line 619 of file ns8390.c.
Referenced by eth_probe().
|
static |
Definition at line 1007 of file ns8390.c.
Referenced by PCI_DRIVER().