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.

Where can I find d_can.c for linux AM3359?

Other Parts Discussed in Thread: AM3359

Hi,

I'm trying to find d_can.c (the DCAN driver for AM3359).  It's referred to in the WIki:

http://processors.wiki.ti.com/index.php/Sitara_DCAN_Linux_Driver

but it doesn't seem to be in the linuxezsdk-bone package.  c_can is there, as is ti_hecc ... but not d_can.

Where can I find it?

 

--Chris

 

 

  • Christopher,

    If you are pulling the 05.03.00.00 SDK release that release was done before the DCAN support was added.  However, you can see the latest kernel sources at http://arago-project.org/git/projects/?p=linux-am33x.git;a=summary and the d_can.c sources are available in the kernel.  The next release of the SDK will contain these sources as well.

    Chase Maupin

  • Oh, that explains it -- thank you!  I knew that with such a complete explanation of how it works on the wiki that code MUST exist.  I'll wait a little while for the next revision, if I can't wait any longer I'll just build that driver externally against the current kernel.

    I have taken a look at c_can because I was kind of curious how this all works.  I found the c_can_regs and can_if_regs structs for the C device (I understand it's not the AM3359 one, I'm just looking at it for educational purposes).  I also found:

     

     

            struct c_can_regs __iomem *regs;

    I'm wondering what exactly places that symbol "regs" at the correct place in the memory map?  It looks like it comes from something called platform_get_resource(), I'm not familiar with that.