Lines Matching refs:netdev
97 ether_netdev = card->netdev[GELIC_PORT_ETHERNET_0]; in gelic_card_get_ether_port_status()
532 netif_stop_queue(card->netdev[GELIC_PORT_ETHERNET_0]); in gelic_card_stop_queues()
534 if (card->netdev[GELIC_PORT_WIRELESS]) in gelic_card_stop_queues()
535 netif_stop_queue(card->netdev[GELIC_PORT_WIRELESS]); in gelic_card_stop_queues()
539 netif_wake_queue(card->netdev[GELIC_PORT_ETHERNET_0]); in gelic_card_wake_queues()
541 if (card->netdev[GELIC_PORT_WIRELESS]) in gelic_card_wake_queues()
542 netif_wake_queue(card->netdev[GELIC_PORT_WIRELESS]); in gelic_card_wake_queues()
555 struct net_device *netdev; in gelic_card_release_tx_chain() local
562 netdev = tx_chain->tail->skb->dev; in gelic_card_release_tx_chain()
572 netdev->stats.tx_dropped++; in gelic_card_release_tx_chain()
577 netdev->stats.tx_packets++; in gelic_card_release_tx_chain()
578 netdev->stats.tx_bytes += in gelic_card_release_tx_chain()
606 void gelic_net_set_multi(struct net_device *netdev) in gelic_net_set_multi() argument
608 struct gelic_card *card = netdev_card(netdev); in gelic_net_set_multi()
630 if ((netdev->flags & IFF_ALLMULTI) || in gelic_net_set_multi()
631 (netdev_mc_count(netdev) > GELIC_NET_MC_COUNT_MAX)) { in gelic_net_set_multi()
643 netdev_for_each_mc_addr(ha, netdev) { in gelic_net_set_multi()
666 int gelic_net_stop(struct net_device *netdev) in gelic_net_stop() argument
672 netif_stop_queue(netdev); in gelic_net_stop()
673 netif_carrier_off(netdev); in gelic_net_stop()
675 card = netdev_card(netdev); in gelic_net_stop()
850 int gelic_net_xmit(struct sk_buff *skb, struct net_device *netdev) in gelic_net_xmit() argument
852 struct gelic_card *card = netdev_card(netdev); in gelic_net_xmit()
877 netdev->stats.tx_dropped++; in gelic_net_xmit()
897 netdev->stats.tx_dropped++; in gelic_net_xmit()
923 struct net_device *netdev) in gelic_net_pass_skb_up() argument
951 skb->protocol = eth_type_trans(skb, netdev); in gelic_net_pass_skb_up()
954 if (netdev->features & NETIF_F_RXCSUM) { in gelic_net_pass_skb_up()
964 netdev->stats.rx_packets++; in gelic_net_pass_skb_up()
965 netdev->stats.rx_bytes += skb->len; in gelic_net_pass_skb_up()
985 struct net_device *netdev = NULL; in gelic_card_decode_one_descr() local
1005 netdev = card->netdev[i]; in gelic_card_decode_one_descr()
1014 netdev = card->netdev[GELIC_PORT_ETHERNET_0]; in gelic_card_decode_one_descr()
1021 netdev->stats.rx_dropped++; in gelic_card_decode_one_descr()
1049 gelic_net_pass_skb_up(descr, card, netdev); in gelic_card_decode_one_descr()
1124 int gelic_net_change_mtu(struct net_device *netdev, int new_mtu) in gelic_net_change_mtu() argument
1132 netdev->mtu = new_mtu; in gelic_net_change_mtu()
1173 gelic_wl_interrupt(card->netdev[GELIC_PORT_WIRELESS], status); in gelic_card_interrupt()
1186 void gelic_net_poll_controller(struct net_device *netdev) in gelic_net_poll_controller() argument
1188 struct gelic_card *card = netdev_card(netdev); in gelic_net_poll_controller()
1191 gelic_card_interrupt(netdev->irq, netdev); in gelic_net_poll_controller()
1205 int gelic_net_open(struct net_device *netdev) in gelic_net_open() argument
1207 struct gelic_card *card = netdev_card(netdev); in gelic_net_open()
1209 dev_dbg(ctodev(card), " -> %s %p\n", __func__, netdev); in gelic_net_open()
1213 netif_start_queue(netdev); in gelic_net_open()
1220 void gelic_net_get_drvinfo(struct net_device *netdev, in gelic_net_get_drvinfo() argument
1227 static int gelic_ether_get_settings(struct net_device *netdev, in gelic_ether_get_settings() argument
1230 struct gelic_card *card = netdev_card(netdev); in gelic_ether_get_settings()
1271 static int gelic_ether_set_settings(struct net_device *netdev, in gelic_ether_set_settings() argument
1274 struct gelic_card *card = netdev_card(netdev); in gelic_ether_set_settings()
1310 static void gelic_net_get_wol(struct net_device *netdev, in gelic_net_get_wol() argument
1321 static int gelic_net_set_wol(struct net_device *netdev, in gelic_net_set_wol() argument
1335 card = netdev_card(netdev); in gelic_net_set_wol()
1409 struct net_device *netdev = card->netdev[GELIC_PORT_ETHERNET_0]; in gelic_net_tx_timeout_task() local
1413 if (!(netdev->flags & IFF_UP)) in gelic_net_tx_timeout_task()
1416 netif_device_detach(netdev); in gelic_net_tx_timeout_task()
1417 gelic_net_stop(netdev); in gelic_net_tx_timeout_task()
1419 gelic_net_open(netdev); in gelic_net_tx_timeout_task()
1420 netif_device_attach(netdev); in gelic_net_tx_timeout_task()
1432 void gelic_net_tx_timeout(struct net_device *netdev) in gelic_net_tx_timeout() argument
1436 card = netdev_card(netdev); in gelic_net_tx_timeout()
1438 if (netdev->flags & IFF_UP) in gelic_net_tx_timeout()
1464 static void gelic_ether_setup_netdev_ops(struct net_device *netdev, in gelic_ether_setup_netdev_ops() argument
1467 netdev->watchdog_timeo = GELIC_NET_WATCHDOG_TIMEOUT; in gelic_ether_setup_netdev_ops()
1469 netif_napi_add(netdev, napi, gelic_net_poll, NAPI_POLL_WEIGHT); in gelic_ether_setup_netdev_ops()
1470 netdev->ethtool_ops = &gelic_ether_ethtool_ops; in gelic_ether_setup_netdev_ops()
1471 netdev->netdev_ops = &gelic_netdevice_ops; in gelic_ether_setup_netdev_ops()
1484 int gelic_net_setup_netdev(struct net_device *netdev, struct gelic_card *card) in gelic_net_setup_netdev() argument
1489 netdev->hw_features = NETIF_F_IP_CSUM | NETIF_F_RXCSUM; in gelic_net_setup_netdev()
1491 netdev->features = NETIF_F_IP_CSUM; in gelic_net_setup_netdev()
1493 netdev->features |= NETIF_F_RXCSUM; in gelic_net_setup_netdev()
1505 memcpy(netdev->dev_addr, &v1, ETH_ALEN); in gelic_net_setup_netdev()
1508 netdev->hard_header_len += VLAN_HLEN; in gelic_net_setup_netdev()
1513 netdev->features |= NETIF_F_VLAN_CHALLENGED; in gelic_net_setup_netdev()
1516 status = register_netdev(netdev); in gelic_net_setup_netdev()
1519 __func__, netdev->name, status); in gelic_net_setup_netdev()
1523 netdev->name, netdev->dev_addr); in gelic_net_setup_netdev()
1536 static struct gelic_card *gelic_alloc_card_net(struct net_device **netdev) in gelic_alloc_card_net() argument
1563 *netdev = alloc_etherdev(sizeof(struct gelic_port)); in gelic_alloc_card_net()
1564 if (!*netdev) { in gelic_alloc_card_net()
1568 port = netdev_priv(*netdev); in gelic_alloc_card_net()
1571 port->netdev = *netdev; in gelic_alloc_card_net()
1576 card->netdev[GELIC_PORT_ETHERNET_0] = *netdev; in gelic_alloc_card_net()
1664 struct net_device *netdev; in ps3_gelic_driver_probe() local
1689 card = gelic_alloc_card_net(&netdev); in ps3_gelic_driver_probe()
1729 0, netdev->name, card); in ps3_gelic_driver_probe()
1767 netdev->irq = card->irq; in ps3_gelic_driver_probe()
1768 SET_NETDEV_DEV(netdev, &card->dev->core); in ps3_gelic_driver_probe()
1769 gelic_ether_setup_netdev_ops(netdev, &card->napi); in ps3_gelic_driver_probe()
1770 result = gelic_net_setup_netdev(netdev, card); in ps3_gelic_driver_probe()
1794 netdev->irq = NO_IRQ; in ps3_gelic_driver_probe()
1803 kfree(netdev_card(netdev)->unalign); in ps3_gelic_driver_probe()
1804 free_netdev(netdev); in ps3_gelic_driver_probe()
1843 netdev0 = card->netdev[GELIC_PORT_ETHERNET_0]; in ps3_gelic_driver_remove()