Lines Matching refs:netdev
540 struct net_device *netdev;
668 netif_err(nic, hw, nic->netdev,
674 netif_err(nic, hw, nic->netdev, "Self-test failed: timed out\n");
777 netif_err(nic, probe, nic->netdev, "EEPROM corrupted\n");
902 static int mdio_read(struct net_device *netdev, int addr, int reg)
904 struct nic *nic = netdev_priv(netdev);
908 static void mdio_write(struct net_device *netdev, int addr, int reg, int data)
910 struct nic *nic = netdev_priv(netdev);
936 netdev_err(nic->netdev, "e100.mdio_ctrl won't go Ready\n");
948 netif_printk(nic, hw, KERN_DEBUG, nic->netdev,
964 u16 advert = mdio_read(nic->netdev, nic->mii.phy_id,
1011 netif_printk(nic, hw, KERN_DEBUG, nic->netdev,
1020 netif_printk(nic, hw, KERN_DEBUG, nic->netdev,
1064 nic->mii.dev = nic->netdev;
1073 struct net_device *netdev = nic->netdev;
1117 if (unlikely(netdev->features & NETIF_F_RXFCS))
1124 if (netif_running(nic->netdev) || !(nic->flags & wol_magic))
1144 if (netdev->features & NETIF_F_RXALL) {
1150 netif_printk(nic, hw, KERN_DEBUG, nic->netdev, "[00-07]=%8ph\n",
1152 netif_printk(nic, hw, KERN_DEBUG, nic->netdev, "[08-15]=%8ph\n",
1154 netif_printk(nic, hw, KERN_DEBUG, nic->netdev, "[16-23]=%8ph\n",
1265 netif_err(nic, probe, nic->netdev,
1270 netif_info(nic, probe, nic->netdev,
1280 netif_err(nic, probe, nic->netdev,
1294 netif_err(nic, probe, nic->netdev,
1349 netif_err(nic, probe, nic->netdev,
1370 netif_err(nic, probe, nic->netdev, "ucode load failed\n");
1381 memcpy(cb->u.iaaddr, nic->netdev->dev_addr, ETH_ALEN);
1410 netif_info(nic, probe, nic->netdev,
1436 struct net_device *netdev = nic->netdev;
1443 bmcr = mdio_read(netdev, nic->mii.phy_id, MII_BMCR);
1444 stat = mdio_read(netdev, nic->mii.phy_id, MII_BMSR);
1445 stat = mdio_read(netdev, nic->mii.phy_id, MII_BMSR);
1458 netif_err(nic, hw, nic->netdev,
1463 netif_printk(nic, hw, KERN_DEBUG, nic->netdev,
1467 id_lo = mdio_read(netdev, nic->mii.phy_id, MII_PHYSID1);
1468 id_hi = mdio_read(netdev, nic->mii.phy_id, MII_PHYSID2);
1470 netif_printk(nic, hw, KERN_DEBUG, nic->netdev,
1476 mdio_write(netdev, addr, MII_BMCR, BMCR_ISOLATE);
1478 bmcr = mdio_read(netdev, addr, MII_BMCR);
1479 mdio_write(netdev, addr, MII_BMCR,
1489 mdio_write(netdev, nic->mii.phy_id, MII_BMCR,
1496 cong = mdio_read(netdev, nic->mii.phy_id, MII_NSC_CONG);
1499 mdio_write(netdev, nic->mii.phy_id, MII_NSC_CONG, cong);
1503 u16 advert = mdio_read(netdev, nic->mii.phy_id, MII_ADVERTISE);
1510 mdio_write(netdev, nic->mii.phy_id, MII_ADVERTISE, advert);
1513 bmcr = mdio_read(netdev, nic->mii.phy_id, MII_BMCR);
1515 mdio_write(netdev, nic->mii.phy_id, MII_BMCR, bmcr);
1517 (mdio_read(netdev, nic->mii.phy_id, MII_TPISTATUS) & 0x8000) &&
1520 mdio_write(netdev, nic->mii.phy_id, MII_NCONFIG,
1533 netif_err(nic, hw, nic->netdev, "e100_hw_init\n");
1562 struct net_device *netdev = nic->netdev;
1564 u16 i, count = min(netdev_mc_count(netdev), E100_MAX_MULTICAST_ADDRS);
1569 netdev_for_each_mc_addr(ha, netdev) {
1578 static void e100_set_multicast_list(struct net_device *netdev)
1580 struct nic *nic = netdev_priv(netdev);
1582 netif_printk(nic, hw, KERN_DEBUG, nic->netdev,
1584 netdev_mc_count(netdev), netdev->flags);
1586 if (netdev->flags & IFF_PROMISC)
1591 if (netdev->flags & IFF_ALLMULTI ||
1592 netdev_mc_count(netdev) > E100_MAX_MULTICAST_ADDRS)
1603 struct net_device *dev = nic->netdev;
1659 netif_printk(nic, tx_err, KERN_DEBUG, nic->netdev,
1691 netif_printk(nic, timer, KERN_DEBUG, nic->netdev,
1699 if (mii_link_ok(&nic->mii) && !netif_carrier_ok(nic->netdev)) {
1700 netdev_info(nic->netdev, "NIC Link is Up %u Mbps %s Duplex\n",
1703 } else if (!mii_link_ok(&nic->mii) && netif_carrier_ok(nic->netdev)) {
1704 netdev_info(nic->netdev, "NIC Link is Down\n");
1724 e100_set_multicast_list(nic->netdev);
1771 struct net_device *netdev)
1773 struct nic *nic = netdev_priv(netdev);
1781 netif_printk(nic, tx_err, KERN_DEBUG, nic->netdev,
1791 netif_printk(nic, tx_err, KERN_DEBUG, nic->netdev,
1793 netif_stop_queue(netdev);
1797 netif_printk(nic, tx_err, KERN_DEBUG, nic->netdev,
1799 netif_stop_queue(netdev);
1808 struct net_device *dev = nic->netdev;
1819 netif_printk(nic, tx_done, KERN_DEBUG, nic->netdev,
1843 if (unlikely(tx_cleaned && netif_queue_stopped(nic->netdev)))
1844 netif_wake_queue(nic->netdev);
1920 if (!(rx->skb = netdev_alloc_skb_ip_align(nic->netdev, RFD_BUF_LEN)))
1953 struct net_device *dev = nic->netdev;
1967 netif_printk(nic, rx_status, KERN_DEBUG, nic->netdev,
2016 skb->protocol = eth_type_trans(skb, nic->netdev);
2194 struct net_device *netdev = dev_id;
2195 struct nic *nic = netdev_priv(netdev);
2198 netif_printk(nic, intr, KERN_DEBUG, nic->netdev,
2240 static void e100_netpoll(struct net_device *netdev)
2242 struct nic *nic = netdev_priv(netdev);
2245 e100_intr(nic->pdev->irq, netdev);
2251 static int e100_set_mac_address(struct net_device *netdev, void *p)
2253 struct nic *nic = netdev_priv(netdev);
2259 memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len);
2284 e100_set_multicast_list(nic->netdev);
2288 nic->netdev->name, nic->netdev)))
2290 netif_wake_queue(nic->netdev);
2310 netif_stop_queue(nic->netdev);
2312 free_irq(nic->pdev->irq, nic->netdev);
2314 netif_carrier_off(nic->netdev);
2319 static void e100_tx_timeout(struct net_device *netdev, unsigned int txqueue)
2321 struct nic *nic = netdev_priv(netdev);
2331 struct net_device *netdev = nic->netdev;
2333 netif_printk(nic, tx_err, KERN_DEBUG, nic->netdev,
2337 if (netif_running(netdev)) {
2338 e100_down(netdev_priv(netdev));
2339 e100_up(netdev_priv(netdev));
2368 mdio_write(nic->netdev, nic->mii.phy_id, MII_BMCR,
2373 if (!(skb = netdev_alloc_skb(nic->netdev, ETH_DATA_LEN))) {
2379 e100_xmit_frame(skb, nic->netdev);
2391 mdio_write(nic->netdev, nic->mii.phy_id, MII_BMCR, 0);
2405 static int e100_get_link_ksettings(struct net_device *netdev,
2408 struct nic *nic = netdev_priv(netdev);
2415 static int e100_set_link_ksettings(struct net_device *netdev,
2418 struct nic *nic = netdev_priv(netdev);
2421 mdio_write(netdev, nic->mii.phy_id, MII_BMCR, BMCR_RESET);
2428 static void e100_get_drvinfo(struct net_device *netdev,
2431 struct nic *nic = netdev_priv(netdev);
2438 static int e100_get_regs_len(struct net_device *netdev)
2440 struct nic *nic = netdev_priv(netdev);
2448 static void e100_get_regs(struct net_device *netdev,
2451 struct nic *nic = netdev_priv(netdev);
2464 buff[1 + i] = mdio_read(netdev, nic->mii.phy_id,
2473 static void e100_get_wol(struct net_device *netdev, struct ethtool_wolinfo *wol)
2475 struct nic *nic = netdev_priv(netdev);
2480 static int e100_set_wol(struct net_device *netdev, struct ethtool_wolinfo *wol)
2482 struct nic *nic = netdev_priv(netdev);
2500 static u32 e100_get_msglevel(struct net_device *netdev)
2502 struct nic *nic = netdev_priv(netdev);
2506 static void e100_set_msglevel(struct net_device *netdev, u32 value)
2508 struct nic *nic = netdev_priv(netdev);
2512 static int e100_nway_reset(struct net_device *netdev)
2514 struct nic *nic = netdev_priv(netdev);
2518 static u32 e100_get_link(struct net_device *netdev)
2520 struct nic *nic = netdev_priv(netdev);
2524 static int e100_get_eeprom_len(struct net_device *netdev)
2526 struct nic *nic = netdev_priv(netdev);
2531 static int e100_get_eeprom(struct net_device *netdev,
2534 struct nic *nic = netdev_priv(netdev);
2542 static int e100_set_eeprom(struct net_device *netdev,
2545 struct nic *nic = netdev_priv(netdev);
2556 static void e100_get_ringparam(struct net_device *netdev,
2559 struct nic *nic = netdev_priv(netdev);
2569 static int e100_set_ringparam(struct net_device *netdev,
2572 struct nic *nic = netdev_priv(netdev);
2579 if (netif_running(netdev))
2585 netif_info(nic, drv, nic->netdev, "Ring Param settings: rx: %d, tx %d\n",
2587 if (netif_running(netdev))
2602 static void e100_diag_test(struct net_device *netdev,
2606 struct nic *nic = netdev_priv(netdev);
2617 if (netif_running(netdev))
2626 if (netif_running(netdev))
2635 static int e100_set_phys_id(struct net_device *netdev,
2638 struct nic *nic = netdev_priv(netdev);
2666 mdio_write(netdev, nic->mii.phy_id, led_reg, leds);
2686 static int e100_get_sset_count(struct net_device *netdev, int sset)
2698 static void e100_get_ethtool_stats(struct net_device *netdev,
2701 struct nic *nic = netdev_priv(netdev);
2705 data[i] = ((unsigned long *)&netdev->stats)[i];
2719 static void e100_get_strings(struct net_device *netdev, u32 stringset, u8 *data)
2756 static int e100_do_ioctl(struct net_device *netdev, struct ifreq *ifr, int cmd)
2758 struct nic *nic = netdev_priv(netdev);
2779 static int e100_open(struct net_device *netdev)
2781 struct nic *nic = netdev_priv(netdev);
2784 netif_carrier_off(netdev);
2786 netif_err(nic, ifup, nic->netdev, "Cannot open interface, aborting\n");
2790 static int e100_close(struct net_device *netdev)
2792 e100_down(netdev_priv(netdev));
2796 static int e100_set_features(struct net_device *netdev,
2799 struct nic *nic = netdev_priv(netdev);
2800 netdev_features_t changed = features ^ netdev->features;
2805 netdev->features = features;
2827 struct net_device *netdev;
2831 if (!(netdev = alloc_etherdev(sizeof(struct nic))))
2834 netdev->hw_features |= NETIF_F_RXFCS;
2835 netdev->priv_flags |= IFF_SUPP_NOFCS;
2836 netdev->hw_features |= NETIF_F_RXALL;
2838 netdev->netdev_ops = &e100_netdev_ops;
2839 netdev->ethtool_ops = &e100_ethtool_ops;
2840 netdev->watchdog_timeo = E100_WATCHDOG_PERIOD;
2841 strncpy(netdev->name, pci_name(pdev), sizeof(netdev->name) - 1);
2843 nic = netdev_priv(netdev);
2844 netif_napi_add(netdev, &nic->napi, e100_poll, E100_NAPI_WEIGHT);
2845 nic->netdev = netdev;
2849 pci_set_drvdata(pdev, netdev);
2852 netif_err(nic, probe, nic->netdev, "Cannot enable PCI device, aborting\n");
2857 netif_err(nic, probe, nic->netdev, "Cannot find proper PCI device base address, aborting\n");
2863 netif_err(nic, probe, nic->netdev, "Cannot obtain PCI resources, aborting\n");
2868 netif_err(nic, probe, nic->netdev, "No usable DMA configuration, aborting\n");
2872 SET_NETDEV_DEV(netdev, &pdev->dev);
2875 netif_info(nic, probe, nic->netdev, "using i/o access mode\n");
2879 netif_err(nic, probe, nic->netdev, "Cannot map device registers, aborting\n");
2893 netdev->features |= NETIF_F_VLAN_CHALLENGED;
2912 netif_err(nic, probe, nic->netdev, "Cannot alloc driver memory, aborting\n");
2921 memcpy(netdev->dev_addr, nic->eeprom, ETH_ALEN);
2922 if (!is_valid_ether_addr(netdev->dev_addr)) {
2924 netif_err(nic, probe, nic->netdev, "Invalid MAC address from EEPROM, aborting\n");
2928 netif_err(nic, probe, nic->netdev, "Invalid MAC address from EEPROM, you MUST configure one.\n");
2942 strcpy(netdev->name, "eth%d");
2943 if ((err = register_netdev(netdev))) {
2944 netif_err(nic, probe, nic->netdev, "Cannot register net device, aborting\n");
2947 nic->cbs_pool = dma_pool_create(netdev->name,
2953 netif_err(nic, probe, nic->netdev, "Cannot create DMA pool, aborting\n");
2957 netif_info(nic, probe, nic->netdev,
2960 pdev->irq, netdev->dev_addr);
2965 unregister_netdev(netdev);
2975 free_netdev(netdev);
2981 struct net_device *netdev = pci_get_drvdata(pdev);
2983 if (netdev) {
2984 struct nic *nic = netdev_priv(netdev);
2985 unregister_netdev(netdev);
2989 free_netdev(netdev);
3000 struct net_device *netdev = pci_get_drvdata(pdev);
3001 struct nic *nic = netdev_priv(netdev);
3003 netif_device_detach(netdev);
3005 if (netif_running(netdev))
3011 u16 smartspeed = mdio_read(netdev, nic->mii.phy_id,
3014 mdio_write(netdev, nic->mii.phy_id,
3048 struct net_device *netdev = dev_get_drvdata(dev_d);
3049 struct nic *nic = netdev_priv(netdev);
3054 netdev_err(netdev, "Resume cannot enable PCI device, aborting\n");
3061 u16 smartspeed = mdio_read(netdev, nic->mii.phy_id,
3064 mdio_write(netdev, nic->mii.phy_id,
3069 if (netif_running(netdev))
3072 netif_device_attach(netdev);
3093 struct net_device *netdev = pci_get_drvdata(pdev);
3094 struct nic *nic = netdev_priv(netdev);
3096 netif_device_detach(netdev);
3101 if (netif_running(netdev))
3117 struct net_device *netdev = pci_get_drvdata(pdev);
3118 struct nic *nic = netdev_priv(netdev);
3144 struct net_device *netdev = pci_get_drvdata(pdev);
3145 struct nic *nic = netdev_priv(netdev);
3150 netif_device_attach(netdev);
3151 if (netif_running(netdev)) {
3152 e100_open(netdev);