All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnd Bergmann <arnd-r2nGTMty4D4@public.gmane.org>
To: devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org
Cc: Jeremy Kerr <jeremy.kerr-Z7WLFzj8eWMS+FvcfC7Uqw@public.gmane.org>,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org
Subject: Re: [PATCH 2/2] drivers/amba: probe via device tree
Date: Fri, 20 May 2011 16:21:03 +0200	[thread overview]
Message-ID: <201105201621.03801.arnd@arndb.de> (raw)
In-Reply-To: <4DD66B8A.5040404-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>

On Friday 20 May 2011 15:24:26 Rob Herring wrote:
> Maybe we are looking this in the wrong way.
> 
> AMBA is not really the bus, but certain types of devices on the bus. 
> Granted, it may actually be an AMBA bus vs. vendor bus (i.MX AIPS), but 
> that is really transparent to s/w. Separating AMBA devices in the 
> devicetree is really Linux requirements defining the devicetree 
> structure. It is certainly conceivable that an OS could make no 
> distinction. In my case, there is a mixture of regular platform devices 
> and AMBA(Primecell really) devices all interleaved on the same bus.

I don't see how that would work. If the bus is AMBA, it should
only have AMBA devices on it, otherwise how would they be connected?

Whether software is supposed to know care about this is a different
question. The device tree should generally reflect the block
diagram of the hardware, and I would expect the AMBA devices be
on a different level from the rest there.

> Based on this, I think of_platform_populate should always just match 
> against "simple-bus" and make the matches parameter define the device 
> creation hook rather than the bus type. Or you could have both 
> bus_matches and dev_matches parameters.

I think it would be much better to only look at the parent bus for
device to add, never at the device itself. 

If the bus is AMBA, add all devices as amba_device, if it's simple-bus,
add all devices as platform_device.

	Arnd

WARNING: multiple messages have this Message-ID (diff)
From: arnd@arndb.de (Arnd Bergmann)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 2/2] drivers/amba: probe via device tree
Date: Fri, 20 May 2011 16:21:03 +0200	[thread overview]
Message-ID: <201105201621.03801.arnd@arndb.de> (raw)
In-Reply-To: <4DD66B8A.5040404@gmail.com>

On Friday 20 May 2011 15:24:26 Rob Herring wrote:
> Maybe we are looking this in the wrong way.
> 
> AMBA is not really the bus, but certain types of devices on the bus. 
> Granted, it may actually be an AMBA bus vs. vendor bus (i.MX AIPS), but 
> that is really transparent to s/w. Separating AMBA devices in the 
> devicetree is really Linux requirements defining the devicetree 
> structure. It is certainly conceivable that an OS could make no 
> distinction. In my case, there is a mixture of regular platform devices 
> and AMBA(Primecell really) devices all interleaved on the same bus.

I don't see how that would work. If the bus is AMBA, it should
only have AMBA devices on it, otherwise how would they be connected?

Whether software is supposed to know care about this is a different
question. The device tree should generally reflect the block
diagram of the hardware, and I would expect the AMBA devices be
on a different level from the rest there.

> Based on this, I think of_platform_populate should always just match 
> against "simple-bus" and make the matches parameter define the device 
> creation hook rather than the bus type. Or you could have both 
> bus_matches and dev_matches parameters.

I think it would be much better to only look at the parent bus for
device to add, never at the device itself. 

If the bus is AMBA, add all devices as amba_device, if it's simple-bus,
add all devices as platform_device.

	Arnd

  parent reply	other threads:[~2011-05-20 14:21 UTC|newest]

Thread overview: 70+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-19 18:28 [PATCH v2 0/2] amba bus device tree probing Rob Herring
2011-05-19 18:28 ` Rob Herring
     [not found] ` <1305829704-11774-1-git-send-email-robherring2-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2011-05-19 18:28   ` [PATCH 1/2] dt: check for devices already created fron DT scan Rob Herring
2011-05-19 18:28     ` Rob Herring
     [not found]     ` <1305829704-11774-2-git-send-email-robherring2-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2011-05-19 19:54       ` Grant Likely
2011-05-19 19:54         ` Grant Likely
2011-05-19 18:28   ` [PATCH 2/2] drivers/amba: probe via device tree Rob Herring
2011-05-19 18:28     ` Rob Herring
     [not found]     ` <1305829704-11774-3-git-send-email-robherring2-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2011-05-19 20:01       ` Grant Likely
2011-05-19 20:01         ` Grant Likely
     [not found]         ` <20110519200158.GW5109-e0URQFbLeQY2iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2011-05-19 23:30           ` Rob Herring
