All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lukasz Majewski <lukma@denx.de>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH] of-platdata: improve documentation
Date: Fri, 11 Jan 2019 09:26:02 +0100	[thread overview]
Message-ID: <20190111092602.72c9d2da@jawa> (raw)
In-Reply-To: <CAAh8qswR3UTzAc7MsEH-queJMg9nUsJ+cw5XPEGCniRCfKQobg@mail.gmail.com>

Hi Simon,

> On Thu, Jan 10, 2019 at 1:57 PM Simon Glass <sjg@chromium.org> wrote:
> >
> > On Mon, 7 Jan 2019 at 12:23, Simon Goldschmidt
> > <simon.k.r.goldschmidt@gmail.com> wrote:  
> > >
> > > Improve some things in the documentation of OF_PLATDATA that I
> > > found while porting socfgpa_gen5 to it.
> > >
> > > Signed-off-by: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com>
> > > ---
> > >
> > >  doc/driver-model/of-plat.txt | 18 ++++++++++++------
> > >  dts/Kconfig                  |  6 ++----
> > >  2 files changed, 14 insertions(+), 10 deletions(-)  
> >
> > Reviewed-by: Simon Glass <sjg@chromium.org>
> >  
> > >
> > > diff --git a/doc/driver-model/of-plat.txt
> > > b/doc/driver-model/of-plat.txt index 732bc34f06..ecb5f1724b 100644
> > > --- a/doc/driver-model/of-plat.txt
> > > +++ b/doc/driver-model/of-plat.txt
> > > @@ -69,12 +69,12 @@ How it works
> > >  ------------
> > >
> > >  The feature is enabled by CONFIG SPL_OF_PLATDATA. This is only
> > > available -in SPL and should be tested with:
> > > +in SPL/TPL and should be tested with:
> > >
> > >          #if CONFIG_IS_ENABLED(SPL_OF_PLATDATA)  
> >
> > Actually that seems wrong. Shouldn't it omit the SPL_ part?  
> 
> Right, didn't catch that.
> 
> > >
> > >  A new tool called 'dtoc' converts a device tree file either into
> > > a set of -struct declarations, one for each compatible node, or a
> > > set of +struct declarations, one for each compatible node, and a
> > > set of U_BOOT_DEVICE() declarations along with the actual
> > > platform data for each device. As an example, consider this MMC
> > > node:
> > >
> > > @@ -156,6 +156,12 @@ This avoids the code overhead of converting
> > > the device tree data to platform data in the driver. The
> > > ofdata_to_platdata() method should therefore do nothing in such a
> > > driver.
> > >
> > > +Note that for the platform data to be matched with a driver, the
> > > 'name' +property of the U_BOOT_DEVICE() declaration has to match
> > > a driver declared +via U_BOOT_DRIVER(). This effectively means
> > > that a U_BOOT_DRIVER() with a +'name' identical to the devicetree
> > > 'compatible' string is needed, so a +dedicated driver is required
> > > for each 'compatible' string.  
> >
> > Not identical - e.g. hyphens change to underscores.  
> 
> Ehrm, yeah. Seems like I need a V2...

If I may add my 2 cents.

Simon, could you add the information regarding what can be done and
what is not yet implemented?

For example - from the other mail I've read that phandles are
supported, but not parent/child relationship.

> 
> > > +
> > >  Where a node has multiple compatible strings, a #define is used
> > > to make them equivalent, e.g.:
> > >
> > > @@ -165,8 +171,8 @@ equivalent, e.g.:
> > >  Converting of-platdata to a useful form
> > >  ---------------------------------------
> > >
> > > -Of course it would be possible use the of-platdata directly in
> > > your driver -whenever configuration information is required.
> > > However this meands that the +Of course it would be possible to
> > > use the of-platdata directly in your driver +whenever
> > > configuration information is required. However this means that
> > > the driver will not be able to support device tree, since the
> > > of-platdata structure is not available when device tree is used.
> > > It would make no sense to use this structure if device tree were
> > > available, since the structure has @@ -282,8 +288,8 @@ prevents
> > > them being used inadvertently. All usage must be bracketed with
> > > The dt-platdata.c file contains the device declarations and is is
> > > built in spl/dt-platdata.c.
> > >
> > > -Some phandles (thsoe that are recognised as such) are converted
> > > into -points to platform data. This pointer can potentially be
> > > used to access the +Some phandles (those that are recognised as
> > > such) are converted into +pointer to platform data. This pointer
> > > can potentially be used to access the  
> >
> > a pointer to platform data  
> 
> I'll change that as well in V2.
> 
> Regards,
> Simon
> 
> >  
> > >  referenced device (by searching for the pointer value). This
> > > feature is not yet implemented, however.
> > >
> > > diff --git a/dts/Kconfig b/dts/Kconfig
> > > index 8917f42444..3e85914d11 100644
> > > --- a/dts/Kconfig
> > > +++ b/dts/Kconfig
> > > @@ -265,8 +265,7 @@ config SPL_OF_PLATDATA
> > >
> > >           This option works by generating C structure
> > > declarations for each compatible string, then adding platform
> > > data and U_BOOT_DEVICE
> > > -         declarations for each node. See README.platdata for more
> > > -         information.
> > > +         declarations for each node. See of-plat.txt for more
> > > information.
> > >
> > >  config TPL_OF_PLATDATA
> > >         bool "Generate platform data for use in TPL"
> > > @@ -287,8 +286,7 @@ config TPL_OF_PLATDATA
> > >
> > >           This option works by generating C structure
> > > declarations for each compatible string, then adding platform
> > > data and U_BOOT_DEVICE
> > > -         declarations for each node. See README.platdata for more
> > > -         information.
> > > +         declarations for each node. See of-plat.txt for more
> > > information.
> > >
> > >  endmenu
> > >
> > > --
> > > 2.17.1
> > >  
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> https://lists.denx.de/listinfo/u-boot




Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80 Email: lukma at denx.de
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20190111/07e62aed/attachment.sig>

      reply	other threads:[~2019-01-11  8:26 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-01-07 19:23 [U-Boot] [PATCH] of-platdata: improve documentation Simon Goldschmidt
2019-01-10 12:56 ` Simon Glass
2019-01-11  7:35   ` Simon Goldschmidt
2019-01-11  8:26     ` Lukasz Majewski [this message]

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=20190111092602.72c9d2da@jawa \
    --to=lukma@denx.de \
    --cc=u-boot@lists.denx.de \
    /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.