All of lore.kernel.org
 help / color / mirror / Atom feed
From: Akshay Bhat <akshay.bhat-jEh4hwF5bVhBDgjK7y7TUQ@public.gmane.org>
To: Wolfgang Grandegger <wg-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>,
	mkl-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org
Cc: linux-can-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	Akshay Bhat <nodeax-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Subject: Re: [PATCH v2 2/2] can: spi: hi311x: Add Holt HI-311x CAN driver
Date: Thu, 9 Mar 2017 07:34:43 -0500	[thread overview]
Message-ID: <1447da4a-6a36-38fb-4298-fd7488697d11@timesys.com> (raw)
In-Reply-To: <6df4a9ae-eaba-6f3f-9c23-ae269548b005-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>



On 03/09/2017 04:59 AM, Wolfgang Grandegger wrote:
> Hello Akshay,
> 
> unfortunately there are not many CAN controllers for the SPI bus. I just
> know the MPC251x, which behaves badly (message losses) under Linux,
> especially at hight bit-rates due to insufficient RX buffering. What is
> your experience with that driver for the HI-311x?
> 

Hi Wolfgang,

Good question. I have not worked with MPC251x but the HI-311x performs
much better because HI-3110 features:
8 message FIFO (as opposed to 2 buffers on MPC2510)
20 MHz SPI interface (as opposed to 2.5 MHz on MPC2510)

As for the real world test results:

With RT patch applied to the kernel running on a i.MX6 Dual processor
(worst case interrupt latency of 50us as reported by cyclictest), there
are ZERO packet drops.
Tested with Kvaser Leaf sending 100 burst messages (back to back) every
40ms at a 1M CAN bit rate. 10 million messages were sent by the Kvaser
leaf and received successfully by the HI-311x driver.

Even without the RT patch, I was able to get the packet drop to zero but
this was by moving the CAN/SPI IRQ threads to CPU1 instead of CPU0.

Hence I feel the driver is a good candidate to be included in the Linux
kernel.

Below are detailed test results if you like:
https://goo.gl/VWgzp7

Ones of particular interest:
10M-msgs-1M-bitrate-100burst-40ms-interval-leaf.png
10M-msgs-1M-bitrate-100burst-40ms-interval-pwc.txt

Thanks,
Akshay

> 
> Am 07.03.2017 um 16:31 schrieb Akshay Bhat:
>>
>>
>> On 01/17/2017 02:22 PM, Akshay Bhat wrote:
>>> This patch adds support for the Holt HI-311x CAN controller. The HI311x
>>> CAN controller is capable of transmitting and receiving standard data
>>> frames, extended data frames and remote frames. The HI311x interfaces
>>> with the host over SPI.
>>>
>>> Datasheet: www.holtic.com/documents/371-hi-3110_v-rev-jpdf.do
>>>
>>> Signed-off-by: Akshay Bhat <nodeax-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
>>> ---
>>>
>>
>>
>> Hi Marc,
>>
>> Wanted to check if this patch can be included in the next kernel release
>> (4.12).
>>
>> Thanks,
>> Akshay
>> -- 
>> To unsubscribe from this list: send the line "unsubscribe linux-can" in
>> the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>
>>
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

WARNING: multiple messages have this Message-ID (diff)
From: Akshay Bhat <akshay.bhat@timesys.com>
To: Wolfgang Grandegger <wg@grandegger.com>, mkl@pengutronix.de
Cc: linux-can@vger.kernel.org, netdev@vger.kernel.org,
	devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
	Akshay Bhat <nodeax@gmail.com>
Subject: Re: [PATCH v2 2/2] can: spi: hi311x: Add Holt HI-311x CAN driver
Date: Thu, 9 Mar 2017 07:34:43 -0500	[thread overview]
Message-ID: <1447da4a-6a36-38fb-4298-fd7488697d11@timesys.com> (raw)
In-Reply-To: <6df4a9ae-eaba-6f3f-9c23-ae269548b005@grandegger.com>



On 03/09/2017 04:59 AM, Wolfgang Grandegger wrote:
> Hello Akshay,
> 
> unfortunately there are not many CAN controllers for the SPI bus. I just
> know the MPC251x, which behaves badly (message losses) under Linux,
> especially at hight bit-rates due to insufficient RX buffering. What is
> your experience with that driver for the HI-311x?
> 

Hi Wolfgang,

Good question. I have not worked with MPC251x but the HI-311x performs
much better because HI-3110 features:
8 message FIFO (as opposed to 2 buffers on MPC2510)
20 MHz SPI interface (as opposed to 2.5 MHz on MPC2510)

As for the real world test results:

With RT patch applied to the kernel running on a i.MX6 Dual processor
(worst case interrupt latency of 50us as reported by cyclictest), there
are ZERO packet drops.
Tested with Kvaser Leaf sending 100 burst messages (back to back) every
40ms at a 1M CAN bit rate. 10 million messages were sent by the Kvaser
leaf and received successfully by the HI-311x driver.

