iPXE
|
Go to the source code of this file.
Data Structures | |
struct | txdesc |
struct | rxdesc |
Macros | |
#define | TX_TIME_OUT 2*TICKS_PER_SEC |
#define | EEPROM_ADDRLEN 6 |
#define | EEPROM_SIZE 32 /* 1 << EEPROM_ADDRLEN */ |
#define | EE_WRITE_CMD (5 << addr_len) |
#define | EE_READ_CMD (6 << addr_len) |
#define | EE_ERASE_CMD (7 << addr_len) |
#define | EE_SHIFT_CLK 0x02 /* EEPROM shift clock. */ |
#define | EE_CS 0x01 /* EEPROM chip select. */ |
#define | EE_DATA_WRITE 0x04 /* EEPROM chip data in. */ |
#define | EE_WRITE_0 0x01 |
#define | EE_WRITE_1 0x05 |
#define | EE_DATA_READ 0x08 /* EEPROM chip data out. */ |
#define | EE_ENB (0x4800 | EE_CS) |
#define | PHY_DATA_0 0x0 |
#define | PHY_DATA_1 0x20000 |
#define | MDCLKH 0x10000 |
#define | eeprom_delay() inl(ee_addr) |
#define | BUFLEN 1536 |
#define | NTXD 2 |
#define | NRXD 4 |
#define | txd davicom_bufs.txd |
#define | txb davicom_bufs.txb |
#define | rxd davicom_bufs.rxd |
#define | rxb davicom_bufs.rxb |
#define | PCI_VENDOR_ID_DAVICOM 0x1282 |
#define | PCI_DEVICE_ID_DM9009 0x9009 |
Enumerations | |
enum | davicom_offsets { CSR0 =0, CSR1 =0x08, CSR2 =0x10, CSR3 =0x18, CSR4 =0x20, CSR5 =0x28, CSR6 =0x30, CSR7 =0x38, CSR8 =0x40, CSR9 =0x48, CSR10 =0x50, CSR11 =0x58, CSR12 =0x60, CSR13 =0x68, CSR14 =0x70, CSR15 =0x78, CSR16 =0x80, CSR20 =0xA0 } |
Functions | |
FILE_LICENCE (GPL_ANY) | |
static void | whereami (const char *str) |
static int | read_eeprom (unsigned long ioaddr, int location, int addr_len) |
static int | davicom_probe (struct nic *nic, struct pci_device *pci) |
static void | davicom_init_chain (struct nic *nic) |
static void | davicom_reset (struct nic *nic) |
static void | davicom_transmit (struct nic *nic, const char *d, unsigned int t, unsigned int s, const char *p) |
static int | davicom_poll (struct nic *nic, int retrieve) |
static void | davicom_disable (struct nic *nic) |
static void | davicom_wait (unsigned int nticks) |
static int | phy_read (int) |
static void | phy_write (int, u16) |
static void | phy_write_1bit (u32, u32) |
static int | phy_read_1bit (u32) |
static void | davicom_media_chk (struct nic *) |
static void | HPNA_process (void) |
static void | davicom_media_chk (struct nic *nic __unused) |
static void | davicom_irq (struct nic *nic __unused, irq_action_t action __unused) |
PCI_DRIVER (davicom_driver, davicom_nics, PCI_NO_CLASS) | |
DRIVER ("DAVICOM", nic_driver, pci_driver, davicom_driver, davicom_probe, davicom_disable) | |
Variables | |
static unsigned char | ee_data [EEPROM_SIZE] |
static struct nic_operations | davicom_operations |
static unsigned short | vendor |
static unsigned short | dev_id |
static unsigned long | ioaddr |
struct { | |
struct txdesc txd [NTXD] | |
unsigned char txb [BUFLEN] | |
struct rxdesc rxd [NRXD] | |
unsigned char rxb [NRXD *BUFLEN] | |
} | __shared |
static int | rxd_tail |
static int | TxPtr |
static struct pci_device_id | davicom_nics [] |
#define TX_TIME_OUT 2*TICKS_PER_SEC |
#define EEPROM_SIZE 32 /* 1 << EEPROM_ADDRLEN */ |
#define PCI_VENDOR_ID_DAVICOM 0x1282 |
#define PCI_DEVICE_ID_DM9009 0x9009 |
enum davicom_offsets |
Enumerator | |
---|---|
CSR0 | |
CSR1 | |
CSR2 | |
CSR3 | |
CSR4 | |
CSR5 | |
CSR6 | |
CSR7 | |
CSR8 | |
CSR9 | |
CSR10 | |
CSR11 | |
CSR12 | |
CSR13 | |
CSR14 | |
CSR15 | |
CSR16 | |
CSR20 |
Definition at line 54 of file davicom.c.
FILE_LICENCE | ( | GPL_ANY | ) |
|
inlinestatic |
Definition at line 174 of file davicom.c.
References DBGP.
Referenced by davicom_disable(), davicom_poll(), davicom_probe(), davicom_reset(), davicom_transmit(), phy_read(), phy_read_1bit(), phy_write(), phy_write_1bit(), and read_eeprom().
|
static |
Definition at line 377 of file davicom.c.
References CSR9, EE_CS, EE_DATA_READ, EE_DATA_WRITE, EE_ENB, EE_READ_CMD, EE_SHIFT_CLK, eeprom_delay, inl(), ioaddr, outl, read_cmd, retval, and whereami().
Referenced by davicom_probe(), and epic100_probe().
|
static |
Definition at line 640 of file davicom.c.
References CSR6, CSR8, davicom_operations, davicom_reset(), DBG, dev_id, pci_device::device, ee_data, EEPROM_ADDRLEN, ETH_ALEN, eth_ntoa(), inl(), nic::ioaddr, ioaddr, pci_device::ioaddr, nic::irqno, le16_to_cpu, nic::nic_op, nic::node_addr, outl, pci_write_config_dword(), read_eeprom(), vendor, pci_device::vendor, and whereami().
|
static |
Definition at line 416 of file davicom.c.
References BUFLEN, nic::node_addr, NRXD, NTXD, rxb, rxd, rxd_tail, txb, txd, TxPtr, and virt_to_bus().
Referenced by davicom_reset().
|
static |
Definition at line 463 of file davicom.c.
References CSR0, CSR1, CSR2, CSR3, CSR4, CSR6, currticks(), davicom_init_chain(), davicom_media_chk(), davicom_wait(), DBG, DBG_MORE, inl(), ioaddr, NTXD, outl, rxd, status, TICKS_PER_SEC, TX_TIME_OUT, txd, TxPtr, virt_to_bus(), and whereami().
Referenced by davicom_disable(), and davicom_probe().
|
static |
Definition at line 525 of file davicom.c.
References CSR1, currticks(), DBG, ETH_ALEN, ETH_HLEN, ioaddr, memcpy(), nic::node_addr, NTXD, outl, status, TX_TIME_OUT, txb, txd, TxPtr, and whereami().
|
static |
Definition at line 566 of file davicom.c.
References BUFLEN, memcpy(), NRXD, nic::packet, nic::packetlen, rxb, rxd, rxd_tail, status, and whereami().
|
static |
Definition at line 604 of file davicom.c.
References CSR6, CSR7, CSR8, davicom_reset(), inl(), ioaddr, outl, and whereami().
|
static |
|
static |
Definition at line 194 of file davicom.c.
References CSR9, ioaddr, PHY_DATA_0, PHY_DATA_1, phy_read_1bit(), phy_write_1bit(), and whereami().
Referenced by davicom_media_chk(), and HPNA_process().
|
static |
Definition at line 239 of file davicom.c.
References CSR9, ioaddr, PHY_DATA_0, PHY_DATA_1, phy_write_1bit(), and whereami().
Referenced by davicom_media_chk(), and HPNA_process().
Definition at line 280 of file davicom.c.
References eeprom_delay, MDCLKH, outl, and whereami().
Referenced by phy_read(), and phy_write().
|
static |
Definition at line 294 of file davicom.c.
References eeprom_delay, inl(), outl, and whereami().
Referenced by phy_read().
|
static |
Referenced by davicom_reset().
|
static |
Definition at line 314 of file davicom.c.
References phy_read(), and phy_write().
Referenced by davicom_media_chk().
Definition at line 336 of file davicom.c.
References CSR6, currticks(), dev_id, HPNA_process(), ioaddr, outl, PCI_DEVICE_ID_DM9009, PCI_VENDOR_ID_DAVICOM, phy_read(), phy_write(), TICKS_PER_SEC, and vendor.
|
static |
PCI_DRIVER | ( | davicom_driver | , |
davicom_nics | , | ||
PCI_NO_CLASS | |||
) |
DRIVER | ( | "DAVICOM" | , |
nic_driver | , | ||
pci_driver | , | ||
davicom_driver | , | ||
davicom_probe | , | ||
davicom_disable | |||
) |
|
static |
Definition at line 67 of file davicom.c.
Referenced by davicom_probe(), parse_eeprom(), sundance_probe(), and tulip_probe().
|
static |
Definition at line 125 of file davicom.c.
Referenced by davicom_probe().
|
static |
Definition at line 128 of file davicom.c.
Referenced by arbel_reset(), davicom_media_chk(), davicom_probe(), hermon_reset(), isa_id_string(), rsn_get_desc(), ucode_describe(), ucode_exec(), ucode_update_all(), and ucode_vendor_name().
|
static |
Definition at line 128 of file davicom.c.
Referenced by davicom_media_chk(), and davicom_probe().
|
static |
Definition at line 129 of file davicom.c.
Referenced by a3c90x_internal_IssueCommand(), corkscrew_found_device(), corkscrew_probe1(), cs89x0_probe_addr(), davicom_disable(), davicom_media_chk(), davicom_probe(), davicom_reset(), davicom_transmit(), dm9132_id_table(), dmfe_descriptor_init(), dmfe_init_dm910x(), eepro_probe1(), eeprom_rdy(), eeprom_read(), forcedeth_link_status(), forcedeth_map_regs(), forcedeth_open(), forcedeth_poll(), forcedeth_probe(), forcedeth_transmit(), get_e(), ifec_mdio_read(), ifec_mdio_write(), ifec_net_close(), ifec_net_irq(), ifec_net_transmit(), ifec_reset(), ifec_scb_cmd(), ifec_tx_wake(), mdio_read(), mdio_read_latched(), mdio_write(), mii_rw(), ne_probe1(), nv_disable_hw_interrupts(), nv_enable_hw_interrupts(), nv_init_rings(), nv_mac_reset(), nv_mgmt_acquire_sema(), nv_mgmt_get_version(), nv_mgmt_release_sema(), nv_setup_mac_addr(), nv_setup_phy(), nv_start_rx(), nv_start_tx(), nv_stop_rx(), nv_stop_tx(), nv_txrx_gate(), nv_txrx_reset(), nv_update_linkspeed(), nv_update_pause(), pci_push(), pcnet32_chip_detect(), pcnet32_close(), pcnet32_hw_start(), pcnet32_irq_disable(), pcnet32_irq_enable(), pcnet32_mdio_read(), pcnet32_mdio_write(), pcnet32_open(), pcnet32_poll(), pcnet32_probe(), pcnet32_remove(), pcnet32_set_ops(), pcnet32_setup_if_duplex(), pcnet32_setup_mac_addr(), pcnet32_setup_probe_phy(), pcnet32_transmit(), phy_init(), phy_read(), phy_read_1bit(), phy_write(), phy_write_1bit(), read_eeprom(), read_srom_word(), reg_delay(), sis190_asic_down(), sis190_default_phy(), sis190_down(), sis190_get_mac_addr_from_eeprom(), sis190_hw_start(), sis190_init_board(), sis190_init_phy(), sis190_init_rxfilter(), sis190_irq(), sis190_mii_probe(), sis190_mii_probe_88e1111_fixup(), sis190_phy_task(), sis190_poll(), sis190_remove(), sis190_set_rx_mode(), sis190_set_speed_auto(), sis190_soft_reset(), sis190_transmit(), smc9000_probe_addr(), smc_detect_phy(), smc_phy_configure(), smc_read_phy_register(), smc_reset(), smc_write_phy_register(), t509_activate(), t509_deactivate_and_reset_tag(), update_cr6(), virtnet_open_legacy(), virtnet_probe_legacy(), vp_del_vq(), vp_find_vq(), vp_get(), vp_get_features(), vp_get_isr(), vp_get_status(), vp_notify(), vp_reset(), vp_set_features(), vp_set_status(), and vring_kick().
struct { ... } __shared |
|
static |
Definition at line 147 of file davicom.c.
Referenced by davicom_init_chain(), and davicom_poll().
|
static |
Definition at line 148 of file davicom.c.
Referenced by davicom_init_chain(), davicom_reset(), and davicom_transmit().
|
static |