All of lore.kernel.org
 help / color / mirror / Atom feed
From: Greg KH <greg@kroah.com>
To: Arend van Spriel <arend@broadcom.com>
Cc: "Rafał Miłecki" <zajec5@gmail.com>,
	"Arnd Bergmann" <arnd@arndb.de>,
	"George Kashperko" <george@znau.edu.ua>,
	"Hauke Mehrtens" <hauke@hauke-m.de>,
	"Russell King" <rmk@arm.linux.org.uk>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-wireless@vger.kernel.org" <linux-wireless@vger.kernel.org>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>,
	"Jonas Gorski" <jonas.gorski@gmail.com>,
	"b43-dev@lists.infradead.org" <b43-dev@lists.infradead.org>,
	"Andy Botting" <andy@andybotting.com>,
	"Larry Finger" <Larry.Finger@lwfinger.net>
Subject: Re: Could I (ab)use bus (struct bus_type) for virtual Broadcom bus?
Date: Tue, 19 Apr 2011 07:02:57 -0700	[thread overview]
Message-ID: <20110419140257.GA20456@kroah.com> (raw)
In-Reply-To: <op.vt6ufu1n3ri7v4@arend-laptop>

On Tue, Apr 19, 2011 at 03:58:32PM +0200, Arend van Spriel wrote:
> On Sun, 17 Apr 2011 19:38:12 +0200, Arnd Bergmann <arnd@arndb.de> wrote:
> 
> Hi Rafał,
> 
> As you probably expected I tried to integrate and use your bcmai/bcmaxi/?
> driver with our brcm80211 driver (making progress). In the mean time
> I tried to follow the discussions going on, but I am still catching
> up.
> 
> >Compare this to the PCI bus type, which essentially deals with devices
> >that have a PCI configuration space that contains generic (irq, memory,
> >vendor/device ID, ...) registers along with device specific registers.
> 
> How much alike is the (BCM)AXI bus type? My assumption was that each
> registered PCI device is handled by a single driver module. In the
> current(?) bcmai implementation each device driver is called with the
> appropriate device structure reference, but it will also have the bus
> structure reference and through that can also access other cores on the
> (bcm)axi bus. This seems to me a potential issue when there are no
> synchronization mechanisms in place (whether in a SoC configuration or
> PCI-hosted). Does the PCI bus type allow driver for device A access
> device B?
> 
> >A new bus_type really only makes sense if you expect a lot of devices
> >to use this and you want to have the probing in the bus. If you only
> >want to have a way to enumerate devices that get created by the
> >parent driver, you can also use platform devices.
> 
> The main assumption of the (bcm)axi driver seems to be that each core can
> be considered as a device. Correct me if I am wrong, but I consider a
> device to be an entity providing a particular system function. So an
> ethernet device provides ethernet connectivity function, a mixer device
> provides sound mixing function, and so on. The cores within a chip are not
> always self-contained like this. To clarify let's say a system function is
> realized by programming core A, core B, and finally trigger core A to set
> the function in motion. This implies the need of coordination between the
> programming steps on those cores.
> 
> Is my view on what is a device wrong? Does a platform device differ in
> this respect from a regular device?

Please don't use a platform device, unless there is no other way for
your device to work.  For this device, you are connected to the PCI bus,
so a platform device does not make sense at all.

thanks,

greg k-h

WARNING: multiple messages have this Message-ID (diff)
From: greg@kroah.com (Greg KH)
To: linux-arm-kernel@lists.infradead.org
Subject: Could I (ab)use bus (struct bus_type) for virtual Broadcom bus?
Date: Tue, 19 Apr 2011 07:02:57 -0700	[thread overview]
Message-ID: <20110419140257.GA20456@kroah.com> (raw)
In-Reply-To: <op.vt6ufu1n3ri7v4@arend-laptop>

On Tue, Apr 19, 2011 at 03:58:32PM +0200, Arend van Spriel wrote:
> On Sun, 17 Apr 2011 19:38:12 +0200, Arnd Bergmann <arnd@arndb.de> wrote:
> 
> Hi Rafa?,
> 
> As you probably expected I tried to integrate and use your bcmai/bcmaxi/?
> driver with our brcm80211 driver (making progress). In the mean time
> I tried to follow the discussions going on, but I am still catching
> up.
> 
> >Compare this to the PCI bus type, which essentially deals with devices
> >that have a PCI configuration space that contains generic (irq, memory,
> >vendor/device ID, ...) registers along with device specific registers.
> 
> How much alike is the (BCM)AXI bus type? My assumption was that each
> registered PCI device is handled by a single driver module. In the
> current(?) bcmai implementation each device driver is called with the
> appropriate device structure reference, but it will also have the bus
> structure reference and through that can also access other cores on the
> (bcm)axi bus. This seems to me a potential issue when there are no
> synchronization mechanisms in place (whether in a SoC configuration or
> PCI-hosted). Does the PCI bus type allow driver for device A access
> device B?
> 
> >A new bus_type really only makes sense if you expect a lot of devices
> >to use this and you want to have the probing in the bus. If you only
> >want to have a way to enumerate devices that get created by the
> >parent driver, you can also use platform devices.
> 
> The main assumption of the (bcm)axi driver seems to be that each core can
> be considered as a device. Correct me if I am wrong, but I consider a
> device to be an entity providing a particular system function. So an
> ethernet device provides ethernet connectivity function, a mixer device
> provides sound mixing function, and so on. The cores within a chip are not
> always self-contained like this. To clarify let's say a system function is
> realized by programming core A, core B, and finally trigger core A to set
> the function in motion. This implies the need of coordination between the
> programming steps on those cores.
> 
> Is my view on what is a device wrong? Does a platform device differ in
> this respect from a regular device?

Please don't use a platform device, unless there is no other way for
your device to work.  For this device, you are connected to the PCI bus,
so a platform device does not make sense at all.

thanks,

greg k-h

  reply	other threads:[~2011-04-19 14:03 UTC|newest]