Even without the RT patch, I was able to get the packet drop to zero but
this was by moving the CAN/SPI IRQ threads to CPU1 instead of CPU0.

Hence I feel the driver is a good candidate to be included in the Linux
kernel.

Below are detailed test results if you like:
https://goo.gl/VWgzp7

Ones of particular interest:
10M-msgs-1M-bitrate-100burst-40ms-interval-leaf.png
10M-msgs-1M-bitrate-100burst-40ms-interval-pwc.txt

Thanks,
Akshay

> 
> Am 07.03.2017 um 16:31 schrieb Akshay Bhat:
>>
>>
>> On 01/17/2017 02:22 PM, Akshay Bhat wrote:
>>> This patch adds support for the Holt HI-311x CAN controller. The HI311x
>>> CAN controller is capable of transmitting and receiving standard data
>>> frames, extended data frames and remote frames. The HI311x interfaces
>>> with the host over SPI.
>>>
>>> Datasheet: www.holtic.com/documents/371-hi-3110_v-rev-jpdf.do
>>>
>>> Signed-off-by: Akshay Bhat <nodeax@gmail.com>
>>> ---
>>>
>>
>>
>> Hi Marc,
>>
>> Wanted to check if this patch can be included in the next kernel release
>> (4.12).
>>
>> Thanks,
>> Akshay
>> -- 
>> To unsubscribe from this list: send the line "unsubscribe linux-can" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>
>>

  parent reply	other threads:[~2017-03-09 12:34 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-01-17 19:22 [PATCH v2 1/2] can: holt_hi311x: document device tree bindings Akshay Bhat
2017-01-17 19:22 ` [PATCH v2 2/2] can: spi: hi311x: Add Holt HI-311x CAN driver Akshay Bhat
2017-03-07 15:31   ` Akshay Bhat
2017-03-09  9:59     ` Wolfgang Grandegger
     [not found]       ` <6df4a9ae-eaba-6f3f-9c23-ae269548b005-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
2017-03-09 12:34         ` Akshay Bhat [this message]
2017-03-09 12:34           ` Akshay Bhat
2017-03-09 14:45           ` Wolfgang Grandegger
2017-03-09 15:28             ` Akshay Bhat
2017-03-09 17:36   ` Wolfgang Grandegger
     [not found]     ` <234d9e75-0083-b8b4-c781-add653fdb550-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
2017-03-13 15:38       ` Akshay Bhat
2017-03-13 15:38         ` Akshay Bhat
     [not found]         ` <b3ebb569-b50c-39ad-dec5-0059fbfba8fb-jEh4hwF5bVhBDgjK7y7TUQ@public.gmane.org>
2017-03-14 12:11           ` Wolfgang Grandegger
2017-03-14 12:11             ` Wolfgang Grandegger
2017-03-14 16:20             ` Akshay Bhat
2017-03-14 18:08               ` Wolfgang Grandegger
2017-03-14 21:23                 ` Wolfgang Grandegger
     [not found]                 ` <41439729-42d0-d883-2801-2d3607f2aeab-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
2017-03-15  4:44                   ` Akshay Bhat
2017-03-15  4:44                     ` Akshay Bhat
2017-03-15  7:19                     ` Wolfgang Grandegger
2017-03-15  9:42                     ` Wolfgang Grandegger
     [not found]                       ` <3dba0948-ffcb-8e80-fb32-62bb0aca6627-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
2017-03-16 17:06                         ` Akshay Bhat
2017-03-16 17:06                           ` Akshay Bhat
2017-03-16 20:02                           ` Wolfgang Grandegger
2017-03-16 22:29                             ` Akshay Bhat
2017-03-17  7:39                               ` Wolfgang Grandegger
2017-03-17  8:17                                 ` Wolfgang Grandegger
2017-03-17 16:00                                 ` Akshay Bhat
2017-03-17 17:04                                   ` Wolfgang Grandegger
     [not found]                                     ` <7730cff6-6e85-c98d-0315-bd3888d3aeb1-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
2017-03-17 18:28                                       ` Akshay Bhat
2017-03-17 18:28                                         ` Akshay Bhat
     [not found]                                         ` <ff5d44d1-3bfe-8dae-2aaa-561ab0cb989c-jEh4hwF5bVhBDgjK7y7TUQ@public.gmane.org>
2017-03-18 12:30                                           ` Wolfgang Grandegger
2017-03-18 12:30                                             ` Wolfgang Grandegger

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1447da4a-6a36-38fb-4298-fd7488697d11@timesys.com \
    --to=akshay.bhat-jeh4hwf5bvhbdgjk7y7tuq@public.gmane.org \
    --cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-can-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=mkl-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org \
    --cc=netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=nodeax-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=wg-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.