lkml.org 
[lkml]   [2015]   [Feb]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRE: [PATCH 0/3 v6] drivers/bus: Freescale Management Complex bus driver patch series
Date


> -----Original Message-----
> From: Alexander Graf [mailto:agraf@suse.de]
> Sent: Thursday, February 26, 2015 8:33 AM
> To: Yoder Stuart-B08248; arnd@arndb.de
> Cc: Rivera Jose-B46482; linux-kernel@vger.kernel.org; gregkh@linuxfoundation.org
> Subject: Re: [PATCH 0/3 v6] drivers/bus: Freescale Management Complex bus driver patch series
>
>
>
> On 27.01.15 15:35, Stuart Yoder wrote:
> > Hi Arnd/Alex,
> >
> > German has posted an example driver for the fsl-mc bus in his RFC
> > "[RFC PATCH 1/1] drivers/bus: fsl-mc object allocator driver".
> >
> > In addition I have made available the skeleton for a driver for
> > one of the objects/devices (crypto) that will be discovered on
> > the bus:
> > https://github.com/stuyoder/linux
> > branch: fsl-ms-bus
> >
> > ...it is not functional yet, but shows how a driver registers with
> > the bus, get's probed, performs initialization.
>
> Ok, so if I grasp this correctly the idea is that we have a driver
> attaching to an individual device on the fsl-mc bus.

Yes.

> That driver then
> goes and allocates / blocks more devices from that bus as it initializes.

Yes, there are certain devices/objects on the bus that by themselves
are not standalone, functional devices. An example is a "buffer pool".
Network interface drivers, crypto driver, decompression driver, etc need
one or more hardware buffer pools. There is a buffer depletion interrupt
associated with the device.

The buffer pools itself binds to a resource allocation driver in
the kernel, which then can hand out buffer pools as required by
other drivers.

> Is that model always possible?

Yes, why would it not be?

> Which device would a NIC bind to for
> example?

Network interface / Ethernet driver requires some number
of buffer pools, plus a management complex portal device
(DPMCP) used for sending commands to manage the hardware.

> I merely want to make sure we're not running ourselves into a
> bad corner ;).

If we are, I would like to understand it. :)

Thanks,
Stuart


\
 
 \ /
  Last update: 2015-02-26 21:41    [W:0.095 / U:0.892 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site