From b67a8152a507e6393d596e8df6af17d447699f6a Mon Sep 17 00:00:00 2001 From: yaomo718 Date: Thu, 25 Apr 2019 00:51:14 +0800 Subject: [components][drivers][can] can.c bug修复: 在RT_CAN_USING_HDR宏关闭的时候,接收数据大小的计算应该是:已使用链表数*sizeof(struct rt_can_msg)。 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- components/drivers/can/can.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/drivers/can/can.c b/components/drivers/can/can.c index 078d8bb64a..0769c79fd7 100644 --- a/components/drivers/can/can.c +++ b/components/drivers/can/can.c @@ -854,7 +854,7 @@ void rt_hw_can_isr(struct rt_can_device *can, int event) level = rt_hw_interrupt_disable(); /* get rx length */ - rx_length = rx_fifo->freenumbers * sizeof(struct rt_can_msg); + rx_length = rt_list_len(&rx_fifo->uselist)* sizeof(struct rt_can_msg); rt_hw_interrupt_enable(level); can->parent.rx_indicate(&can->parent, rx_length); -- cgit v1.3.1