Lines Matching full:nic
25 #include "nic.h"
218 static void ns8390_reset(struct nic *nic)
256 outb(nic->node_addr[i], eth_nic_base+D8390_P1_PAR0+i);
279 t503_output = (nic->flags) ? 0 : _3COM_CR_XSEL;
284 static int ns8390_poll(struct nic *nic);
290 static void eth_rx_overrun(struct nic *nic)
315 /* enter loopback mode and restart NIC */
327 while (ns8390_poll(nic))
341 struct nic *nic,
350 memcpy((char *)eth_bmem+ETH_ALEN, nic->node_addr, ETH_ALEN); /* src */
371 memcpy((char *)eth_bmem+ETH_ALEN, nic->node_addr, ETH_ALEN); /* src */
395 eth_pio_write(nic->node_addr, (eth_tx_start<<8)+ETH_ALEN, ETH_ALEN);
431 static int ns8390_poll(struct nic *nic)
443 eth_rx_overrun(nic);
481 p = nic->packet;
482 nic->packetlen = len; /* available to caller */
522 static void ns8390_disable(struct nic *nic)
530 struct nic *eth_probe(struct nic *nic, unsigned short *probe_addrs,
533 struct nic *eth_probe(struct nic *nic, unsigned short *probe_addrs)
567 printf("Unknown WD/SMC NIC type %hhX\n", c);
593 nic->node_addr[i] = inb(i+eth_asic_base+WD_LAR);
596 brd->name, eth_asic_base, eth_bmem, nic->node_addr);
703 /* Reset NIC and ASIC */
717 nic->node_addr[i] = inb(eth_nic_base+i);
719 printf(", %s, addr %!\n", nic->flags ? "AUI" : "internal xcvr",
720 nic->node_addr);
811 nic->node_addr[i] = romdata[i + ((eth_flags & FLAG_16BIT) ? i : 0)];
815 nic->node_addr);
822 ns8390_reset(nic);
823 nic->reset = ns8390_reset;
824 nic->poll = ns8390_poll;
825 nic->transmit = ns8390_transmit;
826 nic->disable = ns8390_disable;
827 return(nic);