[PATCH V4 2/3] can: m_can: update to support CAN FD features
Oliver Hartkopp
socketcan at hartkopp.net
Thu Nov 13 08:56:55 PST 2014
On 11/13/2014 11:10 AM, Marc Kleine-Budde wrote:
> On 11/07/2014 09:45 AM, Dong Aisheng wrote:
>>
>> - if (id & RX_BUF_RTR) {
>> + if (id & RX_BUF_ESI) {
>> + cf->flags |= CANFD_ESI;
>> + netdev_dbg(dev, "ESI Error\n");
>> + }
>> +
>> + if (!(dlc & RX_BUF_EDL) && (id & RX_BUF_RTR)) {
>> cf->can_id |= CAN_RTR_FLAG;
>
> I just noticed, that you don't set the cf->dlc (or cf->len) in the RTR
> case. Please create a separate patch that fixes this problem.
>
>> } else {
>> id = m_can_fifo_read(priv, fgi, M_CAN_FIFO_DLC);
>> - cf->can_dlc = get_can_dlc((id >> 16) & 0x0F);
>> - *(u32 *)(cf->data + 0) = m_can_fifo_read(priv, fgi,
>> - M_CAN_FIFO_DATA(0));
>> - *(u32 *)(cf->data + 4) = m_can_fifo_read(priv, fgi,
>> - M_CAN_FIFO_DATA(1));
>> + if (dlc & RX_BUF_EDL)
>> + cf->len = can_dlc2len((id >> 16) & 0x0F);
>> + else
>> + cf->len = get_can_dlc((id >> 16) & 0x0F);
>> +
Grr. I missed that one too :-(
Thanks for catching it.
As you committed patch 1 & 3 you expect a new single patch containing the
(fixed) content of this patch 2, right?
Regards,
Oliver
More information about the linux-arm-kernel
mailing list