All of lore.kernel.org
 help / color / mirror / Atom feed
From: Wolfgang Grandegger <wg@grandegger.com>
To: Bhupesh SHARMA <bhupesh.sharma@st.com>
Cc: Amit VIRDI <Amit.VIRDI@st.com>,
	Marc Kleine-Budde <mkl@pengutronix.de>,
	"linux-can@vger.kernel.org" <linux-can@vger.kernel.org>,
	"anilkumar@ti.com" <anilkumar@ti.com>,
	spear-devel <spear-devel@list.st.com>
Subject: Re: [PATCH 2/3] can: c_can: Provide generic interface to configure c-can message objects
Date: Wed, 16 Jan 2013 10:01:56 +0100	[thread overview]
Message-ID: <50F66C84.9040007@grandegger.com> (raw)
In-Reply-To: <D5ECB3C7A6F99444980976A8C6D896384FB6170303@EAPEX1MAIL1.st.com>

On 01/16/2013 09:25 AM, Bhupesh SHARMA wrote:
> 
> 
>> -----Original Message-----
>> From: Amit VIRDI
>> Sent: Wednesday, January 16, 2013 1:15 PM
>> To: Wolfgang Grandegger
>> Cc: Marc Kleine-Budde; linux-can@vger.kernel.org; Bhupesh SHARMA;
>> anilkumar@ti.com; spear-devel
>> Subject: Re: [PATCH 2/3] can: c_can: Provide generic interface to configure c-
>> can message objects
>>
>> On 12/21/2012 1:43 AM, Wolfgang Grandegger wrote:
>>> On 12/20/2012 03:04 PM, Marc Kleine-Budde wrote:
>>>> On 12/20/2012 11:05 AM, Amit Virdi wrote:
>>>>> Depending on the underlying platform, the configuration of the c-can
>>>>> message objects can change. For e.g. in some systems, it makes more
>>>>> sense to receive many message objects and transmit very few. In any
>>>>> case, providing flexibility in configuring the message objects is
>>>>> highly desirable.
>>>>>
>>>>> The total number of message objects for C_CAN controller is fixed at 32.
>>>>> The receive message objects are assigned higher priority so they
>>>>> begin with message object#1. So, in order to configure the message
>>>>> object the driver just needs two parameters - rx_split (for
>>>>> differentiating between lower bucket and higher bucket) and tx_num.
>>>>>
>>>>> However, if the user doesn't specify these parameters, then the
>>>>> message objects are configured with default parameters with equal
>>>>> distribution of receive and transmit message objects (16 each).
>>>>
>>>> As Wolfgang pointed out, the DT should only describe the hardware. In
>>>> the ethernet world I think there is ethtool to configure the hardware.
>>>> Maybe we need something similar for CAN (or add CAN support to
>> ethtool).
>>>
>>> Yeah, a simple tool using simple ioctl request would be nice, indeed.
>>> Well, as a per device setting seems overkill a simple module parameter
>>> would just do it.
>>>
>>
>> So, you're saying to drop the device configuration from the DT and use some
>> tool to do that. This would be nice if there are enough devices, apart from
>> the Bosch C-CAN controller, which require this sort of configuration.
>>
> 
> Indeed. It would make sense to put this type of configuration in the IPROUTE2 tool so that such
> changes can be performed by the user himself using the IP tool. But with the other CAN controllers having
> different management techniques (some using Message Objects, while the others using FIFO based designs),
> it would be difficult to maintain a generic interface in IP tool for the same.

Yep. Using iproute2 for this purpose is definitely overkill. It should
be used for generic *per-device* CAN configuration.

> 
> Or am I missing something here? Please let us know your views on the same.

Why not using a simple module parameter as I already suggested. A good
default would make 99% of the user happy. The remaining 1% is free to
fiddle with these module parameters.

Wolfgang.


  reply	other threads:[~2013-01-16  9:02 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-12-20 10:05 [PATCH 0/3] c_can: Update can support Amit Virdi
2012-12-20 10:05 ` [PATCH 1/3] can: c_can: Correct register alignment info passing through DT Amit Virdi
2012-12-20 13:59   ` Marc Kleine-Budde
2013-01-16  7:40     ` Amit Virdi
2012-12-20 10:05 ` [PATCH 2/3] can: c_can: Provide generic interface to configure c-can message objects Amit Virdi
2012-12-20 10:26   ` Wolfgang Grandegger
2012-12-20 10:53     ` Amit Virdi
2012-12-20 11:06       ` Bhupesh SHARMA
2012-12-20 11:12         ` Wolfgang Grandegger
2012-12-20 11:18           ` Amit Virdi
2012-12-20 12:20             ` Wolfgang Grandegger
2012-12-20 14:04   ` Marc Kleine-Budde
2012-12-20 20:13     ` Wolfgang Grandegger
2013-01-16  7:45       ` Amit Virdi
2013-01-16  8:25         ` Bhupesh SHARMA
2013-01-16  9:01           ` Wolfgang Grandegger [this message]
2013-01-16  9:03         ` Wolfgang Grandegger
2013-01-16  9:11           ` Amit Virdi
2012-12-20 10:05 ` [PATCH 3/3] can: c_can: Enable clock before first use Amit Virdi
2012-12-20 14:07   ` Marc Kleine-Budde
2013-01-16  8:03     ` Amit Virdi
2013-01-16  9:54       ` AnilKumar, Chimata
2013-01-16  9:54         ` AnilKumar, Chimata
2013-01-16 13:53         ` Rafael J. Wysocki
2013-01-16 13:53           ` Rafael J. Wysocki
2012-12-20 13:57 ` [PATCH 0/3] c_can: Update can support Marc Kleine-Budde

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=50F66C84.9040007@grandegger.com \
    --to=wg@grandegger.com \
    --cc=Amit.VIRDI@st.com \
    --cc=anilkumar@ti.com \
    --cc=bhupesh.sharma@st.com \
    --cc=linux-can@vger.kernel.org \
    --cc=mkl@pengutronix.de \
    --cc=spear-devel@list.st.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.