• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/linux/linux-2.6.36/net/can/

Lines Matching refs:can_id

303  * @can_id: pointer to CAN identifier of a given can_filter
314 * <received_can_id> & mask == can_id & mask
319 * The filter can be inverted (CAN_INV_FILTER bit set in can_id) or it can
324 * Pointer to optimal filterlist for the given can_id/mask pair.
326 * Reduced can_id to have a preprocessed filter compare value.
328 static struct hlist_head *find_rcv_list(canid_t *can_id, canid_t *mask,
331 canid_t inv = *can_id & CAN_INV_FILTER; /* save flag before masking */
345 if ((*mask & CAN_EFF_FLAG) && !(*can_id & CAN_EFF_FLAG))
349 *can_id &= *mask;
351 /* inverse can_id/can_mask filter */
359 /* extra filterlists for the subscription of a single non-RTR can_id */
361 !(*can_id & CAN_RTR_FLAG)) {
363 if (*can_id & CAN_EFF_FLAG) {
370 return &d->rx_sff[*can_id];
374 /* default: filter via can_id/can_mask */
381 * @can_id: CAN identifier (see description)
391 * <received_can_id> & mask == can_id & mask
393 * The filter can be inverted (CAN_INV_FILTER bit set in can_id) or it can
407 int can_rx_register(struct net_device *dev, canid_t can_id, canid_t mask,
429 rl = find_rcv_list(&can_id, &mask, d);
431 r->can_id = can_id;
468 * @can_id: CAN identifier
476 void can_rx_unregister(struct net_device *dev, canid_t can_id, canid_t mask,
493 DNAME(dev), can_id, mask);
497 rl = find_rcv_list(&can_id, &mask, d);
506 if (r->can_id == can_id && r->mask == mask &&
520 DNAME(dev), can_id, mask);
558 canid_t can_id = cf->can_id;
563 if (can_id & CAN_ERR_FLAG) {
566 if (can_id & r->mask) {
580 /* check for can_id/mask entries */
582 if ((can_id & r->mask) == r->can_id) {
588 /* check for inverted can_id/mask entries */
590 if ((can_id & r->mask) != r->can_id) {
597 if (can_id & CAN_RTR_FLAG)
600 if (can_id & CAN_EFF_FLAG) {
602 if (r->can_id == can_id) {
608 can_id &= CAN_SFF_MASK;
609 hlist_for_each_entry_rcu(r, n, &d->rx_sff[can_id], list) {