Lines Matching refs:netdev

134 	struct net_device *netdev[F81604_MAX_DEV];  member
139 struct net_device *netdev; member
254 int port = priv->netdev->dev_port; in f81604_sja1000_write()
264 int port = priv->netdev->dev_port; in f81604_sja1000_read()
370 static void f81604_process_rx_packet(struct net_device *netdev, in f81604_process_rx_packet() argument
373 struct net_device_stats *stats = &netdev->stats; in f81604_process_rx_packet()
380 skb = alloc_can_skb(netdev, &cf); in f81604_process_rx_packet()
415 struct net_device *netdev = urb->context; in f81604_read_bulk_callback() local
418 if (!netif_device_present(netdev)) in f81604_read_bulk_callback()
422 netdev_info(netdev, "%s: URB aborted %pe\n", __func__, in f81604_read_bulk_callback()
440 netdev_warn(netdev, "URB length %u not equal to %zu\n", in f81604_read_bulk_callback()
445 f81604_process_rx_packet(netdev, frame); in f81604_read_bulk_callback()
450 netif_device_detach(netdev); in f81604_read_bulk_callback()
452 netdev_err(netdev, in f81604_read_bulk_callback()
460 struct net_device *netdev = priv->netdev; in f81604_handle_tx() local
461 struct net_device_stats *stats = &netdev->stats; in f81604_handle_tx()
467 can_free_echo_skb(netdev, 0, NULL); in f81604_handle_tx()
470 stats->tx_bytes += can_get_echo_skb(netdev, 0, NULL); in f81604_handle_tx()
474 netif_wake_queue(netdev); in f81604_handle_tx()
481 struct net_device *netdev = priv->netdev; in f81604_handle_can_bus_errors() local
482 struct net_device_stats *stats = &netdev->stats; in f81604_handle_can_bus_errors()
490 skb = alloc_can_err_skb(netdev, &cf); in f81604_handle_can_bus_errors()
499 netdev_dbg(netdev, "data overrun interrupt\n"); in f81604_handle_can_bus_errors()
514 netdev_dbg(netdev, "error warning interrupt\n"); in f81604_handle_can_bus_errors()
526 netdev_dbg(netdev, "bus error interrupt\n"); in f81604_handle_can_bus_errors()
567 netdev_dbg(netdev, "error passive interrupt: %d\n", can_state); in f81604_handle_can_bus_errors()
572 netdev_dbg(netdev, "arbitration lost interrupt\n"); in f81604_handle_can_bus_errors()
590 can_change_state(netdev, cf, tx_state, rx_state); in f81604_handle_can_bus_errors()
593 can_bus_off(netdev); in f81604_handle_can_bus_errors()
606 struct net_device *netdev = urb->context; in f81604_read_int_callback() local
610 priv = netdev_priv(netdev); in f81604_read_int_callback()
612 if (!netif_device_present(netdev)) in f81604_read_int_callback()
616 netdev_info(netdev, "%s: Int URB aborted: %pe\n", __func__, in f81604_read_int_callback()
647 netif_device_detach(netdev); in f81604_read_int_callback()
649 netdev_err(netdev, "%s: failed to resubmit int urb: %pe\n", in f81604_read_int_callback()
660 struct net_device *netdev = priv->netdev; in f81604_register_urbs() local
662 int id = netdev->dev_port; in f81604_register_urbs()
687 f81604_read_bulk_callback, netdev); in f81604_register_urbs()
704 netdev_warn(netdev, "%s: submit rx urb failed: %pe\n", in f81604_register_urbs()
725 sizeof(*int_data), f81604_read_int_callback, netdev, in f81604_register_urbs()
736 netdev_warn(netdev, "%s: submit int urb failed: %pe\n", in f81604_register_urbs()
751 static int f81604_start(struct net_device *netdev) in f81604_start() argument
753 struct f81604_port_priv *priv = netdev_priv(netdev); in f81604_start()
848 static int f81604_set_mode(struct net_device *netdev, enum can_mode mode) in f81604_set_mode() argument
854 ret = f81604_start(netdev); in f81604_set_mode()
855 if (!ret && netif_queue_stopped(netdev)) in f81604_set_mode()
856 netif_wake_queue(netdev); in f81604_set_mode()
868 struct net_device *netdev = urb->context; in f81604_write_bulk_callback() local
870 if (!netif_device_present(netdev)) in f81604_write_bulk_callback()
874 netdev_info(netdev, "%s: Tx URB error: %pe\n", __func__, in f81604_write_bulk_callback()
900 struct net_device *netdev) in f81604_start_xmit() argument
903 struct f81604_port_priv *priv = netdev_priv(netdev); in f81604_start_xmit()
904 struct net_device_stats *stats = &netdev->stats; in f81604_start_xmit()
909 if (can_dev_dropped_skb(netdev, skb)) in f81604_start_xmit()
912 netif_stop_queue(netdev); in f81604_start_xmit()
924 bulk_out_addr[netdev->dev_port]), in f81604_start_xmit()
926 priv->netdev); in f81604_start_xmit()
954 can_put_echo_skb(skb, netdev, 0, 0); in f81604_start_xmit()
958 netdev_err(netdev, "%s: failed to resubmit tx bulk urb: %pe\n", in f81604_start_xmit()
961 can_free_echo_skb(netdev, 0, NULL); in f81604_start_xmit()
966 netif_device_detach(netdev); in f81604_start_xmit()
968 netif_wake_queue(netdev); in f81604_start_xmit()
983 netif_wake_queue(netdev); in f81604_start_xmit()
988 static int f81604_get_berr_counter(const struct net_device *netdev, in f81604_get_berr_counter() argument
991 struct f81604_port_priv *priv = netdev_priv(netdev); in f81604_get_berr_counter()
1010 static int f81604_open(struct net_device *netdev) in f81604_open() argument
1014 ret = open_candev(netdev); in f81604_open()
1018 ret = f81604_start(netdev); in f81604_open()
1021 netif_device_detach(netdev); in f81604_open()
1023 close_candev(netdev); in f81604_open()
1027 netif_start_queue(netdev); in f81604_open()
1032 static int f81604_close(struct net_device *netdev) in f81604_close() argument
1034 struct f81604_port_priv *priv = netdev_priv(netdev); in f81604_close()
1038 netif_stop_queue(netdev); in f81604_close()
1040 close_candev(netdev); in f81604_close()
1072 for (i = 0; i < ARRAY_SIZE(priv->netdev); ++i) { in f81604_disconnect()
1073 if (!priv->netdev[i]) in f81604_disconnect()
1076 unregister_netdev(priv->netdev[i]); in f81604_disconnect()
1077 free_candev(priv->netdev[i]); in f81604_disconnect()
1096 static int f81604_set_termination(struct net_device *netdev, u16 term) in f81604_set_termination() argument
1098 struct f81604_port_priv *port_priv = netdev_priv(netdev); in f81604_set_termination()
1102 return __f81604_set_termination(port_priv->dev, netdev->dev_port, in f81604_set_termination()
1110 struct net_device *netdev; in f81604_probe() local
1120 for (i = 0; i < ARRAY_SIZE(priv->netdev); ++i) { in f81604_probe()
1130 for (i = 0; i < ARRAY_SIZE(priv->netdev); ++i) { in f81604_probe()
1133 netdev = alloc_candev(sizeof(*port_priv), 1); in f81604_probe()
1134 if (!netdev) { in f81604_probe()
1141 port_priv = netdev_priv(netdev); in f81604_probe()
1148 port_priv->netdev = netdev; in f81604_probe()
1164 netdev->ethtool_ops = &f81604_ethtool_ops; in f81604_probe()
1165 netdev->netdev_ops = &f81604_netdev_ops; in f81604_probe()
1166 netdev->flags |= IFF_ECHO; in f81604_probe()
1167 netdev->dev_port = i; in f81604_probe()
1169 SET_NETDEV_DEV(netdev, &intf->dev); in f81604_probe()
1171 ret = register_candev(netdev); in f81604_probe()
1173 netdev_err(netdev, "register CAN device failed: %pe\n", in f81604_probe()
1175 free_candev(netdev); in f81604_probe()
1180 priv->netdev[i] = netdev; in f81604_probe()