Lines Matching refs:np

670 	struct netdev_private *np = netdev_priv(to_net_dev(dev));  in natsemi_show_dspcfg_workaround()  local
672 return sprintf(buf, "%s\n", np->dspcfg_workaround ? "on" : "off"); in natsemi_show_dspcfg_workaround()
679 struct netdev_private *np = netdev_priv(to_net_dev(dev)); in natsemi_set_dspcfg_workaround() local
692 spin_lock_irqsave(&np->lock, flags); in natsemi_set_dspcfg_workaround()
694 np->dspcfg_workaround = new_setting; in natsemi_set_dspcfg_workaround()
696 spin_unlock_irqrestore(&np->lock, flags); in natsemi_set_dspcfg_workaround()
703 struct netdev_private *np = netdev_priv(dev); in ns_ioaddr() local
705 return np->ioaddr; in ns_ioaddr()
722 struct netdev_private *np = netdev_priv(dev); in move_int_phy() local
738 if (target == np->phy_addr_external) in move_int_phy()
747 struct netdev_private *np = netdev_priv(dev); in natsemi_init_media() local
750 if (np->ignore_phy) in natsemi_init_media()
757 np->speed = (tmp & BMCR_SPEED100)? SPEED_100 : SPEED_10; in natsemi_init_media()
758 np->duplex = (tmp & BMCR_FULLDPLX)? DUPLEX_FULL : DUPLEX_HALF; in natsemi_init_media()
759 np->autoneg = (tmp & BMCR_ANENABLE)? AUTONEG_ENABLE: AUTONEG_DISABLE; in natsemi_init_media()
760 np->advertising= mdio_read(dev, MII_ADVERTISE); in natsemi_init_media()
762 if ((np->advertising & ADVERTISE_ALL) != ADVERTISE_ALL && in natsemi_init_media()
763 netif_msg_probe(np)) { in natsemi_init_media()
766 pci_name(np->pci_dev), in natsemi_init_media()
769 (np->advertising & in natsemi_init_media()
772 (np->advertising & in natsemi_init_media()
776 if (netif_msg_probe(np)) in natsemi_init_media()
779 pci_name(np->pci_dev), mdio_read(dev, MII_BMSR), in natsemi_init_media()
780 np->advertising); in natsemi_init_media()
803 struct netdev_private *np; in natsemi_probe1() local
865 np = netdev_priv(dev); in natsemi_probe1()
866 np->ioaddr = ioaddr; in natsemi_probe1()
868 netif_napi_add(dev, &np->napi, natsemi_poll, 64); in natsemi_probe1()
869 np->dev = dev; in natsemi_probe1()
871 np->pci_dev = pdev; in natsemi_probe1()
873 np->iosize = iosize; in natsemi_probe1()
874 spin_lock_init(&np->lock); in natsemi_probe1()
875 np->msg_enable = (debug >= 0) ? (1<<debug)-1 : NATSEMI_DEF_MSG; in natsemi_probe1()
876 np->hands_off = 0; in natsemi_probe1()
877 np->intr_status = 0; in natsemi_probe1()
878 np->eeprom_size = natsemi_pci_info[chip_idx].eeprom_size; in natsemi_probe1()
880 np->ignore_phy = 1; in natsemi_probe1()
882 np->ignore_phy = 0; in natsemi_probe1()
883 np->dspcfg_workaround = dspcfg_workaround; in natsemi_probe1()
894 if (np->ignore_phy || readl(ioaddr + ChipConfig) & CfgExtPhy) in natsemi_probe1()
903 np->phy_addr_external = find_mii(dev); in natsemi_probe1()
906 if (!np->ignore_phy && np->phy_addr_external == PHY_ADDR_NONE) { in natsemi_probe1()
908 np->phy_addr_external = PHY_ADDR_INTERNAL; in natsemi_probe1()
911 np->phy_addr_external = PHY_ADDR_INTERNAL; in natsemi_probe1()
918 np->full_duplex = 1; in natsemi_probe1()
922 pci_name(np->pci_dev), option & 15); in natsemi_probe1()
925 np->full_duplex = 1; in natsemi_probe1()
938 np->srr = readl(ioaddr + SiliconRev); in natsemi_probe1()
939 if (netif_msg_hw(np)) in natsemi_probe1()
941 pci_name(np->pci_dev), np->srr); in natsemi_probe1()
950 if (netif_msg_drv(np)) { in natsemi_probe1()
954 (unsigned long long)iostart, pci_name(np->pci_dev), in natsemi_probe1()
958 else if (np->ignore_phy) in natsemi_probe1()
961 printk(", port MII, phy ad %d.\n", np->phy_addr_external); in natsemi_probe1()
1115 struct netdev_private *np = netdev_priv(dev); in mdio_read() local
1125 return miiport_read(dev, np->phy_addr_external, reg); in mdio_read()
1130 struct netdev_private *np = netdev_priv(dev); in mdio_write() local
1137 miiport_write(dev, np->phy_addr_external, reg, data); in mdio_write()
1142 struct netdev_private *np = netdev_priv(dev); in init_phy_fixup() local
1150 if (np->autoneg == AUTONEG_ENABLE) { in init_phy_fixup()
1153 np->advertising != mdio_read(dev, MII_ADVERTISE)) in init_phy_fixup()
1157 mdio_write(dev, MII_ADVERTISE, np->advertising); in init_phy_fixup()
1162 if (np->speed == SPEED_100) in init_phy_fixup()
1164 if (np->duplex == DUPLEX_FULL) in init_phy_fixup()
1179 np->mii = (mdio_read(dev, MII_PHYSID1) << 16) in init_phy_fixup()
1183 switch (np->mii) { in init_phy_fixup()
1218 np->dspcfg = (np->srr <= SRR_DP83815_C)? in init_phy_fixup()
1220 writew(np->dspcfg, ioaddr + DSPCFG); in init_phy_fixup()
1229 if (np->dspcfg == dspcfg) in init_phy_fixup()
1233 if (netif_msg_link(np)) { in init_phy_fixup()
1255 struct netdev_private *np = netdev_priv(dev); in switch_port_external() local
1263 if (netif_msg_link(np)) { in switch_port_external()
1280 move_int_phy(dev, np->phy_addr_external); in switch_port_external()
1288 struct netdev_private *np = netdev_priv(dev); in switch_port_internal() local
1298 if (netif_msg_link(np)) { in switch_port_internal()
1319 if (i==NATSEMI_HW_TIMEOUT && netif_msg_link(np)) { in switch_port_internal()
1340 struct netdev_private *np = netdev_priv(dev); in find_mii() local
1359 np->mii = (mdio_read(dev, MII_PHYSID1) << 16) in find_mii()
1361 if (netif_msg_probe(np)) { in find_mii()
1363 pci_name(np->pci_dev), np->mii, i); in find_mii()
1389 struct netdev_private *np = netdev_priv(dev); in natsemi_reset() local
1427 } else if (netif_msg_hw(np)) { in natsemi_reset()
1461 struct netdev_private *np = netdev_priv(dev); in reset_rx() local
1464 np->intr_status &= ~RxResetDone; in reset_rx()
1469 np->intr_status |= readl(ioaddr + IntrStatus); in reset_rx()
1470 if (np->intr_status & RxResetDone) in reset_rx()
1477 } else if (netif_msg_hw(np)) { in reset_rx()
1485 struct netdev_private *np = netdev_priv(dev); in natsemi_reload_eeprom() local
1497 pci_name(np->pci_dev), i*50); in natsemi_reload_eeprom()
1498 } else if (netif_msg_hw(np)) { in natsemi_reload_eeprom()
1500 pci_name(np->pci_dev), i*50); in natsemi_reload_eeprom()
1507 struct netdev_private *np = netdev_priv(dev); in natsemi_stop_rxtx() local
1519 } else if (netif_msg_hw(np)) { in natsemi_stop_rxtx()
1527 struct netdev_private *np = netdev_priv(dev); in netdev_open() local
1529 const int irq = np->pci_dev->irq; in netdev_open()
1538 if (netif_msg_ifup(np)) in netdev_open()
1546 napi_enable(&np->napi); in netdev_open()
1549 spin_lock_irq(&np->lock); in netdev_open()
1558 writel(np->cur_rx_mode, ioaddr + RxFilterAddr); in netdev_open()
1559 spin_unlock_irq(&np->lock); in netdev_open()
1563 if (netif_msg_ifup(np)) in netdev_open()
1568 init_timer(&np->timer); in netdev_open()
1569 np->timer.expires = round_jiffies(jiffies + NATSEMI_TIMER_FREQ); in netdev_open()
1570 np->timer.data = (unsigned long)dev; in netdev_open()
1571 np->timer.function = netdev_timer; /* timer handler */ in netdev_open()
1572 add_timer(&np->timer); in netdev_open()
1579 struct netdev_private *np = netdev_priv(dev); in do_cable_magic() local
1585 if (np->srr >= SRR_DP83816_A5) in do_cable_magic()
1608 np = netdev_priv(dev); in do_cable_magic()
1614 np->dspcfg = data | DSPCFG_LOCK; in do_cable_magic()
1615 writew(np->dspcfg, ioaddr + DSPCFG); in do_cable_magic()
1624 struct netdev_private *np = netdev_priv(dev); in undo_cable_magic() local
1630 if (np->srr >= SRR_DP83816_A5) in undo_cable_magic()
1636 np->dspcfg = data & ~DSPCFG_LOCK; in undo_cable_magic()
1637 writew(np->dspcfg, ioaddr + DSPCFG); in undo_cable_magic()
1643 struct netdev_private *np = netdev_priv(dev); in check_link() local
1645 int duplex = np->duplex; in check_link()
1649 if (np->ignore_phy) in check_link()
1661 if (netif_msg_link(np)) in check_link()
1670 if (netif_msg_link(np)) in check_link()
1676 duplex = np->full_duplex; in check_link()
1680 np->advertising & mdio_read(dev, MII_LPA)); in check_link()
1689 if (duplex ^ !!(np->rx_config & RxAcceptTx)) { in check_link()
1690 if (netif_msg_link(np)) in check_link()
1696 np->rx_config |= RxAcceptTx; in check_link()
1697 np->tx_config |= TxCarrierIgn | TxHeartIgn; in check_link()
1699 np->rx_config &= ~RxAcceptTx; in check_link()
1700 np->tx_config &= ~(TxCarrierIgn | TxHeartIgn); in check_link()
1702 writel(np->tx_config, ioaddr + TxConfig); in check_link()
1703 writel(np->rx_config, ioaddr + RxConfig); in check_link()
1709 struct netdev_private *np = netdev_priv(dev); in init_registers() local
1717 writel(np->ring_dma, ioaddr + RxRingPtr); in init_registers()
1718 writel(np->ring_dma + RX_RING_SIZE * sizeof(struct netdev_desc), in init_registers()
1735 np->tx_config = TxAutoPad | TxCollRetry | TxMxdma_256 | in init_registers()
1737 writel(np->tx_config, ioaddr + TxConfig); in init_registers()
1742 np->rx_config = RxMxdma_256 | RX_DRTH_VAL; in init_registers()
1744 if (np->rx_buf_sz > NATSEMI_LONGPKT) in init_registers()
1745 np->rx_config |= RxAcceptLong; in init_registers()
1747 writel(np->rx_config, ioaddr + RxConfig); in init_registers()
1755 np->SavedClkRun = readl(ioaddr + ClkRun); in init_registers()
1756 writel(np->SavedClkRun & ~PMEEnable, ioaddr + ClkRun); in init_registers()
1757 if (np->SavedClkRun & PMEStatus && netif_msg_wol(np)) { in init_registers()
1789 struct netdev_private *np = netdev_priv(dev); in netdev_timer() local
1792 const int irq = np->pci_dev->irq; in netdev_timer()
1794 if (netif_msg_timer(np)) { in netdev_timer()
1805 spin_lock_irq(&np->lock); in netdev_timer()
1810 if (np->dspcfg_workaround && dspcfg != np->dspcfg) { in netdev_timer()
1812 spin_unlock_irq(&np->lock); in netdev_timer()
1813 if (netif_msg_drv(np)) in netdev_timer()
1817 spin_lock_irq(&np->lock); in netdev_timer()
1822 spin_unlock_irq(&np->lock); in netdev_timer()
1827 spin_unlock_irq(&np->lock); in netdev_timer()
1832 spin_unlock_irq(&np->lock); in netdev_timer()
1835 spin_lock_irq(&np->lock); in netdev_timer()
1837 spin_unlock_irq(&np->lock); in netdev_timer()
1839 if (np->oom) { in netdev_timer()
1841 np->oom = 0; in netdev_timer()
1844 if (!np->oom) { in netdev_timer()
1852 mod_timer(&np->timer, round_jiffies(jiffies + next_tick)); in netdev_timer()
1854 mod_timer(&np->timer, jiffies + next_tick); in netdev_timer()
1859 struct netdev_private *np = netdev_priv(dev); in dump_ring() local
1861 if (netif_msg_pktdata(np)) { in dump_ring()
1863 printk(KERN_DEBUG " Tx ring at %p:\n", np->tx_ring); in dump_ring()
1866 i, np->tx_ring[i].next_desc, in dump_ring()
1867 np->tx_ring[i].cmd_status, in dump_ring()
1868 np->tx_ring[i].addr); in dump_ring()
1870 printk(KERN_DEBUG " Rx ring %p:\n", np->rx_ring); in dump_ring()
1873 i, np->rx_ring[i].next_desc, in dump_ring()
1874 np->rx_ring[i].cmd_status, in dump_ring()
1875 np->rx_ring[i].addr); in dump_ring()
1882 struct netdev_private *np = netdev_priv(dev); in ns_tx_timeout() local
1884 const int irq = np->pci_dev->irq; in ns_tx_timeout()
1887 spin_lock_irq(&np->lock); in ns_tx_timeout()
1888 if (!np->hands_off) { in ns_tx_timeout()
1889 if (netif_msg_tx_err(np)) in ns_tx_timeout()
1904 spin_unlock_irq(&np->lock); in ns_tx_timeout()
1914 struct netdev_private *np = netdev_priv(dev); in alloc_ring() local
1915 np->rx_ring = pci_alloc_consistent(np->pci_dev, in alloc_ring()
1917 &np->ring_dma); in alloc_ring()
1918 if (!np->rx_ring) in alloc_ring()
1920 np->tx_ring = &np->rx_ring[RX_RING_SIZE]; in alloc_ring()
1926 struct netdev_private *np = netdev_priv(dev); in refill_rx() local
1929 for (; np->cur_rx - np->dirty_rx > 0; np->dirty_rx++) { in refill_rx()
1931 int entry = np->dirty_rx % RX_RING_SIZE; in refill_rx()
1932 if (np->rx_skbuff[entry] == NULL) { in refill_rx()
1933 unsigned int buflen = np->rx_buf_sz+NATSEMI_PADDING; in refill_rx()
1935 np->rx_skbuff[entry] = skb; in refill_rx()
1938 np->rx_dma[entry] = pci_map_single(np->pci_dev, in refill_rx()
1940 np->rx_ring[entry].addr = cpu_to_le32(np->rx_dma[entry]); in refill_rx()
1942 np->rx_ring[entry].cmd_status = cpu_to_le32(np->rx_buf_sz); in refill_rx()
1944 if (np->cur_rx - np->dirty_rx == RX_RING_SIZE) { in refill_rx()
1945 if (netif_msg_rx_err(np)) in refill_rx()
1947 np->oom = 1; in refill_rx()
1953 struct netdev_private *np = netdev_priv(dev); in set_bufsize() local
1955 np->rx_buf_sz = ETH_DATA_LEN + NATSEMI_HEADERS; in set_bufsize()
1957 np->rx_buf_sz = dev->mtu + NATSEMI_HEADERS; in set_bufsize()
1963 struct netdev_private *np = netdev_priv(dev); in init_ring() local
1967 np->dirty_tx = np->cur_tx = 0; in init_ring()
1969 np->tx_skbuff[i] = NULL; in init_ring()
1970 np->tx_ring[i].next_desc = cpu_to_le32(np->ring_dma in init_ring()
1973 np->tx_ring[i].cmd_status = 0; in init_ring()
1977 np->dirty_rx = 0; in init_ring()
1978 np->cur_rx = RX_RING_SIZE; in init_ring()
1979 np->oom = 0; in init_ring()
1982 np->rx_head_desc = &np->rx_ring[0]; in init_ring()
1989 np->rx_ring[i].next_desc = cpu_to_le32(np->ring_dma in init_ring()
1992 np->rx_ring[i].cmd_status = cpu_to_le32(DescOwn); in init_ring()
1993 np->rx_skbuff[i] = NULL; in init_ring()
2001 struct netdev_private *np = netdev_priv(dev); in drain_tx() local
2005 if (np->tx_skbuff[i]) { in drain_tx()
2006 pci_unmap_single(np->pci_dev, in drain_tx()
2007 np->tx_dma[i], np->tx_skbuff[i]->len, in drain_tx()
2009 dev_kfree_skb(np->tx_skbuff[i]); in drain_tx()
2012 np->tx_skbuff[i] = NULL; in drain_tx()
2018 struct netdev_private *np = netdev_priv(dev); in drain_rx() local
2019 unsigned int buflen = np->rx_buf_sz; in drain_rx()
2024 np->rx_ring[i].cmd_status = 0; in drain_rx()
2025 np->rx_ring[i].addr = cpu_to_le32(0xBADF00D0); /* An invalid address. */ in drain_rx()
2026 if (np->rx_skbuff[i]) { in drain_rx()
2027 pci_unmap_single(np->pci_dev, np->rx_dma[i], in drain_rx()
2030 dev_kfree_skb(np->rx_skbuff[i]); in drain_rx()
2032 np->rx_skbuff[i] = NULL; in drain_rx()
2044 struct netdev_private *np = netdev_priv(dev); in free_ring() local
2045 pci_free_consistent(np->pci_dev, in free_ring()
2047 np->rx_ring, np->ring_dma); in free_ring()
2052 struct netdev_private *np = netdev_priv(dev); in reinit_rx() local
2056 np->dirty_rx = 0; in reinit_rx()
2057 np->cur_rx = RX_RING_SIZE; in reinit_rx()
2058 np->rx_head_desc = &np->rx_ring[0]; in reinit_rx()
2061 np->rx_ring[i].cmd_status = cpu_to_le32(DescOwn); in reinit_rx()
2068 struct netdev_private *np = netdev_priv(dev); in reinit_ring() local
2073 np->dirty_tx = np->cur_tx = 0; in reinit_ring()
2075 np->tx_ring[i].cmd_status = 0; in reinit_ring()
2082 struct netdev_private *np = netdev_priv(dev); in start_tx() local
2091 entry = np->cur_tx % TX_RING_SIZE; in start_tx()
2093 np->tx_skbuff[entry] = skb; in start_tx()
2094 np->tx_dma[entry] = pci_map_single(np->pci_dev, in start_tx()
2097 np->tx_ring[entry].addr = cpu_to_le32(np->tx_dma[entry]); in start_tx()
2099 spin_lock_irqsave(&np->lock, flags); in start_tx()
2101 if (!np->hands_off) { in start_tx()
2102 np->tx_ring[entry].cmd_status = cpu_to_le32(DescOwn | skb->len); in start_tx()
2106 np->cur_tx++; in start_tx()
2107 if (np->cur_tx - np->dirty_tx >= TX_QUEUE_LEN - 1) { in start_tx()
2109 if (np->cur_tx - np->dirty_tx >= TX_QUEUE_LEN - 1) in start_tx()
2118 spin_unlock_irqrestore(&np->lock, flags); in start_tx()
2120 if (netif_msg_tx_queued(np)) { in start_tx()
2122 dev->name, np->cur_tx, entry); in start_tx()
2129 struct netdev_private *np = netdev_priv(dev); in netdev_tx_done() local
2131 for (; np->cur_tx - np->dirty_tx > 0; np->dirty_tx++) { in netdev_tx_done()
2132 int entry = np->dirty_tx % TX_RING_SIZE; in netdev_tx_done()
2133 if (np->tx_ring[entry].cmd_status & cpu_to_le32(DescOwn)) in netdev_tx_done()
2135 if (netif_msg_tx_done(np)) in netdev_tx_done()
2138 dev->name, np->dirty_tx, in netdev_tx_done()
2139 le32_to_cpu(np->tx_ring[entry].cmd_status)); in netdev_tx_done()
2140 if (np->tx_ring[entry].cmd_status & cpu_to_le32(DescPktOK)) { in netdev_tx_done()
2142 dev->stats.tx_bytes += np->tx_skbuff[entry]->len; in netdev_tx_done()
2145 le32_to_cpu(np->tx_ring[entry].cmd_status); in netdev_tx_done()
2156 pci_unmap_single(np->pci_dev,np->tx_dma[entry], in netdev_tx_done()
2157 np->tx_skbuff[entry]->len, in netdev_tx_done()
2160 dev_kfree_skb_irq(np->tx_skbuff[entry]); in netdev_tx_done()
2161 np->tx_skbuff[entry] = NULL; in netdev_tx_done()
2164 np->cur_tx - np->dirty_tx < TX_QUEUE_LEN - 4) { in netdev_tx_done()
2175 struct netdev_private *np = netdev_priv(dev); in intr_handler() local
2181 if (np->hands_off || !readl(ioaddr + IntrEnable)) in intr_handler()
2184 np->intr_status = readl(ioaddr + IntrStatus); in intr_handler()
2186 if (!np->intr_status) in intr_handler()
2189 if (netif_msg_intr(np)) in intr_handler()
2192 dev->name, np->intr_status, in intr_handler()
2195 prefetch(&np->rx_skbuff[np->cur_rx % RX_RING_SIZE]); in intr_handler()
2197 if (napi_schedule_prep(&np->napi)) { in intr_handler()
2200 __napi_schedule(&np->napi); in intr_handler()
2204 dev->name, np->intr_status, in intr_handler()
2215 struct netdev_private *np = container_of(napi, struct netdev_private, napi); in natsemi_poll() local
2216 struct net_device *dev = np->dev; in natsemi_poll()
2221 if (netif_msg_intr(np)) in natsemi_poll()
2224 dev->name, np->intr_status, in natsemi_poll()
2229 if (np->intr_status & in natsemi_poll()
2235 if (np->intr_status & in natsemi_poll()
2237 spin_lock(&np->lock); in natsemi_poll()
2239 spin_unlock(&np->lock); in natsemi_poll()
2243 if (np->intr_status & IntrAbnormalSummary) in natsemi_poll()
2244 netdev_error(dev, np->intr_status); in natsemi_poll()
2249 np->intr_status = readl(ioaddr + IntrStatus); in natsemi_poll()
2250 } while (np->intr_status); in natsemi_poll()
2256 spin_lock(&np->lock); in natsemi_poll()
2257 if (!np->hands_off) in natsemi_poll()
2259 spin_unlock(&np->lock); in natsemi_poll()
2268 struct netdev_private *np = netdev_priv(dev); in netdev_rx() local
2269 int entry = np->cur_rx % RX_RING_SIZE; in netdev_rx()
2270 int boguscnt = np->dirty_rx + RX_RING_SIZE - np->cur_rx; in netdev_rx()
2271 s32 desc_status = le32_to_cpu(np->rx_head_desc->cmd_status); in netdev_rx()
2272 unsigned int buflen = np->rx_buf_sz; in netdev_rx()
2278 if (netif_msg_rx_status(np)) in netdev_rx()
2295 if (netif_msg_rx_err(np)) in netdev_rx()
2301 np->cur_rx, desc_status); in netdev_rx()
2309 spin_lock_irqsave(&np->lock, flags); in netdev_rx()
2312 writel(np->ring_dma, ioaddr + RxRingPtr); in netdev_rx()
2314 spin_unlock_irqrestore(&np->lock, flags); in netdev_rx()
2332 } else if (pkt_len > np->rx_buf_sz) { in netdev_rx()
2346 pci_dma_sync_single_for_cpu(np->pci_dev, in netdev_rx()
2347 np->rx_dma[entry], in netdev_rx()
2351 np->rx_skbuff[entry]->data, pkt_len); in netdev_rx()
2353 pci_dma_sync_single_for_device(np->pci_dev, in netdev_rx()
2354 np->rx_dma[entry], in netdev_rx()
2358 pci_unmap_single(np->pci_dev, np->rx_dma[entry], in netdev_rx()
2361 skb_put(skb = np->rx_skbuff[entry], pkt_len); in netdev_rx()
2362 np->rx_skbuff[entry] = NULL; in netdev_rx()
2369 entry = (++np->cur_rx) % RX_RING_SIZE; in netdev_rx()
2370 np->rx_head_desc = &np->rx_ring[entry]; in netdev_rx()
2371 desc_status = le32_to_cpu(np->rx_head_desc->cmd_status); in netdev_rx()
2376 if (np->oom) in netdev_rx()
2377 mod_timer(&np->timer, jiffies + 1); in netdev_rx()
2384 struct netdev_private *np = netdev_priv(dev); in netdev_error() local
2387 spin_lock(&np->lock); in netdev_error()
2391 netif_msg_link(np)) { in netdev_error()
2395 np->advertising, lpa); in netdev_error()
2406 if ((np->tx_config & TxDrthMask) < TX_DRTH_VAL_LIMIT) { in netdev_error()
2407 np->tx_config += TX_DRTH_VAL_INC; in netdev_error()
2408 if (netif_msg_tx_err(np)) in netdev_error()
2411 dev->name, np->tx_config); in netdev_error()
2413 if (netif_msg_tx_err(np)) in netdev_error()
2416 dev->name, np->tx_config); in netdev_error()
2418 writel(np->tx_config, ioaddr + TxConfig); in netdev_error()
2420 if (intr_status & WOLPkt && netif_msg_wol(np)) { in netdev_error()
2426 if (netif_msg_rx_err(np) && netif_msg_intr(np)) { in netdev_error()
2442 spin_unlock(&np->lock); in netdev_error()
2456 struct netdev_private *np = netdev_priv(dev); in get_stats() local
2459 spin_lock_irq(&np->lock); in get_stats()
2460 if (netif_running(dev) && !np->hands_off) in get_stats()
2462 spin_unlock_irq(&np->lock); in get_stats()
2470 struct netdev_private *np = netdev_priv(dev); in natsemi_poll_controller() local
2471 const int irq = np->pci_dev->irq; in natsemi_poll_controller()
2483 struct netdev_private *np = netdev_priv(dev); in __set_rx_mode() local
2512 np->cur_rx_mode = rx_mode; in __set_rx_mode()
2524 struct netdev_private *np = netdev_priv(dev); in natsemi_change_mtu() local
2526 const int irq = np->pci_dev->irq; in natsemi_change_mtu()
2529 spin_lock(&np->lock); in natsemi_change_mtu()
2537 writel(np->ring_dma, ioaddr + RxRingPtr); in natsemi_change_mtu()
2540 spin_unlock(&np->lock); in natsemi_change_mtu()
2548 struct netdev_private *np = netdev_priv(dev); in set_rx_mode() local
2549 spin_lock_irq(&np->lock); in set_rx_mode()
2550 if (!np->hands_off) in set_rx_mode()
2552 spin_unlock_irq(&np->lock); in set_rx_mode()
2557 struct netdev_private *np = netdev_priv(dev); in get_drvinfo() local
2560 strlcpy(info->bus_info, pci_name(np->pci_dev), sizeof(info->bus_info)); in get_drvinfo()
2570 struct netdev_private *np = netdev_priv(dev); in get_eeprom_len() local
2571 return np->eeprom_size; in get_eeprom_len()
2576 struct netdev_private *np = netdev_priv(dev); in get_settings() local
2577 spin_lock_irq(&np->lock); in get_settings()
2579 spin_unlock_irq(&np->lock); in get_settings()
2585 struct netdev_private *np = netdev_priv(dev); in set_settings() local
2587 spin_lock_irq(&np->lock); in set_settings()
2589 spin_unlock_irq(&np->lock); in set_settings()
2595 struct netdev_private *np = netdev_priv(dev); in get_wol() local
2596 spin_lock_irq(&np->lock); in get_wol()
2599 spin_unlock_irq(&np->lock); in get_wol()
2604 struct netdev_private *np = netdev_priv(dev); in set_wol() local
2606 spin_lock_irq(&np->lock); in set_wol()
2609 spin_unlock_irq(&np->lock); in set_wol()
2615 struct netdev_private *np = netdev_priv(dev); in get_regs() local
2617 spin_lock_irq(&np->lock); in get_regs()
2619 spin_unlock_irq(&np->lock); in get_regs()
2624 struct netdev_private *np = netdev_priv(dev); in get_msglevel() local
2625 return np->msg_enable; in get_msglevel()
2630 struct netdev_private *np = netdev_priv(dev); in set_msglevel() local
2631 np->msg_enable = val; in set_msglevel()
2657 struct netdev_private *np = netdev_priv(dev); in get_eeprom() local
2661 eebuf = kmalloc(np->eeprom_size, GFP_KERNEL); in get_eeprom()
2666 spin_lock_irq(&np->lock); in get_eeprom()
2668 spin_unlock_irq(&np->lock); in get_eeprom()
2693 struct netdev_private *np = netdev_priv(dev); in netdev_set_wol() local
2710 if (np->srr >= SRR_DP83815_D) { in netdev_set_wol()
2723 struct netdev_private *np = netdev_priv(dev); in netdev_get_wol() local
2730 if (np->srr >= SRR_DP83815_D) { in netdev_get_wol()
2759 struct netdev_private *np = netdev_priv(dev); in netdev_set_sopass() local
2764 if (np->srr < SRR_DP83815_D) { in netdev_set_sopass()
2791 struct netdev_private *np = netdev_priv(dev); in netdev_get_sopass() local
2796 if (np->srr < SRR_DP83815_D) { in netdev_get_sopass()
2820 struct netdev_private *np = netdev_priv(dev); in netdev_get_ecmd() local
2824 ethtool_cmd_speed_set(ecmd, np->speed); in netdev_get_ecmd()
2825 ecmd->duplex = np->duplex; in netdev_get_ecmd()
2826 ecmd->autoneg = np->autoneg; in netdev_get_ecmd()
2828 if (np->advertising & ADVERTISE_10HALF) in netdev_get_ecmd()
2830 if (np->advertising & ADVERTISE_10FULL) in netdev_get_ecmd()
2832 if (np->advertising & ADVERTISE_100HALF) in netdev_get_ecmd()
2834 if (np->advertising & ADVERTISE_100FULL) in netdev_get_ecmd()
2840 ecmd->phy_address = np->phy_addr_external; in netdev_get_ecmd()
2880 np->advertising & mdio_read(dev, MII_LPA)); in netdev_get_ecmd()
2898 struct netdev_private *np = netdev_priv(dev); in netdev_set_ecmd() local
2926 if (np->ignore_phy && (ecmd->autoneg == AUTONEG_ENABLE || in netdev_set_ecmd()
2947 np->autoneg = ecmd->autoneg; in netdev_set_ecmd()
2948 np->phy_addr_external = ecmd->phy_address & PhyAddrMask; in netdev_set_ecmd()
2949 if (np->autoneg == AUTONEG_ENABLE) { in netdev_set_ecmd()
2951 np->advertising &= ~(ADVERTISE_ALL | ADVERTISE_100BASE4); in netdev_set_ecmd()
2953 np->advertising |= ADVERTISE_10HALF; in netdev_set_ecmd()
2955 np->advertising |= ADVERTISE_10FULL; in netdev_set_ecmd()
2957 np->advertising |= ADVERTISE_100HALF; in netdev_set_ecmd()
2959 np->advertising |= ADVERTISE_100FULL; in netdev_set_ecmd()
2961 np->speed = ethtool_cmd_speed(ecmd); in netdev_set_ecmd()
2962 np->duplex = ecmd->duplex; in netdev_set_ecmd()
2964 if (np->duplex == DUPLEX_HALF) in netdev_set_ecmd()
2965 np->full_duplex = 0; in netdev_set_ecmd()
3037 struct netdev_private *np = netdev_priv(dev); in netdev_get_eeprom() local
3040 for (i = 0; i < np->eeprom_size/2; i++) { in netdev_get_eeprom()
3053 struct netdev_private *np = netdev_priv(dev); in netdev_ioctl() local
3057 data->phy_id = np->phy_addr_external; in netdev_ioctl()
3066 if ((data->phy_id & 0x1f) == np->phy_addr_external) in netdev_ioctl()
3080 if ((data->phy_id & 0x1f) == np->phy_addr_external) { in netdev_ioctl()
3082 np->advertising = data->val_in; in netdev_ioctl()
3087 if ((data->phy_id & 0x1f) == np->phy_addr_external) { in netdev_ioctl()
3089 np->advertising = data->val_in; in netdev_ioctl()
3105 struct netdev_private *np = netdev_priv(dev); in enable_wol_mode() local
3107 if (netif_msg_wol(np)) in enable_wol_mode()
3121 writel(np->SavedClkRun | PMEEnable | PMEStatus, ioaddr + ClkRun); in enable_wol_mode()
3138 struct netdev_private *np = netdev_priv(dev); in netdev_close() local
3139 const int irq = np->pci_dev->irq; in netdev_close()
3141 if (netif_msg_ifdown(np)) in netdev_close()
3145 if (netif_msg_pktdata(np)) in netdev_close()
3148 dev->name, np->cur_tx, np->dirty_tx, in netdev_close()
3149 np->cur_rx, np->dirty_rx); in netdev_close()
3151 napi_disable(&np->napi); in netdev_close()
3160 del_timer_sync(&np->timer); in netdev_close()
3162 spin_lock_irq(&np->lock); in netdev_close()
3164 np->hands_off = 1; in netdev_close()
3165 spin_unlock_irq(&np->lock); in netdev_close()
3174 spin_lock_irq(&np->lock); in netdev_close()
3175 np->hands_off = 0; in netdev_close()
3186 spin_unlock_irq(&np->lock); in netdev_close()
3205 writel(np->SavedClkRun, ioaddr + ClkRun); in netdev_close()
3255 struct netdev_private *np = netdev_priv(dev); in natsemi_suspend() local
3260 const int irq = np->pci_dev->irq; in natsemi_suspend()
3262 del_timer_sync(&np->timer); in natsemi_suspend()
3265 spin_lock_irq(&np->lock); in natsemi_suspend()
3268 np->hands_off = 1; in natsemi_suspend()
3272 spin_unlock_irq(&np->lock); in natsemi_suspend()
3275 napi_disable(&np->napi); in natsemi_suspend()
3293 writel(np->SavedClkRun, ioaddr + ClkRun); in natsemi_suspend()
3306 struct netdev_private *np = netdev_priv(dev); in natsemi_resume() local
3313 const int irq = np->pci_dev->irq; in natsemi_resume()
3315 BUG_ON(!np->hands_off); in natsemi_resume()
3324 napi_enable(&np->napi); in natsemi_resume()
3329 spin_lock_irq(&np->lock); in natsemi_resume()
3330 np->hands_off = 0; in natsemi_resume()
3333 spin_unlock_irq(&np->lock); in natsemi_resume()
3336 mod_timer(&np->timer, round_jiffies(jiffies + 1*HZ)); in natsemi_resume()