Subject: Re: [PATCH v2 09/13] can: pruss CAN driver.

From: Wolfgang Grandegger <[email-masked]>
Date: Mon, 14 Feb 2011 10:28:38 +0100

Hi Subhasish,

On 02/14/2011 09:45 AM, Subhasish Ghosh wrote:
> That is correct, we receive only pre-programmed CAN ids and "all" or
> "range" implementation is not there in the PRU firmware.

I'm curious about that CAN hardware and firmware. I found a nice block
diagram in [PATCH 0/13]:

http://marc.info/?l=linux-arm-kernel&m=129743511311286&w=4

So, one PRU is used for TX and the second for RX. Who is providing the
firmware you are using? Wouldn't it be possible to provide a firmware
for RX using just one message object (mailbox) with some buffering or
fifo? That would fit much better the SocketCAN approach favoring Basic
CAN controllers (in contrast to Full CAN [1]). And such an
implementation seems even simpler too me requiring less PRU resources.
And how about RTR and Extended CAN IDs? Is that supported?

Thanks,

Wolfgang.

[1] http://www.kvaser.com/en/about-can/the-can-protocol/18.html