Lines Matching refs:can
58 #include <linux/can.h>
59 #include <linux/can/core.h>
60 #include <linux/can/skb.h>
61 #include <linux/can/can-ml.h>
132 err = request_module("can-proto-%d", protocol);
139 pr_err_ratelimited("can: request_module (can-proto-%d) failed.\n",
203 struct can_pkg_stats *pkg_stats = dev_net(skb->dev)->can.pkg_stats;
218 /* Make sure the CAN frame can pass the selected CAN netdevice.
219 * As structs can_frame and canfd_frame are similar, we can provide
310 return net->can.rx_alldev_list;
355 * The filter can be inverted (CAN_INV_FILTER bit set in can_id) or it can
428 * The filter can be inverted (CAN_INV_FILTER bit set in can_id) or it can
449 struct can_rcv_lists_stats *rcv_lists_stats = net->can.rcv_lists_stats;
464 spin_lock_bh(&net->can.rcvlists_lock);
483 spin_unlock_bh(&net->can.rcvlists_lock);
518 struct can_rcv_lists_stats *rcv_lists_stats = net->can.rcv_lists_stats;
527 spin_lock_bh(&net->can.rcvlists_lock);
549 pr_warn("can: receive list entry not found for dev %s, id %03X, mask %03X\n",
561 spin_unlock_bh(&net->can.rcvlists_lock);
647 struct can_pkg_stats *pkg_stats = net->can.pkg_stats;
661 matches = can_rcv_filter(net->can.rx_alldev_list, skb);
748 pr_err("can: protocol number %d out of range\n", proto);
759 pr_err("can: protocol %d already registered\n", proto);
795 spin_lock_init(&net->can.rcvlists_lock);
796 net->can.rx_alldev_list =
797 kzalloc(sizeof(*net->can.rx_alldev_list), GFP_KERNEL);
798 if (!net->can.rx_alldev_list)
800 net->can.pkg_stats = kzalloc(sizeof(*net->can.pkg_stats), GFP_KERNEL);
801 if (!net->can.pkg_stats)
803 net->can.rcv_lists_stats = kzalloc(sizeof(*net->can.rcv_lists_stats), GFP_KERNEL);
804 if (!net->can.rcv_lists_stats)
810 timer_setup(&net->can.stattimer, can_stat_update,
812 mod_timer(&net->can.stattimer,
815 net->can.pkg_stats->jiffies_init = jiffies;
822 kfree(net->can.pkg_stats);
824 kfree(net->can.rx_alldev_list);
834 del_timer_sync(&net->can.stattimer);
837 kfree(net->can.rx_alldev_list);
838 kfree(net->can.pkg_stats);
839 kfree(net->can.rcv_lists_stats);
875 pr_info("can: controller area network core\n");