Hi,
I have Colibri-imx6ull with a custom carrier Board and use the linux-toradex.git - Linux kernel for Apalis, Colibri and Verdin modules kernel for development.
I want to bring up the can1(pin 63/55) and can2(188/178) on my custom carrier.
With reference to this article https://developer.toradex.com/linux-bsp/application-development/peripheral-access/can-linux/#kernel-support-colibri-imx6ull , I have made changes and build imx6ull-colibri-wifi-eval-v3.dts(currently best suites for us and works in our custom carrier board).
In imx6ull-colibri-eval-v3.dtsi, update the status to okay.
&can1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_flexcan1>;
status = "okay";
};
&can2 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_flexcan2>;
status = "okay";
};
Using that device tree binary, I booted the kernel, which showed the error.
[ 15.558048] CAN device driver interface
[ 15.622542] imx6ul-pinctrl 20e0000.iomuxc: pin MX6UL_PAD_ENET1_RX_DATA0 already requested by 20e0000.iomuxc; cannot claim for 2090000.flexcan
[ 15.639317] imx6ul-pinctrl 20e0000.iomuxc: pin-49 (2090000.flexcan) status -22
[ 15.650531] imx6ul-pinctrl 20e0000.iomuxc: could not request pin 49 (MX6UL_PAD_ENET1_RX_DATA0) from group flexcan1-grp on device 20e0000.iomuxc
[ 15.667578] flexcan 2090000.flexcan: Error applying setting, reverse things back
[ 16.541580] flexcan: probe of 2090000.flexcan failed with error -22
[ OK ] Started Update UTMP about System Boot/Shutdown.
[ 16.695871] imx6ul-pinctrl 20e0000.iomuxc: pin MX6UL_PAD_ENET1_TX_DATA0 already requested by 20e0000.iomuxc; cannot claim for 2094000.flexcan
[ 16.713330] imx6ul-pinctrl 20e0000.iomuxc: pin-52 (2094000.flexcan) status -22
[ 16.725174] imx6ul-pinctrl 20e0000.iomuxc: could not request pin 52 (MX6UL_PAD_ENET1_TX_DATA0) from group flexcan2-grp on device 20e0000.iomuxc
[ 16.742814] flexcan 2094000.flexcan: Error applying setting, reverse things back
[ 16.813019] caam-snvs 20cc000.caam-snvs: violation handlers armed - init state
Let us know what other do I need to do in the device tree so that CAN works.
Thanks in Advance,
Vishvas