devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Rob Herring <robh+dt@kernel.org>
To: Arnd Bergmann <arnd@arndb.de>
Cc: Linus Walleij <linus.walleij@linaro.org>,
	"moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE"
	<linux-arm-kernel@lists.infradead.org>,
	devicetree@vger.kernel.org, dev@lists.96boards.org,
	John Stultz <john.stultz@linaro.org>,
	Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>,
	Mark Rutland <mark.rutland@arm.com>,
	Frank Rowand <frowand.list@gmail.com>,
	Mark Brown <broonie@kernel.org>,
	Michal Simek <michal.simek@xilinx.com>,
	Andy Shevchenko <andy@infradead.org>,
	Mika Westerberg <mika.westerberg@linux.intel.com>
Subject: Re: [PATCH 0/5] RFC: Mezzanine handling for 96boards
Date: Mon, 16 Jul 2018 09:07:11 -0600	[thread overview]
Message-ID: <CAL_JsqJM1APEXt3HECSn=pcMKQfD5BWzDkbr03kcaWHuD-=dLw@mail.gmail.com> (raw)
In-Reply-To: <CAK8P3a2KqoX-squhGc8TBuJ==8xxELsuy-H+c1+C7Fu7Z4OjDA@mail.gmail.com>

On Mon, Jun 18, 2018 at 6:21 AM, Arnd Bergmann <arnd@arndb.de> wrote:
> On Mon, Jun 18, 2018 at 9:45 AM, Linus Walleij <linus.walleij@linaro.org> wrote:
>> This is a proposal for how to handle the non-discoverable
>> 96boards plug-in expansion boards called "mezzanines" in the
>> Linux kernel. It is a working RFC series meant for discussion
>> at the moment.
>>
>> The RFC was done on the brand new Ultra96 board from Xilinx
>> with a Secure96 mezzanine expansion board. The main part
>> is in patch 4, the rest is enabling and examples.
>>
>> The code can be obtained from here:
>> https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-integrator.git/log/?h=ultra96
>>
>> You can for example probably augment the DTS file for any
>> upstream-supported 96board and get the Secure96 going with
>> it with minor efforts.
>
> Hi Linus,
>
> Thanks for your work on solving this long-standing problem. I've just
> read through your patches briefly and have a few thoughts:
>
> - I really like the idea of having C code deal with the mezzanine
>   connector itself, acting as an intermediate to tie a number of
>   boards to a number of add-on cards, this seems much simpler than
>   trying to do everything with overlays or one of the other more
>   generic mechanisms.

Certainly we need at least some code to trigger probing devices under a connector. I suspect some connectors can be handled generically and some will need connector specific drivers.

> - I don't like the idea of having the bus driver contain a list of possible
>   add-ons, this seems to go against our usual driver model. What
>   I think we want instead is to make the connector itself a proper
>   bus_type, to allow drivers to register against it as loadable modules,
>   and devices (maybe limited to one device) being created as probed
>   from DT or some other method as you describe.

Why a bus versus just a platform device? The infrastructure is already there to instantiate platform devices and match to compatible strings and a platform driver can create child devices. So what would we gain from a new bus?

We have 2 cases to consider I think: discoverable and non-discoverable boards. But discoverable here only provides us what overlay to load and/or driver to enumerate.

>
> - You export symbols in the mezzanine_* namespace, which I think
>    is a bit too generic and should perhaps contain something related
>    to  96boards in its name to make it less ambiguous. I suspect we
>    would add a number of further connectors for hats, capes, lures etc,
>    which could all be described as mezzanines. One open question
>    is how we structure the commonality between the various
>    connectors, but we can defer that until we have more than one
>    or two of them.
>
>           Arnd

  parent reply	other threads:[~2018-07-16 15:07 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-06-18  7:45 [PATCH 0/5] RFC: Mezzanine handling for 96boards Linus Walleij
2018-06-18  7:45 ` [PATCH 1/5] RFC: gpio: Add API to explicitly name a consumer Linus Walleij
2018-06-18  7:45 ` [PATCH 2/5] RFC: eeprom: at24: Allow passing gpiodesc from pdata Linus Walleij
2018-06-20  0:45   ` Andy Shevchenko
2018-06-18  7:45 ` [PATCH 3/5] RFC: spi: Make of_find_spi_device_by_node() available Linus Walleij
2018-06-18  7:45 ` [PATCH 4/5] RFC: bus: 96boards Low-Speed Connector Linus Walleij
2018-06-19 11:19   ` [Dev] " Daniel Thompson
2018-06-18  7:45 ` [PATCH 5/5] RFC: ARM64: dts: Add Low-Speed Connector to ZCU100 Linus Walleij
2018-06-19 14:55   ` Rob Herring
2018-06-22 13:22   ` Michal Simek
2018-06-18 12:21 ` [PATCH 0/5] RFC: Mezzanine handling for 96boards Arnd Bergmann
2018-06-18 13:22   ` Ard Biesheuvel
2018-06-18 14:15     ` Arnd Bergmann
2018-06-22 13:36       ` Michal Simek
2018-06-19 15:14     ` [Dev] " Yang Zhang
2018-06-19 15:25       ` Ard Biesheuvel
2018-06-19 15:26         ` Yang Zhang
2018-06-19 15:30           ` Ard Biesheuvel
2018-06-19 15:32             ` Yang Zhang
2018-06-22 13:08               ` Michal Simek
2018-06-26  9:10                 ` Linus Walleij
2018-06-26  8:09     ` Linus Walleij
2018-06-26  8:19       ` Ard Biesheuvel
2018-06-26  8:36         ` Linus Walleij
2018-06-26  8:02   ` Linus Walleij
2018-06-26  8:08     ` Arnd Bergmann
2018-06-26 12:12     ` Mark Brown
2018-07-16 15:07   ` Rob Herring [this message]
2018-06-19 11:10 ` [Dev] " Daniel Thompson
2018-06-19 11:56   ` Mark Brown
2018-06-19 15:52 ` Rob Herring
2018-06-21 13:02   ` Frank Rowand
2018-06-26  9:03     ` Linus Walleij
2018-06-26  9:00   ` Linus Walleij
2018-06-27 15:23     ` [Dev] " Rob Herring
2018-06-28  6:10       ` Michal Simek
2018-06-21 12:58 ` Frank Rowand

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='CAL_JsqJM1APEXt3HECSn=pcMKQfD5BWzDkbr03kcaWHuD-=dLw@mail.gmail.com' \
    --to=robh+dt@kernel.org \
    --cc=andy@infradead.org \
    --cc=arnd@arndb.de \
    --cc=broonie@kernel.org \
    --cc=dev@lists.96boards.org \
    --cc=devicetree@vger.kernel.org \
    --cc=frowand.list@gmail.com \
    --cc=john.stultz@linaro.org \
    --cc=linus.walleij@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=manivannan.sadhasivam@linaro.org \
    --cc=mark.rutland@arm.com \
    --cc=michal.simek@xilinx.com \
    --cc=mika.westerberg@linux.intel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).