From: Russell King - ARM Linux <linux@arm.linux.org.uk>
To: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: David Miller <davem@davemloft.net>,
scottwood@freescale.com, devicetree-discuss@ozlabs.org,
linux-kernel@vger.kernel.org, timur@freescale.com,
yuan-bo.ye@motorola.com, linux-arm-kernel@lists.arm.linux.org.uk
Subject: Re: [RFC] [PATCH] Device Tree on ARM platform
Date: Thu, 28 May 2009 11:34:21 +0100 [thread overview]
Message-ID: <20090528103421.GC14789@n2100.arm.linux.org.uk> (raw)
In-Reply-To: <1243505493.5573.29.camel@pasglop>
On Thu, May 28, 2009 at 08:11:33PM +1000, Benjamin Herrenschmidt wrote:
> Well, that example is interesting because you may not want the
> transceiver to be a child of the UART :-) The tree hierachy is mostly
> about addressing, and addressing below a UART doesn't mean much.
>
> So if the transceiver has a bunch of MMIO registers, it might be better
> off located elsewhere, and have the UART have a "fir-transceiver"
> property with a phandle to the actual device...
IrDA transceivers do not have MMIO registers. Transceivers are an IR
LED, an IR phototransitor and receiver circuitry. They're typically
9 pin devices with power, ground, transmit, receive and a bunch of
control signals.
These control signals end up connected to some random GPIO pins or
FPGA or some other device which has some free IO lines in the platform.
These control signals need to be controlled with reference to the IrDA
driver, sometimes with tight timing constraints (particularly when
switching between SIR and FIR modes.)
> But yes, I definitely agree, it's flexible enough for a lot of that
> stuff. Where things get tricky is to express "methods" rather than just
> relationships. This is where x86 loses big time with ACPI, Apple lost
> with their platform functions in OF properties, and appart from having a
> real OF implementation under the hood that is kept alive along with the
> kernel to call in, the tree doesn't provide a simple solution.
>
> However, it doesn't either invalidate existing solutions based on
> function pointers into the platform code... it might even make it nicer
> by naming those functions into some kind of directory where they can be
> registered by the platform code and "named" by a property in the node,
> though I tend to prefer the approach of having a property with a phandle
> to a node that is a pseudo-device ("power-control") or so, which has its
> own driver providing the methods.
The kind of reply I was hoping to get to my email was something more
along these lines - an informed view giving an idea how some of these
issues would be addressed with an OF device tree.
I can see how the named functions/directory would work - that seems to
be relatively simple and straight forward.
However, the pseudo-device approach I'm less clear about. With a separate
driver for the "power control" pseudo-device, how would you communicate
the state information down to that driver?
I am equating OF devices and drivers too much with the struct device and
struct driver model, which sounds like it's not the best thing to do with
OF.
-------------------------------------------------------------------
List admin: http://lists.arm.linux.org.uk/mailman/listinfo/linux-arm-kernel
FAQ: http://www.arm.linux.org.uk/mailinglists/faq.php
Etiquette: http://www.arm.linux.org.uk/mailinglists/etiquette.php
next prev parent reply other threads:[~2009-05-28 10:34 UTC|newest]
Thread overview: 142+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1243408083.13460.14.camel@debian-nb>
2009-05-27 14:27 ` [RFC] [PATCH] Device Tree on ARM platform Grant Likely
2009-05-27 14:39 ` Timur Tabi
[not found] ` <ed82fe3e0905270739k38018c87ka11f62c5977e45fb-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-05-27 15:05 ` Robert Schwebel
2009-05-27 16:32 ` Mark Brown
2009-05-27 18:50 ` Jon Smirl
[not found] ` <9e4733910905271150q1d51538draa8d039c8b147c05-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-05-27 22:24 ` Mark Brown
[not found] ` <20090527222420.GC5591-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2009-05-28 0:04 ` Jon Smirl
2009-05-28 13:07 ` Mark Brown
[not found] ` <20090527163223.GE1970-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2009-05-27 20:42 ` Grant Likely
[not found] ` <fa686aa40905271342v5bc51665tb9b5d92950a43b82-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-05-27 21:38 ` Mark Brown
[not found] ` <20090527150527.GK6805-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2009-05-27 15:39 ` Grant Likely
[not found] ` <fa686aa40905270839m375bbdacqb1acb1be0a2d2da0-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-05-27 16:20 ` Robert Schwebel
[not found] ` <20090527162000.GM6805-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2009-05-27 20:35 ` Grant Likely
[not found] ` <fa686aa40905271335o1165419hda2334bef42aa3f-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-05-27 23:48 ` Robert Schwebel
[not found] ` <20090527234801.GP6805-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2009-05-27 23:52 ` David Miller
2009-05-27 23:58 ` Scott Wood
[not found] ` <4A1DD3A0.3010501-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
2009-05-28 0:02 ` David Miller
2009-05-28 0:07 ` Robert Schwebel
[not found] ` <20090528000707.GR6805-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2009-05-28 0:15 ` David Miller
[not found] ` <20090527.171525.204909140.davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
2009-05-28 10:37 ` Mark Brown
[not found] ` <20090528103745.GA19523-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2009-05-28 22:32 ` Grant Likely
2009-05-29 12:34 ` Mark Brown
[not found] ` <20090529123411.GB14650-HF5t3jzXg/6ND3a5+9QAFujbO/Zr0HzV@public.gmane.org>
2009-05-30 9:52 ` Benjamin Herrenschmidt
2009-05-30 10:21 ` Russell King - ARM Linux
[not found] ` <20090530102153.GA6910-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2009-05-30 17:56 ` Mark Brown
2009-06-02 7:57 ` Holger Schurig
[not found] ` <200906020957.20493.hs4233-x6+DxXLjN1AJvtFkdXX2Hg4jNU5vUVPG@public.gmane.org>
2009-06-02 9:48 ` Mark Brown
2009-05-28 2:57 ` David Gibson
[not found] ` <20090528025718.GC1464-787xzQ0H9iRg7VrjXcPTGA@public.gmane.org>
2009-05-28 3:36 ` Grant Likely
2009-05-28 3:29 ` Grant Likely
2009-05-28 9:51 ` Wolfgang Denk
[not found] ` <20090528095126.99DB4832E416-C2Gvrrd9BC/j/ljBK/0BTg@public.gmane.org>
2009-05-28 9:59 ` David Miller
2009-05-28 10:13 ` Robert Schwebel
[not found] ` <20090528101339.GV6805-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2009-05-28 13:33 ` Jon Smirl
[not found] ` <9e4733910905280633u15546189q37a4b4080158249c-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-05-28 13:42 ` Robert Schwebel
2009-05-28 9:38 ` Wolfgang Denk
2009-05-28 3:21 ` Grant Likely
2009-05-28 3:16 ` Grant Likely
2009-05-28 0:55 ` Stephen Neuendorffer
2009-05-27 18:56 ` Alexander Clouter
[not found] ` <2ve0f6-8fn.ln1-kuKQLpWnKMRB2HF5bZY0Orm56z/blAVA@public.gmane.org>
2009-05-27 20:46 ` Grant Likely
2009-05-27 21:32 ` Alexander Clouter
2009-05-28 14:29 ` Dmitry Eremin-Solenikov
2009-05-27 15:41 ` Peter Korsgaard
[not found] ` <87vdnm8sec.fsf-uXGAPMMVk8amE9MCos8gUmSdvHPH+/yF@public.gmane.org>
2009-05-27 16:23 ` Scott Wood
2009-05-27 17:56 ` Russell King
[not found] ` <20090527175609.GB31861-f404yB8NqCZvn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2009-05-27 19:08 ` Scott Wood
[not found] ` <4A1D8FBA.6040802-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
2009-05-27 19:13 ` Jon Smirl
2009-05-27 19:21 ` Russell King - ARM Linux
[not found] ` <20090527192116.GA31110-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2009-05-27 19:39 ` Jean-Christophe PLAGNIOL-VILLARD
[not found] ` <20090527193927.GD30039-RQcB7r2h9QmfDR2tN2SG5Ni2O/JbrIOy@public.gmane.org>
2009-05-27 20:22 ` Grant Likely
[not found] ` <fa686aa40905271322x2f62c3dcs355374b30b4db3ca-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-05-27 20:19 ` Jean-Christophe PLAGNIOL-VILLARD
[not found] ` <20090527201951.GF30039-RQcB7r2h9QmfDR2tN2SG5Ni2O/JbrIOy@public.gmane.org>
2009-05-27 20:54 ` Grant Likely
[not found] ` <fa686aa40905271354y50b9583cp9f53c35354edc285-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-05-28 3:04 ` David Gibson
2009-05-28 7:58 ` Benjamin Herrenschmidt
2009-05-27 23:57 ` Robert Schwebel
[not found] ` <20090527235704.GQ6805-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2009-05-28 0:00 ` David Miller
2009-05-28 3:21 ` Grant Likely
[not found] ` <fa686aa40905272021w18a148caqd2b73c4448da2b28-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-05-28 6:34 ` Wolfram Sang
[not found] ` <20090528063445.GA12004-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2009-05-28 7:55 ` Benjamin Herrenschmidt
2009-05-28 13:34 ` Grant Likely
2009-05-28 7:48 ` Benjamin Herrenschmidt
2009-05-28 14:22 ` Ben Dooks
2009-05-27 20:28 ` David Miller
[not found] ` <20090527.132827.65331718.davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
2009-05-27 20:31 ` Jean-Christophe PLAGNIOL-VILLARD
2009-05-28 2:52 ` David Gibson
[not found] ` <20090528025258.GB1464-787xzQ0H9iRg7VrjXcPTGA@public.gmane.org>
2009-05-28 4:27 ` David Miller
[not found] ` <20090527.212730.183576278.davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
2009-05-28 4:47 ` David Gibson
[not found] ` <20090528044732.GK1464-787xzQ0H9iRg7VrjXcPTGA@public.gmane.org>
2009-05-28 5:31 ` David Miller
[not found] ` <20090527.223147.94364683.davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
2009-05-28 5:47 ` David Gibson
2009-05-28 7:47 ` Benjamin Herrenschmidt
2009-05-28 14:17 ` Ben Dooks
2009-05-28 14:24 ` Robert Schwebel
[not found] ` <20090528141743.GA16199-SMNkleLxa3Z6Wcw2j4pizdi2O/JbrIOy@public.gmane.org>
2009-05-28 14:47 ` Grant Likely
2009-05-27 19:29 ` Russell King
2009-05-27 19:47 ` Sergei Shtylyov
[not found] ` <20090527192909.GA32398-f404yB8NqCZvn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2009-05-27 19:53 ` Scott Wood
[not found] ` <4A1D9A1E.80603-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
2009-05-27 19:54 ` Timur Tabi
[not found] ` <4A1D9A66.5020002-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
2009-05-27 20:25 ` David Miller
[not found] ` <20090527.132553.40558501.davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
2009-05-27 20:27 ` Timur Tabi
[not found] ` <4A1DA24D.5000101-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
2009-05-27 20:55 ` David Miller
[not found] ` <20090527.135500.217447785.davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
2009-05-27 23:26 ` Robert Schwebel
2009-05-27 20:35 ` M. Warner Losh
2009-05-27 20:14 ` Jean-Christophe PLAGNIOL-VILLARD
2009-05-27 20:23 ` David Miller
[not found] ` <20090527.132328.78091350.davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
2009-05-27 20:27 ` Jean-Christophe PLAGNIOL-VILLARD
[not found] ` <20090527202701.GA16219-RQcB7r2h9QmfDR2tN2SG5Ni2O/JbrIOy@public.gmane.org>
2009-05-27 20:48 ` Josh Boyer
2009-05-27 20:56 ` David Miller
2009-05-27 20:52 ` Mark Brown
[not found] ` <20090527205218.GA5591-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2009-05-27 21:05 ` Grant Likely
[not found] ` <fa686aa40905271405pc2f1738gc8dd139f61a0e27-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-05-28 0:11 ` Jon Smirl
2009-05-28 12:43 ` Sascha Hauer
2009-05-28 13:18 ` Thomas Gleixner
[not found] ` <alpine.LFD.2.00.0905281457170.3397-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2009-05-28 15:04 ` Sascha Hauer
[not found] ` <20090528150409.GO22742-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2009-05-28 15:27 ` Thomas Gleixner
2009-05-29 0:51 ` Benjamin Herrenschmidt
2009-05-29 7:52 ` Sascha Hauer
[not found] ` <20090529075238.GC24565-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2009-05-29 9:08 ` Benjamin Herrenschmidt
2009-05-31 10:52 ` Russell King - ARM Linux
[not found] ` <20090528124307.GN22742-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2009-05-28 14:31 ` Grant Likely
2009-05-28 3:25 ` David Gibson
2009-05-28 8:10 ` Benjamin Herrenschmidt
2009-05-28 7:38 ` Benjamin Herrenschmidt
2009-05-27 20:43 ` Grant Likely
2009-05-28 7:37 ` Benjamin Herrenschmidt
2009-05-28 9:15 ` Russell King - ARM Linux
[not found] ` <20090528091513.GA14789-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2009-05-28 9:57 ` David Miller
[not found] ` <20090528.025739.16559619.davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
2009-05-28 10:11 ` Benjamin Herrenschmidt
2009-05-28 10:33 ` Robert Schwebel
2009-05-28 10:34 ` Russell King - ARM Linux [this message]
[not found] ` <20090528103421.GC14789-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2009-05-28 22:33 ` Benjamin Herrenschmidt
2009-05-28 10:14 ` Russell King - ARM Linux
[not found] ` <20090528101440.GB14789-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2009-05-28 21:30 ` David Miller
2009-05-28 12:17 ` Dmitry Eremin-Solenikov
2009-05-28 12:48 ` David Gibson
[not found] ` <20090528124817.GB4565-787xzQ0H9iRg7VrjXcPTGA@public.gmane.org>
2009-05-28 12:55 ` David Gibson
2009-05-28 14:13 ` Grant Likely
[not found] ` <fa686aa40905280713u2b3ef5fvbe3d58ccdb629b60-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-05-28 16:53 ` Russell King - ARM Linux
2009-05-28 17:05 ` Grant Likely
2009-05-28 18:46 ` Alexander Clouter
2009-05-28 22:21 ` Benjamin Herrenschmidt
2009-05-29 1:39 ` David Gibson
[not found] ` <20090529013908.GA7831-787xzQ0H9iRg7VrjXcPTGA@public.gmane.org>
2009-05-29 1:59 ` Mitch Bradley
[not found] ` <4A1F4189.8060702-D5eQfiDGL7eakBO8gow8eQ@public.gmane.org>
2009-05-29 3:52 ` Benjamin Herrenschmidt
2009-05-29 4:11 ` David Miller
2009-05-29 4:11 ` David Miller
[not found] ` <20090528.211123.46272556.davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
2009-05-29 4:56 ` Benjamin Herrenschmidt
2009-05-29 5:11 ` David Miller
2009-05-28 10:00 ` Benjamin Herrenschmidt
2009-05-28 11:44 ` Jean-Christophe PLAGNIOL-VILLARD
2009-05-28 12:47 ` Jon Smirl
[not found] ` <9e4733910905280547w7ee65d40yb4b3ab9559e14dae-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-05-28 14:39 ` Grant Likely
2009-05-28 14:54 ` Grant Likely
2009-05-27 18:26 ` Peter Korsgaard
2009-05-28 3:02 ` David Gibson
2009-05-28 7:32 ` Benjamin Herrenschmidt
2009-05-28 13:38 ` Grant Likely
2009-05-27 22:01 ` Mitch Bradley
[not found] ` <4A1DB855.2030608-D5eQfiDGL7eakBO8gow8eQ@public.gmane.org>
2009-05-28 8:17 ` Benjamin Herrenschmidt
2009-05-27 17:44 ` Russell King
[not found] ` <20090527174440.GA31861-f404yB8NqCZvn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2009-05-27 17:52 ` Grant Likely
[not found] ` <fa686aa40905271052k3f55eb73k2cb0c3cff3c94d7b-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-05-28 3:44 ` David Gibson
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=20090528103421.GC14789@n2100.arm.linux.org.uk \
--to=linux@arm.linux.org.uk \
--cc=benh@kernel.crashing.org \
--cc=davem@davemloft.net \
--cc=devicetree-discuss@ozlabs.org \
--cc=linux-arm-kernel@lists.arm.linux.org.uk \
--cc=linux-kernel@vger.kernel.org \
--cc=scottwood@freescale.com \
--cc=timur@freescale.com \
--cc=yuan-bo.ye@motorola.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