All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Cousson, Benoit" <b-cousson@ti.com>
To: Russell King - ARM Linux <linux@arm.linux.org.uk>
Cc: Grant Likely <grant.likely@secretlab.ca>,
	"Hilman, Kevin" <khilman@ti.com>, Paul Walmsley <paul@pwsan.com>,
	"G, Manjunath Kondaiah" <manjugk@ti.com>,
	"devicetree-discuss@lists.ozlabs.org"
	<devicetree-discuss@lists.ozlabs.org>,
	"Nayak, Rajendra" <rnayak@ti.com>,
	linux-omap <linux-omap@vger.kernel.org>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>
Subject: Re: How to handle named resources with DT?
Date: Tue, 9 Aug 2011 22:59:07 +0200	[thread overview]
Message-ID: <4E419F9B.4030804@ti.com> (raw)
In-Reply-To: <20110809195114.GB14281@n2100.arm.linux.org.uk>

On 8/9/2011 9:51 PM, Russell King - ARM Linux wrote:
> On Tue, Aug 09, 2011 at 11:23:20AM +0200, Cousson, Benoit wrote:
>> Hi Grant,
>>
>> Trying to bind hwmod informations with DT, I'm facing a little limitation.
>> A bunch of drivers are using the platform_get_resource_byname, so the
>> name for the resource is needed.
>>
>> The name is used so far for IORESOURCE_MEM, IORESOURCE_IRQ and
>> IORESOURCE_DMA types of resources.
>>
>> Do you have any plan to add that, or do you have any clean way to avoid
>> that without having to use the resource index?
>
> Named resources are evil.  You only have to look at /proc/iomem to see
> why that's the case.  Here's an example:
>
> b7a01000-b7a01003 : set
>    b7a01000-b7a01003 : set

So what? That just shows that /proc/iomem outputs sucks, but that does 
not prove that named resources are evil.

[...]

> How very informative.  Not.  So what device owns those?  Who knows,
> that's lost by the crappy named resource stuff.

Maybe, but this is not lost by the platform_device, and this is what 
really matters in this case.
We need to get the resource local to a device, we do not care about the 
global view. This is exactly what the platform_get_resource_byname is doing.
For my point of view, the need for that is similar to the clkdev / 
clk_get(dev, name) you did. For sure, in that case, the real global 
clock name is still relevant, but the important point for the driver is 
the local device name.

Not providing the name of the resource will give you the device name, 
but how informative is that for the driver? What entry is the good one 
in the middle of that list?

b7a01040-b7a01043 : omap_foo
b7a01044-b7a01047 : omap_foo
b7a01048-b7a0104b : omap_foo
b7a01060-b7a01063 : omap_foo

Bottom-line, in both cases, /proc/iomem sucks... But who cares about the 
internal representation? A platform_driver can still take advantage of 
that, and this is exactly what we are looking for.

Benoit



WARNING: multiple messages have this Message-ID (diff)
From: b-cousson@ti.com (Cousson, Benoit)
To: linux-arm-kernel@lists.infradead.org
Subject: How to handle named resources with DT?
Date: Tue, 9 Aug 2011 22:59:07 +0200	[thread overview]
Message-ID: <4E419F9B.4030804@ti.com> (raw)
In-Reply-To: <20110809195114.GB14281@n2100.arm.linux.org.uk>

On 8/9/2011 9:51 PM, Russell King - ARM Linux wrote:
> On Tue, Aug 09, 2011 at 11:23:20AM +0200, Cousson, Benoit wrote:
>> Hi Grant,
>>
>> Trying to bind hwmod informations with DT, I'm facing a little limitation.
>> A bunch of drivers are using the platform_get_resource_byname, so the
>> name for the resource is needed.
>>
>> The name is used so far for IORESOURCE_MEM, IORESOURCE_IRQ and
>> IORESOURCE_DMA types of resources.
>>
>> Do you have any plan to add that, or do you have any clean way to avoid
>> that without having to use the resource index?
>
> Named resources are evil.  You only have to look at /proc/iomem to see
> why that's the case.  Here's an example:
>
> b7a01000-b7a01003 : set
>    b7a01000-b7a01003 : set

