This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM3359 CAN Bus linux support on Beaglebone?

Other Parts Discussed in Thread: AM3359

Hi,

I wish to use a Beaglebone card to read a CAN bus.

The BONE_SRM.pdf Beaglebone System Reference Manual A6 rev 0.0 states that:

"There are two can bus interfaces available on the expansion header supporting CAN
version 2 parts A and B. The TX and RX digital signals are provided. The drivers and
connectors will need to be provided on a daughter card for use."

Does this mean that I must buy an extra cape card to use a CAN bus with Beaglebone? In the TI AM335x-A8 Cortex cpu there seem to be CAN bus serial interface already.
http://www.ti.com/product/am3359#technicaldocuments

What happens in practical terms is that I have downloaded the Texas Instruments Sitara SDK ti-sdk-am335x-evm-05.05.01.00 and recompiled the kernel after adding the CONFIG_CAN_D_CAN=y flag. Yet when I call "ip link show" from the command line, there is no can0 or similarly named interface. Should it not start automagically? When I try to use the "ip link add dev can0 type can" the reply I get is:

"RTNETLINK answers: Operation not supported" a few pr_info later in the board-am335xevm.c file reveals that the d_can_init drives is not started for the Beaglebone.

So ... do I need to write my own driver for the CAN Bus in the am3359 chip itself? Or won't the can0 interface show up until a daughter card is attached?