Lines Matching refs:netdev

31 static inline int canif_is_active(struct net_device *netdev)  in canif_is_active()  argument
33 struct can_priv *can = netdev_priv(netdev); in canif_is_active()
35 if (!netif_running(netdev)) in canif_is_active()
142 int softing_netdev_rx(struct net_device *netdev, const struct can_frame *msg, in softing_netdev_rx() argument
148 skb = alloc_can_skb(netdev, &cf); in softing_netdev_rx()
162 struct net_device *netdev; in softing_handle_1() local
188 netdev = card->net[j]; in softing_handle_1()
189 if (!netdev) in softing_handle_1()
191 if (!canif_is_active(netdev)) in softing_handle_1()
194 ++netdev->stats.rx_over_errors; in softing_handle_1()
195 softing_netdev_rx(netdev, &msg, ktime_set(0, 0)); in softing_handle_1()
221 netdev = card->net[0]; in softing_handle_1()
223 netdev = card->net[1]; in softing_handle_1()
224 priv = netdev_priv(netdev); in softing_handle_1()
256 ++netdev->stats.rx_errors; in softing_handle_1()
265 can_bus_off(netdev); in softing_handle_1()
266 netif_stop_queue(netdev); in softing_handle_1()
269 softing_netdev_rx(netdev, &msg, ktime); in softing_handle_1()
298 can_get_echo_skb(netdev, priv->tx.echo_get); in softing_handle_1()
306 ++netdev->stats.tx_packets; in softing_handle_1()
308 netdev->stats.tx_bytes += msg.can_dlc; in softing_handle_1()
312 ret = softing_netdev_rx(netdev, &msg, ktime); in softing_handle_1()
314 ++netdev->stats.rx_packets; in softing_handle_1()
316 netdev->stats.rx_bytes += msg.can_dlc; in softing_handle_1()
318 ++netdev->stats.rx_dropped; in softing_handle_1()
332 struct net_device *netdev; in softing_irq_thread() local
348 netdev = card->net[(j + offset + 1) % card->pdat->nbus]; in softing_irq_thread()
349 if (!netdev) in softing_irq_thread()
351 priv = netdev_priv(netdev); in softing_irq_thread()
352 if (!canif_is_active(netdev)) in softing_irq_thread()
358 netif_wake_queue(netdev); in softing_irq_thread()
640 struct net_device *netdev; in softing_netdev_create() local
643 netdev = alloc_candev(sizeof(*priv), TX_ECHO_SKB_MAX); in softing_netdev_create()
644 if (!netdev) { in softing_netdev_create()
648 priv = netdev_priv(netdev); in softing_netdev_create()
649 priv->netdev = netdev; in softing_netdev_create()
657 priv->output = softing_default_output(netdev); in softing_netdev_create()
658 SET_NETDEV_DEV(netdev, &card->pdev->dev); in softing_netdev_create()
660 netdev->flags |= IFF_ECHO; in softing_netdev_create()
661 netdev->netdev_ops = &softing_netdev_ops; in softing_netdev_create()
665 return netdev; in softing_netdev_create()
668 static int softing_netdev_register(struct net_device *netdev) in softing_netdev_register() argument
672 ret = register_candev(netdev); in softing_netdev_register()
674 dev_alert(&netdev->dev, "register failed\n"); in softing_netdev_register()
677 if (sysfs_create_group(&netdev->dev.kobj, &netdev_sysfs_group) < 0) in softing_netdev_register()
678 netdev_alert(netdev, "sysfs group failed\n"); in softing_netdev_register()
683 static void softing_netdev_cleanup(struct net_device *netdev) in softing_netdev_cleanup() argument
685 sysfs_remove_group(&netdev->dev.kobj, &netdev_sysfs_group); in softing_netdev_cleanup()
686 unregister_candev(netdev); in softing_netdev_cleanup()
687 free_candev(netdev); in softing_netdev_cleanup()
761 struct net_device *netdev; in softing_pdev_probe() local
818 card->net[j] = netdev = in softing_pdev_probe()
820 if (!netdev) { in softing_pdev_probe()
825 netdev->dev_id = j; in softing_pdev_probe()
828 ret = softing_netdev_register(netdev); in softing_pdev_probe()
830 free_candev(netdev); in softing_pdev_probe()