So what? That just shows that /proc/iomem outputs sucks, but that does 
not prove that named resources are evil.

[...]

> How very informative.  Not.  So what device owns those?  Who knows,
> that's lost by the crappy named resource stuff.

Maybe, but this is not lost by the platform_device, and this is what 
really matters in this case.
We need to get the resource local to a device, we do not care about the 
global view. This is exactly what the platform_get_resource_byname is doing.
For my point of view, the need for that is similar to the clkdev / 
clk_get(dev, name) you did. For sure, in that case, the real global 
clock name is still relevant, but the important point for the driver is 
the local device name.

Not providing the name of the resource will give you the device name, 
but how informative is that for the driver? What entry is the good one 
in the middle of that list?

b7a01040-b7a01043 : omap_foo
b7a01044-b7a01047 : omap_foo
b7a01048-b7a0104b : omap_foo
b7a01060-b7a01063 : omap_foo

Bottom-line, in both cases, /proc/iomem sucks... But who cares about the 
internal representation? A platform_driver can still take advantage of 
that, and this is exactly what we are looking for.

Benoit

  reply	other threads:[~2011-08-09 20:59 UTC|newest]

Thread overview: 141+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-08-09  9:23 How to handle named resources with DT? Cousson, Benoit
2011-08-09  9:23 ` Cousson, Benoit
2011-08-09 16:29 ` G, Manjunath Kondaiah
2011-08-09 16:29   ` G, Manjunath Kondaiah
2011-08-09 16:57   ` Cousson, Benoit
2011-08-09 16:57     ` Cousson, Benoit
2011-08-09 17:23     ` Grant Likely
2011-08-09 17:23       ` Grant Likely
2011-08-09 17:47       ` Cousson, Benoit
2011-08-09 17:47         ` Cousson, Benoit
2011-08-09 17:52         ` Matt Porter
2011-08-09 17:52           ` Matt Porter
2011-08-09 18:26         ` Scott Wood
2011-08-09 18:26           ` Scott Wood
2011-08-09 20:57           ` Grant Likely
2011-08-09 20:57             ` Grant Likely
     [not found]             ` <20110809205723.GE11568-e0URQFbLeQY2iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2011-08-09 21:08               ` Cousson, Benoit
2011-08-09 21:08                 ` Cousson, Benoit
2011-08-09 21:17                 ` Grant Likely
2011-08-09 21:17                   ` Grant Likely
2011-08-09 21:44                   ` Cousson, Benoit
2011-08-09 21:44                     ` Cousson, Benoit
2011-08-09 21:49                     ` Grant Likely
2011-08-09 21:49                       ` Grant Likely
2011-08-09 21:53                       ` Cousson, Benoit
2011-08-09 21:53                         ` Cousson, Benoit
2011-08-10  1:52                         ` David Gibson
2011-08-10  1:52                           ` David Gibson
2011-08-10  7:11                           ` Paul Walmsley
2011-08-10  7:11                             ` Paul Walmsley
     [not found]                           ` <20110810015214.GD23511-787xzQ0H9iQXU02nzanrWNbf9cGiqdzd@public.gmane.org>
2011-08-10 15:01                             ` Cousson, Benoit
2011-08-10 15:01                               ` Cousson, Benoit
2011-08-10 15:18                           ` Scott Wood
2011-08-10 15:18                             ` Scott Wood
     [not found]                             ` <4E42A14B.9050308-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
