All of lore.kernel.org
 help / color / mirror / Atom feed
From: "H. Peter Anvin" <hpa-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
To: Dirk Brandewie <dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Cc: sodaville-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org,
	devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org,
	arjan-VuQAYsv1563Yd54FQh9/CA@public.gmane.org
Subject: Re: [sodaville] [PATCH 3/4] of/dtc: force dtb size to modulo 32 bytes
Date: Fri, 12 Nov 2010 11:08:15 -0800	[thread overview]
Message-ID: <4CDD909F.10406@linux.intel.com> (raw)
In-Reply-To: <4CDD6A55.6040603-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>

On 11/12/2010 08:24 AM, Dirk Brandewie wrote:
> 
> The second issue is being able to parse the section in the kernel image to find 
> each of the blobs that have been concatenated together.  If the DTB size is 
> modulo 32 bytes I can use  blob = blob+be32_to_cpu(blob->totalsize) to find the 
> next blob in the section and use that address directly to have fdt.c parse the 
> blob.  Otherwise I would need to search for the signature of the next blob 
> somewhere past the end of the current blob which is knid of messy IMHO.
> 

Not if you know it is aligned mod <whatever> bytes, then you just do:

blob = ALIGN_UP(blob + be32_to_cpu(blob->totalsize), DTB_ALIGNMENT);

This, of course, makes it even more important that DTB_ALIGNMENT is a
common constant across the kernel build.  The nice part is that you can
just add:

	.balign DTB_ALIGNMENT

... into your generated .S files and all is good.

	-hpa

  parent reply	other threads:[~2010-11-12 19:08 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-11-12  0:03 [PATCH 0/4] [RFC V4] Adding DTB to architecture independent vmlinux dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w
     [not found] ` <cover.1289520079.git.dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2010-11-12  0:03   ` [PATCH 1/4] x86/of: Support building device tree blob(s) into image dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w
     [not found]     ` <1b004c685c67c07a5a0b2b16b3a00dd016e2b759.1289520079.git.dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2010-11-14  5:13       ` Grant Likely
2010-11-12  0:03   ` [PATCH 2/4] of: Add support for linking device tree blobs into vmlinux dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w
     [not found]     ` <7d0a9d70f1616340115c187547006c76b0135ca7.1289520079.git.dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2010-11-14  5:25       ` Grant Likely
     [not found]         ` <20101114052525.GC2355-MrY2KI0G/OVr83L8+7iqerDks+cytr/Z@public.gmane.org>
2010-11-15 16:37           ` Dirk Brandewie
     [not found]             ` <4CE161AE.4030103-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2010-11-15 21:27               ` [sodaville] " H. Peter Anvin
2010-11-12  0:03   ` [PATCH 3/4] of/dtc: force dtb size to modulo 32 bytes dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w
     [not found]     ` <a7e6885535e6c930560f3d79a8a55ae922499752.1289520079.git.dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2010-11-12  0:47       ` [sodaville] " H. Peter Anvin
     [not found]         ` <4CDC8EA3.6080608-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2010-11-12  1:01           ` Dirk Brandewie
     [not found]             ` <4CDC91DC.7030407-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2010-11-12  1:16               ` David Gibson
2010-11-12 16:24                 ` Dirk Brandewie
     [not found]                   ` <4CDD6A55.6040603-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2010-11-12 19:08                     ` H. Peter Anvin [this message]
2010-11-12 22:20                     ` Jon Loeliger
2010-11-14  0:44                     ` David Gibson
2010-11-14  4:35                       ` Grant Likely
2010-11-12  0:03   ` [PATCH 4/4] of/fdt: add kernel command line option for dtb_compat string dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w
     [not found]     ` <855a5a11d04a7c1883675b6a77992c4af85222fd.1289520079.git.dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2010-11-14  6:22       ` Grant Likely
2010-11-14  6:26         ` Stephen Neuendorffer
     [not found]           ` <2573ead1-944d-4ba5-ace3-12936693d872-RaUQJvECHiv5op9OF0Koj7jjLBE8jN/0@public.gmane.org>
2010-11-14  6:33             ` Grant Likely
     [not found]         ` <20101114062246.GD2355-MrY2KI0G/OVr83L8+7iqerDks+cytr/Z@public.gmane.org>
2010-11-16  0:27           ` H. Peter Anvin
     [not found]             ` <4CE1CFDA.7030900-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2010-11-16  6:34               ` Grant Likely

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=4CDD909F.10406@linux.intel.com \
    --to=hpa-vuqaysv1563yd54fqh9/ca@public.gmane.org \
    --cc=arjan-VuQAYsv1563Yd54FQh9/CA@public.gmane.org \
    --cc=devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org \
    --cc=dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=sodaville-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org \
    /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.