Lines Matching refs:netdev
222 skb = netdev_alloc_skb(adapter->netdev, pool->buff_size); in ibmveth_replenish_buffer_pool()
225 netdev_dbg(adapter->netdev, in ibmveth_replenish_buffer_pool()
258 adapter->netdev->mtu + in ibmveth_replenish_buffer_pool()
434 netdev_dbg(adapter->netdev, "h_add_logical_lan_buffer failed " in ibmveth_rxq_recycle_buffer()
500 adapter->netdev->mtu + IBMVETH_BUFF_OH, in ibmveth_cleanup()
547 static int ibmveth_open(struct net_device *netdev) in ibmveth_open() argument
549 struct ibmveth_adapter *adapter = netdev_priv(netdev); in ibmveth_open()
558 netdev_dbg(netdev, "open starting\n"); in ibmveth_open()
569 netdev_err(netdev, "unable to allocate filter or buffer list " in ibmveth_open()
594 netdev_err(netdev, "unable to map filter or buffer list " in ibmveth_open()
604 mac_address = ibmveth_encode_mac_addr(netdev->dev_addr); in ibmveth_open()
610 netdev_dbg(netdev, "buffer list @ 0x%p\n", adapter->buffer_list_addr); in ibmveth_open()
611 netdev_dbg(netdev, "filter list @ 0x%p\n", adapter->filter_list_addr); in ibmveth_open()
612 netdev_dbg(netdev, "receive q @ 0x%p\n", adapter->rx_queue.queue_addr); in ibmveth_open()
619 netdev_err(netdev, "h_register_logical_lan failed with %ld\n", in ibmveth_open()
621 netdev_err(netdev, "buffer TCE:0x%llx filter TCE:0x%llx rxq " in ibmveth_open()
635 netdev_err(netdev, "unable to alloc pool\n"); in ibmveth_open()
642 netdev_dbg(netdev, "registering irq 0x%x\n", netdev->irq); in ibmveth_open()
643 rc = request_irq(netdev->irq, ibmveth_interrupt, 0, netdev->name, in ibmveth_open()
644 netdev); in ibmveth_open()
646 netdev_err(netdev, "unable to request irq 0x%x, rc %d\n", in ibmveth_open()
647 netdev->irq, rc); in ibmveth_open()
656 kmalloc(netdev->mtu + IBMVETH_BUFF_OH, GFP_KERNEL); in ibmveth_open()
663 netdev->mtu + IBMVETH_BUFF_OH, DMA_BIDIRECTIONAL); in ibmveth_open()
665 netdev_err(netdev, "unable to map bounce buffer\n"); in ibmveth_open()
670 netdev_dbg(netdev, "initial replenish cycle\n"); in ibmveth_open()
671 ibmveth_interrupt(netdev->irq, netdev); in ibmveth_open()
673 netif_start_queue(netdev); in ibmveth_open()
675 netdev_dbg(netdev, "open complete\n"); in ibmveth_open()
680 free_irq(netdev->irq, netdev); in ibmveth_open()
687 static int ibmveth_close(struct net_device *netdev) in ibmveth_close() argument
689 struct ibmveth_adapter *adapter = netdev_priv(netdev); in ibmveth_close()
692 netdev_dbg(netdev, "close starting\n"); in ibmveth_close()
697 netif_stop_queue(netdev); in ibmveth_close()
706 netdev_err(netdev, "h_free_logical_lan failed with %lx, " in ibmveth_close()
710 free_irq(netdev->irq, netdev); in ibmveth_close()
716 netdev_dbg(netdev, "close complete\n"); in ibmveth_close()
935 netdev_err(adapter->netdev, "tx: h_send_logical_lan failed " in ibmveth_send()
944 struct net_device *netdev) in ibmveth_start_xmit() argument
946 struct ibmveth_adapter *adapter = netdev_priv(netdev); in ibmveth_start_xmit()
958 netdev->stats.tx_dropped++; in ibmveth_start_xmit()
970 netdev_err(netdev, "tx: failed to checksum packet\n"); in ibmveth_start_xmit()
971 netdev->stats.tx_dropped++; in ibmveth_start_xmit()
1006 netdev->stats.tx_dropped++; in ibmveth_start_xmit()
1008 netdev->stats.tx_packets++; in ibmveth_start_xmit()
1009 netdev->stats.tx_bytes += skb->len; in ibmveth_start_xmit()
1040 netdev->stats.tx_dropped++; in ibmveth_start_xmit()
1042 netdev->stats.tx_packets++; in ibmveth_start_xmit()
1043 netdev->stats.tx_bytes += skb->len; in ibmveth_start_xmit()
1069 netdev_err(netdev, "tx: unable to map xmit buffer\n"); in ibmveth_start_xmit()
1080 struct net_device *netdev = adapter->netdev; in ibmveth_poll() local
1093 netdev_dbg(netdev, "recycling invalid buffer\n"); in ibmveth_poll()
1105 new_skb = netdev_alloc_skb(netdev, length); in ibmveth_poll()
1123 skb->protocol = eth_type_trans(skb, netdev); in ibmveth_poll()
1130 netdev->stats.rx_packets++; in ibmveth_poll()
1131 netdev->stats.rx_bytes += length; in ibmveth_poll()
1162 struct net_device *netdev = dev_instance; in ibmveth_interrupt() local
1163 struct ibmveth_adapter *adapter = netdev_priv(netdev); in ibmveth_interrupt()
1175 static void ibmveth_set_multicast_list(struct net_device *netdev) in ibmveth_set_multicast_list() argument
1177 struct ibmveth_adapter *adapter = netdev_priv(netdev); in ibmveth_set_multicast_list()
1180 if ((netdev->flags & IFF_PROMISC) || in ibmveth_set_multicast_list()
1181 (netdev_mc_count(netdev) > adapter->mcastFilterSize)) { in ibmveth_set_multicast_list()
1187 netdev_err(netdev, "h_multicast_ctrl rc=%ld when " in ibmveth_set_multicast_list()
1199 netdev_err(netdev, "h_multicast_ctrl rc=%ld when " in ibmveth_set_multicast_list()
1204 netdev_for_each_mc_addr(ha, netdev) { in ibmveth_set_multicast_list()
1212 netdev_err(netdev, "h_multicast_ctrl rc=%ld " in ibmveth_set_multicast_list()
1223 netdev_err(netdev, "h_multicast_ctrl rc=%ld when " in ibmveth_set_multicast_list()
1249 if (netif_running(adapter->netdev)) { in ibmveth_change_mtu()
1252 ibmveth_close(adapter->netdev); in ibmveth_change_mtu()
1266 return ibmveth_open(adapter->netdev); in ibmveth_change_mtu()
1272 if (need_restart && (rc = ibmveth_open(adapter->netdev))) in ibmveth_change_mtu()
1296 struct net_device *netdev = dev_get_drvdata(&vdev->dev); in ibmveth_get_desired_dma() local
1306 if (netdev == NULL) in ibmveth_get_desired_dma()
1309 adapter = netdev_priv(netdev); in ibmveth_get_desired_dma()
1312 ret += IOMMU_PAGE_ALIGN(netdev->mtu, tbl); in ibmveth_get_desired_dma()
1343 netdev_err(adapter->netdev, "h_change_logical_lan_mac failed with rc=%d\n", rc); in ibmveth_set_mac_addr()
1371 struct net_device *netdev; in ibmveth_probe() local
1402 netdev = alloc_etherdev(sizeof(struct ibmveth_adapter)); in ibmveth_probe()
1404 if (!netdev) in ibmveth_probe()
1407 adapter = netdev_priv(netdev); in ibmveth_probe()
1408 dev_set_drvdata(&dev->dev, netdev); in ibmveth_probe()
1411 adapter->netdev = netdev; in ibmveth_probe()
1415 netif_napi_add(netdev, &adapter->napi, ibmveth_poll, 16); in ibmveth_probe()
1417 netdev->irq = dev->irq; in ibmveth_probe()
1418 netdev->netdev_ops = &ibmveth_netdev_ops; in ibmveth_probe()
1419 netdev->ethtool_ops = &netdev_ethtool_ops; in ibmveth_probe()
1420 SET_NETDEV_DEV(netdev, &dev->dev); in ibmveth_probe()
1421 netdev->hw_features = NETIF_F_SG | NETIF_F_RXCSUM | in ibmveth_probe()
1423 netdev->features |= netdev->hw_features; in ibmveth_probe()
1425 memcpy(netdev->dev_addr, mac_addr_p, ETH_ALEN); in ibmveth_probe()
1440 netdev_dbg(netdev, "adapter @ 0x%p\n", adapter); in ibmveth_probe()
1446 netdev_dbg(netdev, "registering netdev...\n"); in ibmveth_probe()
1448 ibmveth_set_features(netdev, netdev->features); in ibmveth_probe()
1450 rc = register_netdev(netdev); in ibmveth_probe()
1453 netdev_dbg(netdev, "failed to register netdev rc=%d\n", rc); in ibmveth_probe()
1454 free_netdev(netdev); in ibmveth_probe()
1458 netdev_dbg(netdev, "registered\n"); in ibmveth_probe()
1465 struct net_device *netdev = dev_get_drvdata(&dev->dev); in ibmveth_remove() local
1466 struct ibmveth_adapter *adapter = netdev_priv(netdev); in ibmveth_remove()
1472 unregister_netdev(netdev); in ibmveth_remove()
1474 free_netdev(netdev); in ibmveth_remove()
1506 struct net_device *netdev = dev_get_drvdata( in veth_pool_store() local
1508 struct ibmveth_adapter *adapter = netdev_priv(netdev); in veth_pool_store()
1514 if (netif_running(netdev)) { in veth_pool_store()
1516 netdev_err(netdev, in veth_pool_store()
1522 ibmveth_close(netdev); in veth_pool_store()
1524 if ((rc = ibmveth_open(netdev))) in veth_pool_store()
1530 int mtu = netdev->mtu + IBMVETH_BUFF_OH; in veth_pool_store()
1544 netdev_err(netdev, "no active pool >= MTU\n"); in veth_pool_store()
1548 if (netif_running(netdev)) { in veth_pool_store()
1550 ibmveth_close(netdev); in veth_pool_store()
1553 if ((rc = ibmveth_open(netdev))) in veth_pool_store()
1562 if (netif_running(netdev)) { in veth_pool_store()
1564 ibmveth_close(netdev); in veth_pool_store()
1567 if ((rc = ibmveth_open(netdev))) in veth_pool_store()
1577 if (netif_running(netdev)) { in veth_pool_store()
1579 ibmveth_close(netdev); in veth_pool_store()
1582 if ((rc = ibmveth_open(netdev))) in veth_pool_store()
1591 ibmveth_interrupt(netdev->irq, netdev); in veth_pool_store()
1625 struct net_device *netdev = dev_get_drvdata(dev); in ibmveth_resume() local
1626 ibmveth_interrupt(netdev->irq, netdev); in ibmveth_resume()