[U-Boot] macro substitution - can someone explain please

javier Martin javier.martin at vista-silicon.com
Mon Oct 26 08:44:41 CET 2009


I have a similar problem. In my environment:

bootcmd=cp.b c0040000 ${loadaddr} 280000;bootm ${loadaddr}
mtdparts=mtdparts=mxc_nor_flash.0:256k(U-Boot),2560k(kernel),29312k(rootfs),512k(config),128k(env1)
bootargs=noinitrd console=ttymxc0,115200 root=/dev/mtdblock2
init=linuxrc rw ${mtdparts}

But when I execute 'run bootm', kernel boots but "mtdparts" variable
is not substituted in kernel command line:

Uncompressing Linux..............................................................................................................
done, booting the kernel.
[    0.000000] Linux version 2.6.22.6-gb5e710ce-dirty (javier at acuario)
(gcc version 4.1.2) #219 PREEMPT Fri Oct 23 18:12:58 CEST 2009
[    0.000000] CPU: ARM926EJ-S [41069264] revision 4 (ARMv5TEJ), cr=00053177
[    0.000000] Machine: Freescale i.MX27ADS
[    0.000000] Memory policy: ECC disabled, Data cache writeback
[    0.000000] CPU0: D VIVT write-back cache
[    0.000000] CPU0: I cache: 16384 bytes, associativity 4, 32 byte
lines, 128 sets
[    0.000000] CPU0: D cache: 16384 bytes, associativity 4, 32 byte
lines, 128 sets
[    0.000000] Built 1 zonelists.  Total pages: 16256
[    0.000000] Kernel command line: noinitrd console=ttymxc0,115200
root=/dev/mtdblock2 init=linuxrc rw ${mtdparts}

As stated in README file, global variables should be able to be
accessed through ${ } symbols. Is this also valid inside "bootargs"
variable?

-- 
Javier Martin
Vista Silicon S.L.
CDTUC - FASE C - Oficina S-345
Avda de los Castros s/n
39005- Santander. Cantabria. Spain
+34 942 25 32 60
www.vista-silicon.com


More information about the U-Boot mailing list