All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thierry Reding <thierry.reding@gmail.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v3 03/13] fdtdec: Add fdt_{addr, size}_unpack() helpers
Date: Mon, 15 Apr 2019 10:18:06 +0200	[thread overview]
Message-ID: <20190415081806.GB528@ulmo> (raw)
In-Reply-To: <CAPnjgZ0E61WOmk7qHb8gVD-iKdH8WHkTtRFQ7myLOYqHeTPe+g@mail.gmail.com>

On Fri, Apr 12, 2019 at 03:45:53PM -0600, Simon Glass wrote:
> Hi Thierry,
> 
> On Fri, 22 Mar 2019 at 02:31, Thierry Reding <thierry.reding@gmail.com> wrote:
> >
> > On Fri, Mar 22, 2019 at 03:53:00PM +0800, Simon Glass wrote:
> > > Hi Thierry,
> > >
> > > On Fri, 22 Mar 2019 at 02:10, Thierry Reding <thierry.reding@gmail.com> wrote:
> > > >
> > > > From: Thierry Reding <treding@nvidia.com>
> > > >
> > > > These helpers can be used to unpack variables of type fdt_addr_t and
> > > > fdt_size_t into a pair of 32-bit variables. This is useful in cases
> > > > where such variables need to be written to properties (such as "reg")
> > > > of a device tree node where they need to be split into cells.
> > > >
> > > > Signed-off-by: Thierry Reding <treding@nvidia.com>
> > > > ---
> > > > Changes in v2:
> > > > - new patch
> > > >
> > > >  include/fdtdec.h | 25 +++++++++++++++++++++++++
> > > >  1 file changed, 25 insertions(+)
> > > >
> > > > diff --git a/include/fdtdec.h b/include/fdtdec.h
> > > > index a965c33157c9..a0ba57c6318b 100644
> > > > --- a/include/fdtdec.h
> > > > +++ b/include/fdtdec.h
> > > > @@ -23,6 +23,31 @@
> > > >   */
> > > >  typedef phys_addr_t fdt_addr_t;
> > > >  typedef phys_size_t fdt_size_t;
> > > > +
> > > > +static inline fdt32_t fdt_addr_unpack(fdt_addr_t addr, fdt32_t *upper)
> > > > +{
> > > > +       if (upper)
> > > > +#ifdef CONFIG_PHYS_64BIT
> > >
> > > Could we use 'if IS_ENABLED()' instead?
> >
> > Are you suggesting to use IS_ENABLED() in a preprocessor #if or a
> > compiler if (IS_ENABLED(...)) { ... } construct? For the former, yes we
> > could certainly do that.
> >
> > The latter would probably work as well if we did something like this:
> >
> > > > +               *upper = addr >> 32;
> >
> >                 *upper = upper_32_bits(addr);
> >
> > where upper_32_bits() is a macro such as the one defined in Linux'
> > include/linux/kernel.h. That prevents the right-shift of 32 bits for
> > 32-bit quantities to not produce a warning.
> >
> > That said, I see that we already have that macro in U-Boot's kernel.h
> > header file, so I could switch to using that. With that I think we could
> > even leave out the conditional. The compiler would hopefully optimize it
> > (the upper_32_bits() invocation) out by itself.
> >
> > I'll do some testing and respin if that works out.
> 
> Applied to u-boot-dm, thanks!
> 
> Please do a fixup patch if this works out. I hope I didn't miss an email/patch.

Sorry, I had been meaning to send out a v4 of the series, but it took me
too long. I just sent out a couple of follow-up patches for this:

	http://patchwork.ozlabs.org/project/uboot/list/?series=102732

Thierry
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20190415/62aa5e1a/attachment.sig>

  reply	other threads:[~2019-04-15  8:18 UTC|newest]

Thread overview: 45+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-21 18:09 [U-Boot] [PATCH v3 00/13] ARM: tegra: Add support for framebuffer carveouts Thierry Reding
2019-03-21 18:09 ` [U-Boot] [PATCH v3 01/13] libfdt: Add phandle generation helper Thierry Reding
2019-03-22  7:52   ` Simon Glass
2019-03-25  7:27     ` Thierry Reding
2019-03-30 21:18       ` Simon Glass
2019-04-12 21:50       ` sjg at google.com
2019-03-21 18:09 ` [U-Boot] [PATCH v3 02/13] fdtdec: Add cpu_to_fdt_{addr, size}() macros Thierry Reding
2019-04-12 21:48   ` Simon Glass
2019-03-21 18:10 ` [U-Boot] [PATCH v3 03/13] fdtdec: Add fdt_{addr, size}_unpack() helpers Thierry Reding
2019-03-22  7:53   ` Simon Glass
2019-03-22  8:31     ` Thierry Reding
2019-04-12 21:45       ` Simon Glass
2019-04-15  8:18         ` Thierry Reding [this message]
2019-03-21 18:10 ` [U-Boot] [PATCH v3 04/13] fdtdec: Implement fdtdec_set_phandle() Thierry Reding
2019-03-22  7:53   ` Simon Glass
2019-03-22  8:34     ` Thierry Reding
2019-03-23  0:52       ` Simon Glass
2019-04-12 21:50       ` sjg at google.com
2019-03-21 18:10 ` [U-Boot] [PATCH v3 05/13] fdtdec: Implement fdtdec_add_reserved_memory() Thierry Reding
2019-03-21 18:10 ` [U-Boot] [PATCH v3 06/13] fdtdec: Implement carveout support functions Thierry Reding
2019-03-21 18:10 ` [U-Boot] [PATCH v3 07/13] fdtdec: Add Kconfig symbol for tests Thierry Reding
2019-03-22  7:53   ` Simon Glass
2019-04-12 21:50   ` sjg at google.com
2019-03-21 18:10 ` [U-Boot] [PATCH v3 08/13] fdtdec: test: Fix build warning Thierry Reding
2019-03-22  7:53   ` Simon Glass
2019-04-12 21:49   ` sjg at google.com
2019-03-21 18:10 ` [U-Boot] [PATCH v3 09/13] fdtdec: test: Use compound statement macros Thierry Reding
2019-03-22  7:53   ` Simon Glass
2019-04-12 21:49   ` sjg at google.com
2019-03-21 18:10 ` [U-Boot] [PATCH v3 10/13] fdtdec: test: Add carveout tests Thierry Reding
2019-03-22  7:53   ` Simon Glass
2019-03-22  8:45     ` Thierry Reding
2019-04-12 21:49     ` sjg at google.com
2019-03-21 18:10 ` [U-Boot] [PATCH v3 11/13] sandbox: Enable fdtdec tests Thierry Reding
2019-03-22  7:53   ` Simon Glass
2019-04-12 21:49   ` sjg at google.com
2019-03-21 18:10 ` [U-Boot] [PATCH v3 12/13] p2371-2180: Add support for framebuffer carveouts Thierry Reding
2019-03-22  7:53   ` Simon Glass
2019-04-12  2:12     ` Simon Glass
2019-04-15  8:20       ` Thierry Reding
2019-03-21 18:10 ` [U-Boot] [PATCH v3 13/13] p2771-0000: " Thierry Reding
2019-03-22  7:53   ` Simon Glass
2019-04-12  2:12     ` Simon Glass
2019-04-12 21:50 ` [U-Boot] [PATCH v3 06/13] fdtdec: Implement carveout support functions sjg at google.com
2019-04-12 21:50 ` [U-Boot] [PATCH v3 05/13] fdtdec: Implement fdtdec_add_reserved_memory() sjg at google.com

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=20190415081806.GB528@ulmo \
    --to=thierry.reding@gmail.com \
    --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.