AnsweredAssumed Answered

Restart CAN interface on Yocto 1.4 with kernel

Question asked by Lucas Besso on Sep 25, 2015
Latest reply on Dec 21, 2015 by TomE

Hi all,


I'm using Digi Embedded Yocto 1.4 for Connect Core i.MX53 and I'm trying to recover a bus off in the can0 interface using the following command:


ip link set can0 type can restart-ms 100


but when I execute it I receive an error message:


root@ccimx53js:~# ip link set can0 type can restart-ms 100
RTNETLINK answers: Operation not supported


I can't found another alternative for that.

I'm developing an application which every second sent a configuration frame to the bus which doesn't have a connected node. So that a bus off occurs.

I want to configure the CAN interface in a way it be auto-recovered immediately after a bus off is detected.


I tried ifconfig can0 down/up. It seems to work because I starts to receive frames from the network but the frames sent by my application aren't seen in the network (although they are seen in the loopback).


I suspect the problem is in FlexCAN driver but I'm not sure. I read some people solved a similar problem updating the kernel version but in my case it is a bit complicated since we are using a specific distribution provided by Digi which only supports kernel version


So my questions are:

  1. is this problem generated by FlexCAN driver? If yes, can I update FlexCAN driver version in my kernel
  2. is there another way to restart the CAN interface?
  3. If the final solution is to update the kernel version I think I should ask in Yocto community.


Thanks for you help!