Linux CAN drivers development
 help / color / mirror / Atom feed
From: Wolfgang Grandegger <wg@grandegger.com>
To: Marc Kleine-Budde <mkl@pengutronix.de>
Cc: Andri Yngvason <Andri.Yngvason@marel.com>, linux-can@vger.kernel.org
Subject: Re: Inconsistent error state transition error frames
Date: Tue, 09 Sep 2014 12:48:53 +0200	[thread overview]
Message-ID: <a62de8d447dda55b1aa30711f0dc4605@grandegger.com> (raw)
In-Reply-To: <540DDB16.8010304@pengutronix.de>

On Mon, 08 Sep 2014 18:36:38 +0200, Marc Kleine-Budde <mkl@pengutronix.de>
wrote:
> On 09/08/2014 06:26 PM, Andri Yngvason wrote:
>> I've been working on a userspace program to monitor the CAN bus and I
>> found that it only works as expected on one platform (flexcan). The
>> problem is that on most other platforms, no error frame is emitted
>> when the controller transitions back to error-active state. I see

Also the Flexcan implementation does not correctly change the error
states backwards, IIRC.

>> that you've already discussed this on this list here:
>> http://thread.gmane.org/gmane.linux.can/201
>>
>> Why hasn't this been resolved?
> 
> I assume no one needed this feature so far, I assume. And/or cared not
> enough to upstream these patches.

Yep, little time left for free software development, lack of hardware,
etc. Somebody needs to care and post patches. Anyway, that's a good
occasion to start a migration path, maybe first for the Flexcan and
SJA1000 and MSCAN.

>> I already patched the mscan and sja1000 drivers myself, and I was
>> considering submitting them, but since you've already done some work
>> on this (which I believe is superior to mine), my work is unlikely to
> 
> Wolfgang mentioned in this mail, that he had some patches back than. Do
> you still have them, Wolfgang?

The patches to consolidate bus-off and error-state handling are still
at:

https://gitorious.org/linux-can/wg-linux-can-next/commits/eec921ac28fde243456078a557768808d93d94a3
https://gitorious.org/linux-can/wg-linux-can-next/commit/825f9bcb961aa193bacb9af6fb0d8491ee8fd02e

They introduce the can_id flag CAN_ERR_STATE_CHANGE and the data[1] flag
CAN_ERR_CRTL_ACTIVE, which I think would simplify migration. Also
there is now a common function can_change_state() which should make
the driver code more readable.

>> be of any consequence to this community, except to show that this
>> inconsistency does indeed result in wasted effort and frustration.
> 
> Feel free to post your patches.
> 
>> Of course, I'll help out if I can, e.g. by testing on the platforms
>> that I have available.

That would be very useful. Currently I do not have any CAN hardware at
hand.

Wolfgang.

  reply	other threads:[~2014-09-09 10:58 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-09-08 16:26 Inconsistent error state transition error frames Andri Yngvason
2014-09-08 16:36 ` Marc Kleine-Budde
2014-09-09 10:48   ` Wolfgang Grandegger [this message]
2014-09-09 11:59     ` Andri Yngvason
2014-09-09 13:53       ` Wolfgang Grandegger
2014-09-09 14:49         ` Andri Yngvason
2014-09-09 15:41           ` Wolfgang Grandegger
2014-09-09 18:08             ` Oliver Hartkopp
2014-09-10 10:19               ` Andri Yngvason
2014-09-10 10:29                 ` Marc Kleine-Budde
2014-09-10 11:53                   ` Wolfgang Grandegger
2014-09-10 19:08                     ` Oliver Hartkopp
2014-09-11 10:03                       ` Andri Yngvason

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=a62de8d447dda55b1aa30711f0dc4605@grandegger.com \
    --to=wg@grandegger.com \
    --cc=Andri.Yngvason@marel.com \
    --cc=linux-can@vger.kernel.org \
    --cc=mkl@pengutronix.de \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox