All of lore.kernel.org
 help / color / mirror / Atom feed
From: David Gibson <david-xT8FGy+AXnRB3Ne2BGzF6laj5H9X9Tb+@public.gmane.org>
To: Varun Wadekar <vwadekar-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
Cc: devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org
Subject: Re: libfdt queries
Date: Tue, 25 Oct 2011 17:47:23 +1100	[thread overview]
Message-ID: <20111025064723.GA5513@truffala.fritz.box> (raw)
In-Reply-To: <4EA6501B.3030907-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>

On Tue, Oct 25, 2011 at 11:28:51AM +0530, Varun Wadekar wrote:
> Hi,
> 
> I am using libfdt v1.3.0 for modifying the dtb file from the bootloader
> (not U-Boot). I have a .dtb file whose bootargs have to be modified
> before passing over to the kernel. This is the sequence that I am following:
> 
> <snip>
> 
> newlen = fdt_totalsize(blob) + 512;
> fdt_open_into(blob, blob, newlen)
> 
> node = fdt_path_offset(blob, "/chosen");
> if (node < 0)
>     <error handling code>
> 
> fdt_setprop_string(blob, node, "bootargs", cmdline)
> 
> <snip>
> 
> Now with the above code the serial console on my board does not come up
> with the default bootargs that are present in the .dts file. If I
> manipulate the bootargs string in the .dts file with some additional
> garbage characters and then run the above code then I see that the
> serial console comes up. I suspect that the dtb is not getting updated
> properly with the above apis.

That seems a bit unlikely, but maybe.  Is there any way you can dump
out the dtb after processing by your bootloader?

> Somehow the dtb contents are getting
> overwritten and the serial console info is getting overwritten I think.
> 
> If I add a partial command line to my dts, then modifying the bootargs
> from fastboot does not corrupt the dtb file and I can see the kernel
> console come up.
> 
> Any pointers or ideas where I might have screwed up?

First thing would be to check if fdt_setprop_string() is returning an
error code.

Also, is that the only dtb manipulation you do, or do you make other
changes to the dtb?

-- 
David Gibson			| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
				| _way_ _around_!
http://www.ozlabs.org/~dgibson

  parent reply	other threads:[~2011-10-25  6:47 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-10-25  5:58 libfdt queries Varun Wadekar
     [not found] ` <4EA6501B.3030907-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2011-10-25  6:47   ` David Gibson [this message]
     [not found]     ` <20111025064723.GA5513-MK4v0fQdeXQXU02nzanrWNbf9cGiqdzd@public.gmane.org>
2011-10-25  7:08       ` Varun Wadekar
2011-10-31 11:45       ` Varun Wadekar
     [not found]         ` <4EAE8A74.9020301-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2011-11-01  0:55           ` David Gibson
     [not found]             ` <20111101005516.GD6895-MK4v0fQdeXQXU02nzanrWNbf9cGiqdzd@public.gmane.org>
2011-11-01  4:17               ` Varun Wadekar

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=20111025064723.GA5513@truffala.fritz.box \
    --to=david-xt8fgy+axnrb3ne2bgzf6laj5h9x9tb+@public.gmane.org \
    --cc=devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org \
    --cc=vwadekar-DDmLM1+adcrQT0dZR+AlfA@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.