[U-Boot] LIBFDT - changing command line

Michal Simek
2009-08-12T06:21:17Z

Jerry Van Baren wrote:
> Hi Michal
>
> Michal Simek wrote:
>> Hi All,
>>
>> I would like to use fdt for changing command line in DTB but
>> I found there is one problem if I have longer command line which contains
>> any spaces.
>> Below is my workflow.
>> If I understand correctly the problem is in
>> cmd_fdt.c:fdt_parse_prop:593-603.
>> It will be worth to add case for supporting
>> fdt set /chosen bootargs "console=ttyUL root=/dev/mtdblock0"
>> copy from first " to next "
>>
>> Or is it there any solution which I miss for this case?
>>
>> Thanks,
>> Michal
>
> It is somewhat ugly, but the you can use "\" to escape the spaces:
> fdt set /chosen bootargs console=ttyUL\ root=/dev/mtdblock0

Of course I tried it but simply not work.

U-Boot-mONStR> fdt list /chosen
chosen {
bootargs = "console=ttyUL0,115200 highres=on root=/dev/mtdblock0";
linux,stdout-path = "/plb at 0/serial at 84000000";
};
U-Boot-mONStR> fdt set /chosen bootargs console=ttyUL\ root=dev
U-Boot-mONStR> fdt list /chosen
chosen {
bootargs = "root=dev";
linux,stdout-path = "/plb at 0/serial at 84000000";
};
U-Boot-mONStR>

Can you tried it on your ppc?

Michal

>
> I did this originally (IIRC) so that I wouldn't have to deal with
> handling quotes in the parsing (Are they there? Are they balanced? What
> to do if not balanced?). Add in a dash of lazy...

>
> [snip]
>
> Best regards,
> gvb

--
Michal Simek, Ing. (M.Eng)
w: www.monstr.eu p: +42-0-721842854
Maintainer of Linux kernel 2.6 Microblaze Linux - http://www.monstr.eu/fdt/
Microblaze U-BOOT custodian