Linux CAN on Vybrid VF50

The following changes did the real trick for setting up the CAN1 peripheral on Colibri VF50 module.

diff --git a/arch/arm/boot/dts/vf-colibri-eval-v3.dtsi b/arch/arm/boot/dts/vf-colibri-eval-v3.dtsi
index dc70304..e84de94 100644
--- a/arch/arm/boot/dts/vf-colibri-eval-v3.dtsi
+++ b/arch/arm/boot/dts/vf-colibri-eval-v3.dtsi
@@ -199,6 +199,10 @@
        vbus-supply = <&reg_usbh_vbus>;
 };
 
+&can1 {
+       status = "okay";
+};
+
 &iomuxc {
        vf610-colibri {
                pinctrl_can_int: can_int {
diff --git a/arch/arm/boot/dts/vf-colibri.dtsi b/arch/arm/boot/dts/vf-colibri.dtsi
index 7d11341..b0be47d 100644
--- a/arch/arm/boot/dts/vf-colibri.dtsi
+++ b/arch/arm/boot/dts/vf-colibri.dtsi
@@ -276,8 +276,6 @@
                                VF610_PAD_PTA31__GPIO_21        0x22ed
                                VF610_PAD_PTB6__GPIO_28         0x22ed
                                VF610_PAD_PTB7__GPIO_29         0x22ed
-                               VF610_PAD_PTB16__GPIO_38        0x22ed
-                               VF610_PAD_PTB17__GPIO_39        0x22ed
                                VF610_PAD_PTB18__GPIO_40        0x22ed
                                VF610_PAD_PTB21__GPIO_43        0x22ed
                                VF610_PAD_PTB22__GPIO_44        0x22ed
(END)

The other problem was with the bus interface. The solution was to use identical CAN trans-receivers for both sides of communication. Kindly excuse my lack of electrical engineering knowledge, but after using identical trans-receivers for both my CAN nodes, it was successfully working.

PS: The CAN Modules I used are SN65HVD230 from Waveshare.

Hi Sohal

Perfect, that it is working. Thanks for your feedback.

Will you be taking up the changes required in the Toradex Page?

yeah. we will update the article.