
On 04/06/2016 10:46 PM, Wenbin Song wrote:
Hi: York
Please see my inline comments.
Best Regards Wenbin Song
-----Original Message----- From: York Sun [mailto:york.sun@nxp.com] Sent: Thursday, April 07, 2016 1:18 AM To: Wenbin Song wenbin.song@nxp.com; Mingkai Hu mingkai.hu@nxp.com; u-boot@lists.denx.de Cc: Qianyu Gong qianyu.gong@nxp.com; Shaohui Xie shaohui.xie@nxp.com; Zhiqiang Hou zhiqiang.hou@nxp.com Subject: Re: [PATCH] armv8/ls1043a: Add MTD partition scheme
On 04/06/2016 12:11 AM, Wenbin Song wrote:
Hi: York
I set bootargs as the following steps:
=> env default mtdparts => printenv mtdparts
mtdparts=mtdparts=60000000.nor:1m(nor_bank0_rcw),1m(nor_bank0_uboot) ,1
m(nor_bank0_uboot_env),1m(nor_bank0_fman_uconde),40m(nor_bank0_fit ),1m
(nor_bank4_rcw),1m(nor_bank4_uboot),1m(nor_bank4_uboot_env),1m(nor_ ban
k4_fman_ucode),40m(nor_bank4_fit);7e800000.flash:1m(nand_uboot),1m(na n
d_uboot_env),20m(nand_fit);spi0.0:1m(uboot),5m(kernel),1m(dtb),9m(file _system) => env default bootargs => printenv bootargs bootargs=console=ttyS0,115200 root=/dev/ram0 earlycon=uart8250,mmio,0x21c0500 ${mtdparts}
The macro CONFIG_BOOTARGS only be extern as an char-string, and it will
be spliced into default_environment array .
const uchar default_environment[] = { #ifdef CONFIG_BOOTARGS "bootargs=" CONFIG_BOOTARGS "\0" #endif
The variable we use to have $consoledev, $othbootargs was used in the
following cases:
858 #define CONFIG_BOOTCOMMAND \ 859 "setenv bootargs root=/dev/ram rw " \ 860 "console=$consoledev,$baudrate $othbootargs;" \ 861 "setenv ramdiskaddr 0x02000000;" \ 862 "setenv fdtaddr 0x00c00000;" \ 863 "setenv loadaddr 0x1000000;" \ 864 "bootm $loadaddr $ramdiskaddr $fdtaddr"
Because the "setenv" will be executed , So the variable could be extended.
I see what you mean. I am trying to reduce the environmental variables. Do you need the variable "mtdparts"?
[wenbin]
I export this variable in order to make easier to modify the bootargs under uboot command-line.
For example: =>setenv bootargs "console=ttyS0,115200 root=/dev/ram0 $mtdparts" =>setenv bootargs "console=ttyLP0,115200 root=/dev/ram0 $mtdparts"
Use the $mtdparts to instead of a long string.
Would it be a better idea to set bootargs using the bootcmd?
[wenbin]
yes, It is a good idea. But we need all kinds of ways to boot kernel with this "bootargs". The bootcmd only can specify one boot-way. IOW, only the way specified by this "bootcmd" can execute " setenv bootargs". So I want to supply the default bootargs by the CONFIG_BOOTARGS .
While you are on it, I suggest you take a look at other variables. "console=ttyAMA0,38400n8" is wrong here.
We don't have to copy kernel image from NOR flash to DDR if the ramdisk load address is set properly in its file. So you can remove the copying from bootcmd.
[wenbin]
Ok, thanks for your advices, I will modify them on the later patch.
Wenbin,
Do you have an update?
York