All of lore.kernel.org
 help / color / mirror / Atom feed
From: Wolfgang Grandegger <wg@grandegger.com>
To: Andreas Larsson <andreas@gaisler.com>
Cc: linux-can@vger.kernel.org, mkl@pengutronix.de,
	devicetree-discuss@lists.ozlabs.org, software@gaisler.com
Subject: Re: [PATCH v2] can: grcan: Add device driver for GRCAN and GRHCAN cores
Date: Tue, 30 Oct 2012 10:29:00 +0100	[thread overview]
Message-ID: <508F9DDC.50003@grandegger.com> (raw)
In-Reply-To: <5087EDBF.2040108@gaisler.com>

Hi Andreas,

sorry for late answer. Other duties are keeping me busy. Your v3
triggered a closer look...

On 10/24/2012 03:31 PM, Andreas Larsson wrote:
> On 10/23/2012 06:26 PM, Wolfgang Grandegger wrote:
>> Hi,
>>
>> before I have a closer look I have some general questions, especially
>> about the heavy usage of SysFS for configuring the IP core module.
>> Generally, we are not allowed to use SysFS for CAN device configuration.
>>
>> - Why may the user want to configure the resources on a per device base?
> 
> The GRCAN core supports selecting between two different hardware
> interfaces. The parameters output0, output1 and selection configures
> these interfaces and selects which one to use. This can not be done in
> general. For output0 and output1 what value means what depends on what
> hardware is connected to the core. If a board has many GRCAN cores they
> might need different settings for these variables. In addition,
> switching between the two hardware interfaces is something that might be
> wanted to be done at runtime.
> 
> For the others module level configuration would work fine.

OK.

>
>> - Aren't there good default values which work just fine for 99% of the
>>   users?
>
> For output0, output1 and selection, the answer is no due to the reasons
> pointed out above. For the bpr and buffer sizes, that is probably
true.

OK, reducing the number of SysFS files to a really useful number (for
end users) would be nice.

...

>>> +What:        /sys/class/net/<iface>/grcan/rxmask
>>> +Date:        October 2012
>>> +KernelVersion:    3.8
>>> +Contact:    Andreas Larsson<andreas@gaisler.com>
>>> +Description:
>>> +        Configures the rxmask of the hardware filter. Received messages
>>> +        for which ((message_id ^ rxcode) & rxmask) != 0 holds will be
>>> +        filtered out in harware. Possible values in [0, 0x1fffffff].
>>> +        The default value is set by the module parameter rxmask and can
>>> +        be read at /sys/module/grcan/parameters/rxmask.
>>
>> Hardware filters should definitely not be defined via SysFS. We do not
>> have an interface yet, mainly because it does not fit into a multi user
>> concept. Anyway, we need such an interface *sooner* than later. Needs
>> some further thoughts.
> 
> OK, I'll get rid of that then and wait for such an interface in the
> future. It would be a pity if hardware filtering, that is a feature that
> would probably be used on an embedded system without multiple users,
> could never be realized because of the socket interface being a multi
> user concept. If root is the only one that can set it up it should be
> fine in my opinion. Nevertheless, I totally agree that a well defined
> API to enable it would be much nicer than going through SysFS.

Yes, we definitely need a generic interface to support hardware filters.
I put it on top of my Linux-CAN-TODO-List.


>>> --- /dev/null
>>> +++ b/Documentation/devicetree/bindings/net/can/grcan.txt
>>> @@ -0,0 +1,27 @@
>>> +CAN controller for Aeroflex Gaisler GRCAN and GRHCAN.
>>> +
>>> +The GRCAN and CRHCAN CAN controllers are available in the GRLIB VHDL
>>> IP core
>>> +library.
>>> +
>>> +Note: These properties are built from the AMBA plug&play in a Leon
>>> SPARC
>>> +system (the ordinary environment for GRCAN and GRHCAN). There are no
>>> bsp
>>> +files for sparc.
>>> +
>>> +Required properties:
>>> +
>>> +- name : Should be "GAISLER_GRCAN", "01_03d", "GAISLER_GRHCAN" or
>>> "01_034"
>>
>> A name should be "vendor,device", e.g. gaisler,grcan. It's also unusual
>> to add release numbers. Also, you do not distinguish between the devices
>> above. Then, just use one name and the others are compatible to that one
>> (even if they are named differently). Well, I realized that the device
>> tree police is less strict than it was 1..2 years ago... anyway, please
>> have a look to the many examples around, also for CAN.
> 
> As I stated in the file, there are no bsp files for sparc. The device
> trees are generated by a boot loader or a prom. For a leon sparc system
> the boot loader gets information from the hardware, the AMBA plug&play,
> and generates the device trees accordingly.

