Lines Matching refs:rx_fifo

49     struct rt_can_rx_fifo *rx_fifo;  in _can_int_rx()  local
53 rx_fifo = (struct rt_can_rx_fifo *) can->can_rx; in _can_int_rx()
54 RT_ASSERT(rx_fifo != RT_NULL); in _can_int_rx()
84 if (!rt_list_isempty(&rx_fifo->uselist)) in _can_int_rx()
86 listmsg = rt_list_entry(rx_fifo->uselist.next, struct rt_can_msg_list, list); in _can_int_rx()
112 rt_list_insert_before(&rx_fifo->freelist, &listmsg->list); in _can_int_rx()
113 rx_fifo->freenumbers++; in _can_int_rx()
114 RT_ASSERT(rx_fifo->freenumbers <= can->config.msgboxsz); in _can_int_rx()
293 struct rt_can_rx_fifo *rx_fifo; in rt_can_open() local
295 rx_fifo = (struct rt_can_rx_fifo *) rt_malloc(sizeof(struct rt_can_rx_fifo) + in rt_can_open()
297 RT_ASSERT(rx_fifo != RT_NULL); in rt_can_open()
299 rx_fifo->buffer = (struct rt_can_msg_list *)(rx_fifo + 1); in rt_can_open()
300 rt_memset(rx_fifo->buffer, 0, can->config.msgboxsz * sizeof(struct rt_can_msg_list)); in rt_can_open()
301 rt_list_init(&rx_fifo->freelist); in rt_can_open()
302 rt_list_init(&rx_fifo->uselist); in rt_can_open()
303 rx_fifo->freenumbers = can->config.msgboxsz; in rt_can_open()
306 rt_list_insert_before(&rx_fifo->freelist, &rx_fifo->buffer[i].list); in rt_can_open()
308 rt_list_init(&rx_fifo->buffer[i].hdrlist); in rt_can_open()
309 rx_fifo->buffer[i].owner = RT_NULL; in rt_can_open()
312 can->can_rx = rx_fifo; in rt_can_open()
420 struct rt_can_rx_fifo *rx_fifo; in rt_can_close() local
425 rx_fifo = (struct rt_can_rx_fifo *)can->can_rx; in rt_can_close()
426 RT_ASSERT(rx_fifo != RT_NULL); in rt_can_close()
428 rt_free(rx_fifo); in rt_can_close()
787 struct rt_can_rx_fifo *rx_fifo; in rt_hw_can_isr() local
796 rx_fifo = (struct rt_can_rx_fifo *)can->can_rx; in rt_hw_can_isr()
797 RT_ASSERT(rx_fifo != RT_NULL); in rt_hw_can_isr()
809 if (!rt_list_isempty(&rx_fifo->freelist)) in rt_hw_can_isr()
811 listmsg = rt_list_entry(rx_fifo->freelist.next, struct rt_can_msg_list, list); in rt_hw_can_isr()
821 RT_ASSERT(rx_fifo->freenumbers > 0); in rt_hw_can_isr()
822 rx_fifo->freenumbers--; in rt_hw_can_isr()
824 else if (!rt_list_isempty(&rx_fifo->uselist)) in rt_hw_can_isr()
826 listmsg = rt_list_entry(rx_fifo->uselist.next, struct rt_can_msg_list, list); in rt_hw_can_isr()
845 rt_list_insert_before(&rx_fifo->uselist, &listmsg->list); in rt_hw_can_isr()
887 rx_length = rt_list_len(&rx_fifo->uselist)* sizeof(struct rt_can_msg); in rt_hw_can_isr()