2011-05-19 23:30             ` Rob Herring
2011-05-19 23:39             ` Grant Likely
2011-05-19 23:39               ` Grant Likely
     [not found]               ` <20110519233958.GB18181-e0URQFbLeQY2iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2011-05-20 13:24                 ` Rob Herring
2011-05-20 13:24                   ` Rob Herring
     [not found]                   ` <4DD66B8A.5040404-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2011-05-20 14:21                     ` Arnd Bergmann [this message]
2011-05-20 14:21                       ` Arnd Bergmann
     [not found]                       ` <201105201621.03801.arnd-r2nGTMty4D4@public.gmane.org>
2011-05-20 15:17                         ` Rob Herring
2011-05-20 15:17                           ` Rob Herring
     [not found]                           ` <4DD68614.6090209-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2011-05-20 16:08                             ` Stephen Neuendorffer
2011-05-20 16:08                               ` Stephen Neuendorffer
2011-05-21 17:42                               ` Grant Likely
2011-05-21 17:42                                 ` Grant Likely
2011-05-21 23:47                                 ` Russell King - ARM Linux
2011-05-21 23:47                                   ` Russell King - ARM Linux
2011-05-21 23:47                                   ` Russell King - ARM Linux
2011-05-22 10:00                                   ` Rafael J. Wysocki
2011-05-22 10:00                                     ` Rafael J. Wysocki
2011-05-22 10:00                                     ` Rafael J. Wysocki
2011-05-22 15:46                                   ` Rob Herring
2011-05-22 15:46                                     ` Rob Herring
2011-05-22 15:46                                     ` Rob Herring
2011-05-23 15:23                                   ` Grant Likely
2011-05-23 15:23                                     ` Grant Likely
2011-05-22 10:03                                 ` Arnd Bergmann
2011-05-22 10:03                                   ` Arnd Bergmann
2011-05-22 10:03                                   ` Arnd Bergmann
2011-05-25  9:03                                   ` Linus Walleij
2011-05-25  9:03                                     ` Linus Walleij
2011-05-23  9:37                                 ` Kristoffer Glembo
2011-05-23  9:37                                   ` Kristoffer Glembo
2011-05-23  9:37                                   ` Kristoffer Glembo
2011-05-23  9:58                                   ` Russell King - ARM Linux
2011-05-23  9:58                                     ` Russell King - ARM Linux
2011-05-23 15:09                                     ` Grant Likely
2011-05-23 15:09                                       ` Grant Likely
2011-05-23 15:09                                       ` Grant Likely
2011-05-24 15:03                                       ` Rob Herring
2011-05-24 15:03                                         ` Rob Herring
2011-05-24 15:03                                         ` Rob Herring
2011-05-25  3:02                                         ` Shawn Guo
2011-05-25  3:02                                           ` Shawn Guo
2011-05-25  3:02                                           ` Shawn Guo
2011-05-25  9:07                                         ` Linus Walleij
2011-05-25  9:07                                           ` Linus Walleij
     [not found]                               ` <a42f0c27-2811-4b68-bedf-7dfaa7bff6ff-+Ck8Kgl/v0/6UOWq+LNw4LjjLBE8jN/0@public.gmane.org>
2011-05-21 23:35                                 ` Russell King - ARM Linux
2011-05-21 23:35                                   ` Russell King - ARM Linux
     [not found]                                   ` <20110521233558.GA17672-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2011-05-23 15:00                                     ` Stephen Neuendorffer
2011-05-23 15:00                                       ` Stephen Neuendorffer
     [not found]                                       ` <1007bcf2-7786-4f03-bff7-8d8af83939f1-+Ck8Kgl/v0+GljRhoabY2LjjLBE8jN/0@public.gmane.org>
2011-05-23 15:47                                         ` Russell King - ARM Linux
2011-05-23 15:47                                           ` Russell King - ARM Linux
2011-05-21  4:00                             ` Segher Boessenkool
2011-05-21  4:00                               ` Segher Boessenkool
     [not found]                               ` <80f20ac921a33e9f0bf3e249f539a8ef-XVmvHMARGAS8U2dJNN8I7kB+6BGkLq7r@public.gmane.org>
2011-05-21 14:55                                 ` Rob Herring
2011-05-21 14:55                                   ` Rob Herring
     [not found]                                   ` <4DD7D24D.2070604-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2011-05-21 15:18                                     ` Segher Boessenkool
2011-05-21 15:18                                       ` Segher Boessenkool
     [not found]                                       ` <ad5605c2a3d4b36f63f36f52afe89cfd-XVmvHMARGAS8U2dJNN8I7kB+6BGkLq7r@public.gmane.org>
2011-05-21 17:43                                         ` Grant Likely
2011-05-21 17:43                                           ` Grant Likely

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=201105201621.03801.arnd@arndb.de \
    --to=arnd-r2ngtmty4d4@public.gmane.org \
    --cc=devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org \
    --cc=jeremy.kerr-Z7WLFzj8eWMS+FvcfC7Uqw@public.gmane.org \
    --cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@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.