Ah, the system uses good old classic OpenFirmware. Sorry, I missed that.
This makes a lot of my questions obsolete.




      parent reply	other threads:[~2012-10-30  9:29 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-10-02 14:38 [PATCH] can: grcan: Add device driver for GRCAN and GRHCAN cores Andreas Larsson
2012-10-04  9:45 ` Marc Kleine-Budde
2012-10-11 10:04   ` Marc Kleine-Budde
2012-10-11 11:22     ` Andreas Larsson
2012-10-11 11:28       ` Marc Kleine-Budde
2012-10-11 12:08         ` Andreas Larsson
2012-10-23  9:57     ` [PATCH v2] " Andreas Larsson
2012-10-23 16:26       ` Wolfgang Grandegger
2012-10-24 13:31         ` Andreas Larsson
2012-10-30  9:06           ` [PATCH v3] " Andreas Larsson
2012-10-30 10:07             ` Wolfgang Grandegger
2012-10-30 16:24               ` Andreas Larsson
2012-10-31 12:51                 ` Wolfgang Grandegger
2012-10-31 16:33                   ` Andreas Larsson
2012-10-31 16:39                     ` [PATCH v4] " Andreas Larsson
2012-10-31 20:21                     ` [PATCH v3] " Wolfgang Grandegger
2012-11-01 16:08                       ` Andreas Larsson
2012-11-02 14:23                         ` [PATCH v5] " Andreas Larsson
2012-11-05  9:28                         ` [PATCH v3] " Wolfgang Grandegger
2012-11-07  7:32                           ` Andreas Larsson
2012-11-07 11:15                             ` Wolfgang Grandegger
2012-11-07 12:55                               ` Andreas Larsson
2012-11-07 15:20                                 ` [PATCH v6] " Andreas Larsson
2012-11-08  8:29                                   ` Wolfgang Grandegger
2012-11-08  9:27                                     ` Marc Kleine-Budde
2012-11-08 10:37                                       ` Andreas Larsson
     [not found]                                       ` <509B7B1E.5040509-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2012-11-08 13:10                                         ` [PATCH v7] " Andreas Larsson
2012-11-09  0:01                                           ` Marc Kleine-Budde
2012-11-12 14:57                                             ` [PATCH v8] " Andreas Larsson
2012-11-13 21:15                                               ` Marc Kleine-Budde
2012-11-14  7:50                                                 ` Andreas Larsson
2012-11-14  8:43                                                   ` Marc Kleine-Budde
2012-11-14 11:02                                                     ` Andreas Larsson
2012-11-14 11:22                                                       ` Marc Kleine-Budde
2012-11-14 15:07                                                         ` Andreas Larsson
2012-11-14 15:12                                                           ` Marc Kleine-Budde
2012-11-15  7:47                                                             ` [PATCH v9] " Andreas Larsson
2012-11-15 20:32                                                               ` Marc Kleine-Budde
2012-11-16  6:17                                                                 ` Andreas Larsson
2012-11-08 10:33                                     ` [PATCH v6] " Andreas Larsson
2012-10-30  9:29           ` Wolfgang Grandegger [this message]

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=508F9DDC.50003@grandegger.com \
    --to=wg@grandegger.com \
    --cc=andreas@gaisler.com \
    --cc=devicetree-discuss@lists.ozlabs.org \
    --cc=linux-can@vger.kernel.org \
    --cc=mkl@pengutronix.de \
    --cc=software@gaisler.com \
    /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.