提交 767cb74a 编写于 作者: A Anatolij Gustschin 提交者: Tom Rini

cmd: spl: provide address and size of prepared FDT in environment

Writing prepared FDT to persistent storage should be possible in
scripts. Create environment variables containing address and size
of the updated FDT. Scripts can use these variables after running
'spl export fdt ...' command to write the new blob to persistent
storage.
Signed-off-by: NAnatolij Gustschin <agust@denx.de>
上级 195dc231
......@@ -118,6 +118,11 @@ static int spl_export(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
case SPL_EXPORT_FDT:
printf("Argument image is now in RAM: 0x%p\n",
(void *)images.ft_addr);
env_set_addr("fdtargsaddr", images.ft_addr);
env_set_hex("fdtargslen", fdt_totalsize(images.ft_addr));
if (fdt_totalsize(images.ft_addr) >
CONFIG_CMD_SPL_WRITE_SIZE)
puts("WARN: FDT size > CMD_SPL_WRITE_SIZE\n");
break;
#endif
case SPL_EXPORT_ATAGS:
......
......@@ -118,7 +118,12 @@ after each run of 'spl export'. Unfortunately the position of temporary
storage can not be predicted nor provided at commandline, it depends
highly on your system setup and your provided data (ATAGS or FDT).
However at the end of an succesful 'spl export' run it will print the
RAM address of temporary storage.
RAM address of temporary storage. The RAM address of FDT will also be
set in the environment variable 'fdtargsaddr', the new length of the
prepared FDT will be set in the environment variable 'fdtargslen'.
These environment variables can be used in scripts for writing updated
FDT to persistent storage.
Now the user have to save the generated BLOB from that printed address
to the pre-defined address in persistent storage
(CONFIG_CMD_SPL_NAND_OFS in case of NAND).
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册