2011-08-10 15:21                               ` Cousson, Benoit
2011-08-10 15:21                                 ` Cousson, Benoit
2011-08-10 19:22                           ` Grant Likely
2011-08-10 19:22                             ` Grant Likely
2011-08-10 19:57                             ` David Brown
2011-08-10 19:57                               ` David Brown
2011-08-10 20:12                               ` Grant Likely
2011-08-10 20:12                                 ` Grant Likely
2011-08-11 12:28                             ` Cousson, Benoit
2011-08-11 12:28                               ` Cousson, Benoit
2011-08-12  3:02                               ` David Gibson
2011-08-12  3:02                                 ` David Gibson
     [not found]                                 ` <20110812030218.GP30552-787xzQ0H9iQXU02nzanrWNbf9cGiqdzd@public.gmane.org>
2011-08-12  8:14                                   ` Cousson, Benoit
2011-08-12  8:14                                     ` Cousson, Benoit
2011-08-12  8:41                                 ` Felipe Balbi
2011-08-12  8:41                                   ` Felipe Balbi
     [not found]                                   ` <20110812084106.GC19467-UiBtZHVXSwEVvW8u9ZQWYwjfymiNCTlR@public.gmane.org>
2011-08-12 14:35                                     ` Arnd Bergmann
2011-08-12 14:35                                       ` Arnd Bergmann
2011-08-12 15:09                                       ` Cousson, Benoit
2011-08-12 15:09                                         ` Cousson, Benoit
2011-08-12 17:21                                         ` Grant Likely
2011-08-12 17:21                                           ` Grant Likely
2011-08-24 19:15                                           ` Kevin Hilman
2011-08-24 19:15                                             ` Kevin Hilman
2011-08-24 23:16                                             ` Felipe Balbi
2011-08-24 23:16                                               ` Felipe Balbi
     [not found]                                               ` <20110824231613.GC19890-UiBtZHVXSwEVvW8u9ZQWYwjfymiNCTlR@public.gmane.org>
2011-08-25 10:28                                                 ` Russell King - ARM Linux
2011-08-25 10:28                                                   ` Russell King - ARM Linux
     [not found]                                                   ` <20110825102824.GB10405-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2011-08-25 15:05                                                     ` Arnd Bergmann
2011-08-25 15:05                                                       ` Arnd Bergmann
2011-08-25 18:16                                                       ` Kevin Hilman
2011-08-25 18:16                                                         ` Kevin Hilman
2011-08-25 21:02                                                         ` Arnd Bergmann
2011-08-25 21:02                                                           ` Arnd Bergmann
2011-08-26 11:01                                                           ` Removing platform_get_resource_byname() (was Re: How to handle named resources with DT?) Paul Walmsley
2011-08-26 11:01                                                             ` Paul Walmsley
2011-08-26 11:01                                                             ` Paul Walmsley
2011-08-26  4:12                                                         ` How to handle named resources with DT? David Gibson
2011-08-26  4:12                                                           ` David Gibson
     [not found]                                                           ` <20110826041200.GD2308-787xzQ0H9iQXU02nzanrWNbf9cGiqdzd@public.gmane.org>
2011-08-26 10:58                                                             ` Arnd Bergmann
2011-08-26 10:58                                                               ` Arnd Bergmann
2011-08-26 13:06                                                               ` David Gibson
2011-08-26 13:06                                                                 ` David Gibson
2011-08-26 15:35                                                                 ` Arnd Bergmann
2011-08-26 15:35                                                                   ` Arnd Bergmann
     [not found]                                                                   ` <201108261735.55412.arnd-r2nGTMty4D4@public.gmane.org>
2011-08-26 15:41                                                                     ` Arnd Bergmann
2011-08-26 15:41                                                                       ` Arnd Bergmann
2011-08-27 14:37                                                                       ` David Gibson
2011-08-27 14:37                                                                         ` David Gibson
2011-08-27 18:13                                                                         ` Arnd Bergmann
2011-08-27 18:13                                                                           ` Arnd Bergmann
2011-08-27 19:31                                                                           ` Paul Walmsley
2011-08-27 19:31                                                                             ` Paul Walmsley
2011-08-29 17:16                                                                             ` Arnd Bergmann
2011-08-29 17:16                                                                               ` Arnd Bergmann
2011-08-28  8:39                                                                           ` David Gibson
2011-08-28  8:39                                                                             ` David Gibson
2011-08-28 23:06                                                                             ` Paul Walmsley
2011-08-28 23:06                                                                               ` Paul Walmsley
     [not found]                                                                               ` <alpine.DEB.2.00.1108281100150.23968-rwI8Ez+7Ko+d5PgPZx9QOdBPR1lH4CV8@public.gmane.org>