Thread overview: 90+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-04-14 11:28 Could I (ab)use bus (struct bus_type) for virtual Broadcom bus? Rafał Miłecki
2011-04-14 11:28 ` Rafał Miłecki
2011-04-14 11:28 ` Rafał Miłecki
2011-04-14 11:43 ` George Kashperko
2011-04-14 11:43   ` George Kashperko
2011-04-14 12:04   ` Rafał Miłecki
2011-04-14 12:04     ` Rafał Miłecki
2011-04-14 12:04     ` Rafał Miłecki
2011-04-14 12:34     ` Hauke Mehrtens
2011-04-14 12:34       ` Hauke Mehrtens
2011-04-14 12:34       ` Hauke Mehrtens
2011-04-14 13:07       ` Rafał Miłecki
2011-04-14 13:07         ` Rafał Miłecki
2011-04-14 13:07         ` Rafał Miłecki
2011-04-14 13:15         ` George Kashperko
2011-04-14 13:15           ` George Kashperko
2011-04-14 13:45           ` Rafał Miłecki
2011-04-14 13:45             ` Rafał Miłecki
2011-04-14 13:45             ` Rafał Miłecki
2011-04-15 18:36             ` George Kashperko
2011-04-15 18:36               ` George Kashperko
2011-04-15 19:21               ` Rafał Miłecki
2011-04-15 19:21                 ` Rafał Miłecki
2011-04-15 19:21                 ` Rafał Miłecki
2011-04-15 19:42                 ` George Kashperko
2011-04-15 19:42                   ` George Kashperko
2011-04-15 19:52                   ` Rafał Miłecki
2011-04-15 19:52                     ` Rafał Miłecki
2011-04-15 19:52                     ` Rafał Miłecki
2011-04-15 19:56                     ` Peter Stuge
2011-04-15 19:56                       ` Peter Stuge
2011-04-15 19:56                       ` Peter Stuge
2011-04-16 14:00                       ` Rafał Miłecki
2011-04-16 14:00                         ` Rafał Miłecki
2011-04-16 14:00                         ` Rafał Miłecki
2011-04-16 14:13                         ` Jonas Gorski
2011-04-16 14:13                           ` Jonas Gorski
2011-04-16 14:13                           ` Jonas Gorski
2011-04-15 19:50                 ` George Kashperko
2011-04-15 19:50                   ` George Kashperko
2011-04-17 17:38                 ` Arnd Bergmann
2011-04-17 17:38                   ` Arnd Bergmann
2011-04-18 12:19                   ` Rafał Miłecki
2011-04-18 12:19                     ` Rafał Miłecki
2011-04-18 12:19                     ` Rafał Miłecki
2011-04-18 14:19                     ` Arnd Bergmann
2011-04-18 14:19                       ` Arnd Bergmann
2011-04-18 14:31                       ` Rafał Miłecki
2011-04-18 14:31                         ` Rafał Miłecki
2011-04-18 14:31                         ` Rafał Miłecki
2011-04-18 15:35                         ` George Kashperko
2011-04-18 15:35                           ` George Kashperko
2011-04-18 15:53                           ` Rafał Miłecki
2011-04-18 15:53                             ` Rafał Miłecki
2011-04-18 15:53                             ` Rafał Miłecki
2011-04-18 16:48                             ` George Kashperko
2011-04-18 16:48                               ` George Kashperko
2011-04-19 13:46                         ` Arnd Bergmann
2011-04-19 13:46                           ` Arnd Bergmann
2011-04-19 13:58                   ` Arend van Spriel
2011-04-19 13:58                     ` Arend van Spriel
2011-04-19 14:02                     ` Greg KH [this message]
2011-04-19 14:02                       ` Greg KH
2011-04-20  6:39                       ` Arend van Spriel
2011-04-20  6:39                         ` Arend van Spriel
2011-04-20  6:44                         ` Arnd Bergmann
2011-04-20  6:44                           ` Arnd Bergmann
2011-04-19 14:20                     ` Rafał Miłecki
2011-04-19 14:20                       ` Rafał Miłecki
2011-04-19 14:20                       ` Rafał Miłecki
2011-04-19 14:35                     ` Arnd Bergmann
2011-04-19 14:35                       ` Arnd Bergmann
2011-04-20  7:16                       ` Arend van Spriel
2011-04-20  7:16                         ` Arend van Spriel
2011-04-20  7:26                         ` Arnd Bergmann
2011-04-20  7:26                           ` Arnd Bergmann
2011-04-20  7:57                           ` Arend van Spriel
2011-04-20  7:57                             ` Arend van Spriel
2011-04-20  7:29                         ` Rafał Miłecki
2011-04-20  7:29                           ` Rafał Miłecki
2011-04-20  7:29                           ` Rafał Miłecki
2011-05-05 12:33                           ` AXI driver status => previously: " Arend van Spriel
2011-05-05 12:33                             ` Arend van Spriel
2011-05-05 12:48                             ` Rafał Miłecki
2011-05-05 12:48                               ` Rafał Miłecki
2011-05-05 12:48                               ` Rafał Miłecki
2011-05-05 12:54                               ` Arend van Spriel
2011-05-05 12:54                                 ` Arend van Spriel
2011-04-14 13:03     ` George Kashperko
2011-04-14 13:03       ` George Kashperko

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=20110419140257.GA20456@kroah.com \
    --to=greg@kroah.com \
    --cc=Larry.Finger@lwfinger.net \
    --cc=andy@andybotting.com \
    --cc=arend@broadcom.com \
    --cc=arnd@arndb.de \
    --cc=b43-dev@lists.infradead.org \
    --cc=george@znau.edu.ua \
    --cc=hauke@hauke-m.de \
    --cc=jonas.gorski@gmail.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=rmk@arm.linux.org.uk \
    --cc=zajec5@gmail.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.