AnsweredAssumed Answered

CAN interface in 3.10.9 kernel

Question asked by Krishnan P on Jan 30, 2014
Latest reply on Jan 30, 2014 by Fabio Estevam

Hello all,

 

Last week i was working on enabling CAN interface on i.MX6 solo based board.  I am able to bring up the CAN interface with necessary changes in dts file

 

In imx6qdl.dtsi  added clocks  of nodes.

 

                        can1: flexcan@02090000 {

                                compatible = "fsl,imx6q-flexcan";

                                reg = <0x02090000 0x4000>;

                                interrupts = <0 110 0x04>;

                                clocks = <&clks 108>, <&clks 109>;

                                clock-names = "ipg", "per";

                        };

 

 

                        can2: flexcan@02094000 {

                                compatible = "fsl,imx6q-flexcan";

                                reg = <0x02094000 0x4000>;

                                interrupts = <0 111 0x04>;

                                clocks = <&clks 110>, <&clks 111>;

                                clock-names = "ipg", "per";

                        };

 

In my board dts  file I have added

 

&can1 {

        pinctrl-names = "default";

        pinctrl-0 = <&pinctrl_flexcan1_1>;

        status = "okay";

};

 

I am able to see the can interface up and  also able to set the bit rate. But the board is not sending any CAN frames outside.


Finally I found there is mismatch in the CAN root clock configuration. Later I found a link tells about the same issue and and solution.


http://patchwork.openwrt.org/patch/4531/

 

Hope this helps for  those who enable CAN on 3.10.9 kernel on i.MX6

 

Krishnan

Outcomes