Lines Matching refs:can_dev
33 …struct rt_can_device can_dev; /**< CAN device configuration in rt-thread… member
188 rt_hw_can_isr(&hpm_can->can_dev, RT_CAN_EVENT_TX_DONE | (0UL << 8)); in hpm_can_isr()
194 rt_hw_can_isr(&hpm_can->can_dev, RT_CAN_EVENT_TX_DONE | (0UL << 8)); in hpm_can_isr()
200 rt_hw_can_isr(&hpm_can->can_dev, RT_CAN_EVENT_RX_IND | (hpm_can->fifo_index << 8)); in hpm_can_isr()
206 rt_hw_can_isr(&hpm_can->can_dev, RT_CAN_EVENT_RXOF_IND | (hpm_can->fifo_index << 8)); in hpm_can_isr()
216 hpm_can->can_dev.status.ackerrcnt++; in hpm_can_isr()
219 hpm_can->can_dev.status.biterrcnt++; in hpm_can_isr()
222 hpm_can->can_dev.status.crcerrcnt++; in hpm_can_isr()
225 hpm_can->can_dev.status.formaterrcnt++; in hpm_can_isr()
228 hpm_can->can_dev.status.bitpaderrcnt++; in hpm_can_isr()
232 hpm_can->can_dev.status.rcverrcnt = can_get_receive_error_count(hpm_can->can_base); in hpm_can_isr()
233 hpm_can->can_dev.status.snderrcnt = can_get_transmit_error_count(hpm_can->can_base); in hpm_can_isr()
234 hpm_can->can_dev.status.lasterrtype = can_get_last_error_kind(hpm_can->can_base); in hpm_can_isr()
235 hpm_can->can_dev.status.errcode = 0; in hpm_can_isr()
238 hpm_can->can_dev.status.errcode |= ERRWARNING; in hpm_can_isr()
242 hpm_can->can_dev.status.errcode |= ERRPASSIVE; in hpm_can_isr()
246 hpm_can->can_dev.status.errcode |= BUSOFF; in hpm_can_isr()
413 err = hpm_can_configure(can, &drv_can->can_dev.config); in hpm_can_control()
429 if (arg_val != drv_can->can_dev.config.mode) in hpm_can_control()
431 drv_can->can_dev.config.mode = arg_val; in hpm_can_control()
432 err = hpm_can_configure(can, &drv_can->can_dev.config); in hpm_can_control()
438 if (arg_val != drv_can->can_dev.config.baud_rate) in hpm_can_control()
440 drv_can->can_dev.config.baud_rate = arg_val; in hpm_can_control()
442 err = hpm_can_configure(can, &drv_can->can_dev.config); in hpm_can_control()
447 if (arg_val != drv_can->can_dev.config.enable_canfd) in hpm_can_control()
449 drv_can->can_dev.config.enable_canfd = arg_val; in hpm_can_control()
450 err = hpm_can_configure(can, &drv_can->can_dev.config); in hpm_can_control()
455 if (arg_val != drv_can->can_dev.config.baud_rate_fd) in hpm_can_control()
457 drv_can->can_dev.config.baud_rate_fd = arg_val; in hpm_can_control()
458 err = hpm_can_configure(can, &drv_can->can_dev.config); in hpm_can_control()
471 drv_can->can_dev.config.can_timing = timing_configs->items[0]; in hpm_can_control()
475 drv_can->can_dev.config.canfd_timing = timing_configs->items[1]; in hpm_can_control()
477 err = hpm_can_configure(can, &drv_can->can_dev.config); in hpm_can_control()
487 if (arg_val != drv_can->can_dev.config.privmode) in hpm_can_control()
489 drv_can->can_dev.config.privmode = arg_val; in hpm_can_control()
490 err = hpm_can_configure(can, &drv_can->can_dev.config); in hpm_can_control()
494 drv_can->can_dev.status.rcverrcnt = can_get_receive_error_count(drv_can->can_base); in hpm_can_control()
495 drv_can->can_dev.status.snderrcnt = can_get_transmit_error_count(drv_can->can_base); in hpm_can_control()
496 drv_can->can_dev.status.lasterrtype = can_get_last_error_kind(drv_can->can_base); in hpm_can_control()
498 drv_can->can_dev.status.errcode = 0; in hpm_can_control()
501 drv_can->can_dev.status.errcode |= ERRWARNING; in hpm_can_control()
505 drv_can->can_dev.status.errcode |= ERRPASSIVE; in hpm_can_control()
509 drv_can->can_dev.status.errcode |= BUSOFF; in hpm_can_control()
511 rt_memcpy(arg, &drv_can->can_dev.status, sizeof(drv_can->can_dev.status)); in hpm_can_control()
708 hpm_cans[i]->can_dev.config = config; in rt_hw_can_init()
711 rt_hw_can_register(&hpm_cans[i]->can_dev, hpm_cans[i]->name, &hpm_can_ops, hpm_cans[i]); in rt_hw_can_init()