• Home
  • Raw
  • Download

Lines Matching refs:ei_local

97 #define ei_reset_8390 (ei_local->reset_8390)
98 #define ei_block_output (ei_local->block_output)
99 #define ei_block_input (ei_local->block_input)
100 #define ei_get_8390_hdr (ei_local->get_8390_hdr)
204 struct ei_device *ei_local = netdev_priv(dev); in __ei_open() local
214 spin_lock_irqsave(&ei_local->page_lock, flags); in __ei_open()
219 spin_unlock_irqrestore(&ei_local->page_lock, flags); in __ei_open()
220 ei_local->irqlock = 0; in __ei_open()
232 struct ei_device *ei_local = netdev_priv(dev); in __ei_close() local
239 spin_lock_irqsave(&ei_local->page_lock, flags); in __ei_close()
241 spin_unlock_irqrestore(&ei_local->page_lock, flags); in __ei_close()
257 struct ei_device *ei_local = netdev_priv(dev); in __ei_tx_timeout() local
263 spin_lock_irqsave(&ei_local->page_lock, flags); in __ei_tx_timeout()
266 spin_unlock_irqrestore(&ei_local->page_lock, flags); in __ei_tx_timeout()
275 ei_local->interface_num ^= 1; /* Try a different xcvr. */ in __ei_tx_timeout()
281 spin_lock(&ei_local->page_lock); in __ei_tx_timeout()
287 spin_unlock(&ei_local->page_lock); in __ei_tx_timeout()
304 struct ei_device *ei_local = netdev_priv(dev); in __ei_start_xmit() local
322 spin_lock_irqsave(&ei_local->page_lock, flags); in __ei_start_xmit()
324 spin_unlock_irqrestore(&ei_local->page_lock, flags); in __ei_start_xmit()
333 spin_lock(&ei_local->page_lock); in __ei_start_xmit()
335 ei_local->irqlock = 1; in __ei_start_xmit()
345 if (ei_local->tx1 == 0) { in __ei_start_xmit()
346 output_page = ei_local->tx_start_page; in __ei_start_xmit()
347 ei_local->tx1 = send_length; in __ei_start_xmit()
348 if ((netif_msg_tx_queued(ei_local)) && in __ei_start_xmit()
349 ei_local->tx2 > 0) in __ei_start_xmit()
352 ei_local->tx2, ei_local->lasttx, ei_local->txing); in __ei_start_xmit()
353 } else if (ei_local->tx2 == 0) { in __ei_start_xmit()
354 output_page = ei_local->tx_start_page + TX_PAGES/2; in __ei_start_xmit()
355 ei_local->tx2 = send_length; in __ei_start_xmit()
356 if ((netif_msg_tx_queued(ei_local)) && in __ei_start_xmit()
357 ei_local->tx1 > 0) in __ei_start_xmit()
360 ei_local->tx1, ei_local->lasttx, ei_local->txing); in __ei_start_xmit()
362 netif_dbg(ei_local, tx_err, dev, in __ei_start_xmit()
364 ei_local->tx1, ei_local->tx2, ei_local->lasttx); in __ei_start_xmit()
365 ei_local->irqlock = 0; in __ei_start_xmit()
368 spin_unlock(&ei_local->page_lock); in __ei_start_xmit()
382 if (!ei_local->txing) { in __ei_start_xmit()
383 ei_local->txing = 1; in __ei_start_xmit()
385 if (output_page == ei_local->tx_start_page) { in __ei_start_xmit()
386 ei_local->tx1 = -1; in __ei_start_xmit()
387 ei_local->lasttx = -1; in __ei_start_xmit()
389 ei_local->tx2 = -1; in __ei_start_xmit()
390 ei_local->lasttx = -2; in __ei_start_xmit()
393 ei_local->txqueue++; in __ei_start_xmit()
395 if (ei_local->tx1 && ei_local->tx2) in __ei_start_xmit()
401 ei_local->irqlock = 0; in __ei_start_xmit()
404 spin_unlock(&ei_local->page_lock); in __ei_start_xmit()
430 struct ei_device *ei_local = netdev_priv(dev); in __ei_interrupt() local
436 spin_lock(&ei_local->page_lock); in __ei_interrupt()
438 if (ei_local->irqlock) { in __ei_interrupt()
446 spin_unlock(&ei_local->page_lock); in __ei_interrupt()
452 netif_dbg(ei_local, intr, dev, "interrupt(isr=%#2.2x)\n", in __ei_interrupt()
491 if (interrupts && (netif_msg_intr(ei_local))) { in __ei_interrupt()
504 spin_unlock(&ei_local->page_lock); in __ei_interrupt()
535 struct ei_device *ei_local __maybe_unused = netdev_priv(dev); in ei_tx_err()
580 struct ei_device *ei_local = netdev_priv(dev); in ei_tx_intr() local
589 ei_local->txqueue--; in ei_tx_intr()
591 if (ei_local->tx1 < 0) { in ei_tx_intr()
592 if (ei_local->lasttx != 1 && ei_local->lasttx != -1) in ei_tx_intr()
594 ei_local->name, ei_local->lasttx, ei_local->tx1); in ei_tx_intr()
595 ei_local->tx1 = 0; in ei_tx_intr()
596 if (ei_local->tx2 > 0) { in ei_tx_intr()
597 ei_local->txing = 1; in ei_tx_intr()
598 NS8390_trigger_send(dev, ei_local->tx2, ei_local->tx_start_page + 6); in ei_tx_intr()
600 ei_local->tx2 = -1, in ei_tx_intr()
601 ei_local->lasttx = 2; in ei_tx_intr()
603 ei_local->lasttx = 20, ei_local->txing = 0; in ei_tx_intr()
604 } else if (ei_local->tx2 < 0) { in ei_tx_intr()
605 if (ei_local->lasttx != 2 && ei_local->lasttx != -2) in ei_tx_intr()
607 ei_local->name, ei_local->lasttx, ei_local->tx2); in ei_tx_intr()
608 ei_local->tx2 = 0; in ei_tx_intr()
609 if (ei_local->tx1 > 0) { in ei_tx_intr()
610 ei_local->txing = 1; in ei_tx_intr()
611 NS8390_trigger_send(dev, ei_local->tx1, ei_local->tx_start_page); in ei_tx_intr()
613 ei_local->tx1 = -1; in ei_tx_intr()
614 ei_local->lasttx = 1; in ei_tx_intr()
616 ei_local->lasttx = 10, ei_local->txing = 0; in ei_tx_intr()
656 struct ei_device *ei_local = netdev_priv(dev); in ei_receive() local
661 int num_rx_pages = ei_local->stop_page-ei_local->rx_start_page; in ei_receive()
673 if (this_frame >= ei_local->stop_page) in ei_receive()
674 this_frame = ei_local->rx_start_page; in ei_receive()
682 if ((netif_msg_rx_status(ei_local)) && in ei_receive()
683 this_frame != ei_local->current_page && in ei_receive()
687 this_frame, ei_local->current_page); in ei_receive()
707 ei_local->current_page = rxing_page; in ei_receive()
708 ei_outb(ei_local->current_page-1, e8390_base+EN0_BOUNDARY); in ei_receive()
714 netif_dbg(ei_local, rx_status, dev, in ei_receive()
725 netif_err(ei_local, rx_err, dev, in ei_receive()
743 netif_err(ei_local, rx_err, dev, in ei_receive()
755 if (next_frame >= ei_local->stop_page) { in ei_receive()
758 next_frame = ei_local->rx_start_page; in ei_receive()
760 ei_local->current_page = next_frame; in ei_receive()
787 struct ei_device *ei_local __maybe_unused = netdev_priv(dev); in ei_rx_overrun()
796 netif_dbg(ei_local, rx_err, dev, "Receiver overrun\n"); in ei_rx_overrun()
853 struct ei_device *ei_local = netdev_priv(dev); in __ei_get_stats() local
860 spin_lock_irqsave(&ei_local->page_lock, flags); in __ei_get_stats()
865 spin_unlock_irqrestore(&ei_local->page_lock, flags); in __ei_get_stats()
901 struct ei_device *ei_local = netdev_priv(dev); in do_set_multicast_list() local
904 memset(ei_local->mcfilter, 0, 8); in do_set_multicast_list()
906 make_mc_bits(ei_local->mcfilter, dev); in do_set_multicast_list()
908 memset(ei_local->mcfilter, 0xFF, 8); /* mcast set to accept-all */ in do_set_multicast_list()
927 ei_outb_p(ei_local->mcfilter[i], e8390_base + EN1_MULT_SHIFT(i)); in do_set_multicast_list()
929 if (ei_inb_p(e8390_base + EN1_MULT_SHIFT(i)) != ei_local->mcfilter[i]) in do_set_multicast_list()
953 struct ei_device *ei_local = netdev_priv(dev); in __ei_set_multicast_list() local
955 spin_lock_irqsave(&ei_local->page_lock, flags); in __ei_set_multicast_list()
957 spin_unlock_irqrestore(&ei_local->page_lock, flags); in __ei_set_multicast_list()
970 struct ei_device *ei_local = netdev_priv(dev); in ethdev_setup() local
977 spin_lock_init(&ei_local->page_lock); in ethdev_setup()
1009 struct ei_device *ei_local = netdev_priv(dev); in __NS8390_init() local
1011 int endcfg = ei_local->word16 in __NS8390_init()
1012 ? (0x48 | ENDCFG_WTS | (ei_local->bigendian ? ENDCFG_BOS : 0)) in __NS8390_init()
1027 ei_outb_p(ei_local->tx_start_page, e8390_base + EN0_TPSR); in __NS8390_init()
1028 ei_local->tx1 = ei_local->tx2 = 0; in __NS8390_init()
1029 ei_outb_p(ei_local->rx_start_page, e8390_base + EN0_STARTPG); in __NS8390_init()
1030 ei_outb_p(ei_local->stop_page-1, e8390_base + EN0_BOUNDARY); /* 3c503 says 0x3f,NS0x26*/ in __NS8390_init()
1031 ei_local->current_page = ei_local->rx_start_page; /* assert boundary+1 */ in __NS8390_init()
1032 ei_outb_p(ei_local->stop_page, e8390_base + EN0_STOPPG); in __NS8390_init()
1042 if ((netif_msg_probe(ei_local)) && in __NS8390_init()
1048 ei_outb_p(ei_local->rx_start_page, e8390_base + EN1_CURPAG); in __NS8390_init()
1051 ei_local->tx1 = ei_local->tx2 = 0; in __NS8390_init()
1052 ei_local->txing = 0; in __NS8390_init()
1072 struct ei_device *ei_local __attribute((unused)) = netdev_priv(dev); in NS8390_trigger_send()