2011-08-28 23:43                                                                                 ` Russell King - ARM Linux
2011-08-28 23:43                                                                                   ` Russell King - ARM Linux
2011-08-29  1:57                                                                               ` Paul Walmsley
2011-08-29  1:57                                                                                 ` Paul Walmsley
2011-08-29 17:18                                                                             ` Arnd Bergmann
2011-08-29 17:18                                                                               ` Arnd Bergmann
2011-08-27 21:47                                                                 ` Paul Walmsley
2011-08-27 21:47                                                                   ` Paul Walmsley
     [not found]                                                                   ` <alpine.DEB.2.00.1108271444240.23968-rwI8Ez+7Ko+d5PgPZx9QOdBPR1lH4CV8@public.gmane.org>
2011-08-29 21:54                                                                     ` Mark Brown
2011-08-29 21:54                                                                       ` Mark Brown
2011-08-26 14:13                                                               ` Cousson, Benoit
2011-08-26 14:13                                                                 ` Cousson, Benoit
2011-08-30  2:29                                                                 ` David Gibson
2011-08-30  2:29                                                                   ` David Gibson
2011-08-30  9:27                                                                   ` Felipe Balbi
2011-08-30  9:27                                                                     ` Felipe Balbi
     [not found]                                                                     ` <20110830092722.GG23907-UiBtZHVXSwEVvW8u9ZQWYwjfymiNCTlR@public.gmane.org>
2011-08-31  2:32                                                                       ` David Gibson
2011-08-31  2:32                                                                         ` David Gibson
2011-08-27 20:00                                                               ` Paul Walmsley
2011-08-27 20:00                                                                 ` Paul Walmsley
2011-08-25 17:38                                                   ` Cousson, Benoit
2011-08-25 17:38                                                     ` Cousson, Benoit
2011-08-09 21:52                     ` Scott Wood
2011-08-09 21:52                       ` Scott Wood
2011-08-09 20:55         ` Grant Likely
2011-08-09 20:55           ` Grant Likely
2011-08-09 21:06           ` Cousson, Benoit
2011-08-09 21:06             ` Cousson, Benoit
2011-08-09 21:16             ` Grant Likely
2011-08-09 21:16               ` Grant Likely
2011-08-09 21:37               ` Cousson, Benoit
2011-08-09 21:37                 ` Cousson, Benoit
2011-08-12  4:10                 ` Shawn Guo
2011-08-12  4:10                   ` Shawn Guo
2011-08-12  8:56                   ` Cousson, Benoit
2011-08-12  8:56                     ` Cousson, Benoit
2011-08-12 11:47                     ` Shawn Guo
2011-08-12 11:47                       ` Shawn Guo
2011-08-12 14:40                     ` Arnd Bergmann
2011-08-12 14:40                       ` Arnd Bergmann
2011-08-10  1:29       ` David Gibson
2011-08-10  1:29         ` David Gibson
2011-08-10  6:08         ` Paul Walmsley
2011-08-10  6:08           ` Paul Walmsley
2011-08-09 19:51 ` Russell King - ARM Linux
2011-08-09 19:51   ` Russell King - ARM Linux
2011-08-09 20:59   ` Cousson, Benoit [this message]
2011-08-09 20:59     ` Cousson, Benoit

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=4E419F9B.4030804@ti.com \
    --to=b-cousson@ti.com \
    --cc=devicetree-discuss@lists.ozlabs.org \
    --cc=grant.likely@secretlab.ca \
    --cc=khilman@ti.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux@arm.linux.org.uk \
    --cc=manjugk@ti.com \
    --cc=paul@pwsan.com \
    --cc=rnayak@ti.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.