Message ID | 1470296690-29194-1-git-send-email-wenbin.song@nxp.com |
---|---|
State | Accepted |
Commit | f63963f048fd34735a2862936dbd0615d7342f8b |
Delegated to: | Tom Rini |
Headers | show |
On Thu, Aug 04, 2016 at 03:44:50PM +0800, Wenbin song wrote: > From: York Sun <york.sun@nxp.com> > > When FIT image is used, a single image provides kernel, device > tree and optionally ramdisk. Argc and argv need to be adjusted > to support this. > > Signed-off-by: York Sun <york.sun@nxp.com> > --- > cmd/pxe.c | 9 +++++---- > 1 file changed, 5 insertions(+), 4 deletions(-) Can you please confirm you tested the other common cases of PXE booting still work with this change? Thanks!
Hi, Tom Yes, I have tested all kinds of cases. Best Regards Wenbin Song > -----Original Message----- > From: Tom Rini [mailto:trini@konsulko.com] > Sent: Tuesday, August 30, 2016 8:22 AM > To: Wenbin Song <wenbin.song@nxp.com> > Cc: sjg@chromium.org; bmeng.cn@gmail.com; hs@denx.de; > p.marczak@samsung.com; sr@denx.de; york sun <york.sun@nxp.com>; u- > boot@lists.denx.de; Mingkai Hu <mingkai.hu@nxp.com>; Qianyu Gong > <qianyu.gong@nxp.com>; Shaohui Xie <shaohui.xie@nxp.com>; > zhiqian.hou@nxp.com > Subject: Re: [U-Boot] [PATCH] pxe: Fix pxe boot with FIT image > > On Thu, Aug 04, 2016 at 03:44:50PM +0800, Wenbin song wrote: > > > From: York Sun <york.sun@nxp.com> > > > > When FIT image is used, a single image provides kernel, device tree > > and optionally ramdisk. Argc and argv need to be adjusted to support > > this. > > > > Signed-off-by: York Sun <york.sun@nxp.com> > > --- > > cmd/pxe.c | 9 +++++---- > > 1 file changed, 5 insertions(+), 4 deletions(-) > > Can you please confirm you tested the other common cases of PXE booting still > work with this change? Thanks! > > -- > Tom
diff --git a/cmd/pxe.c b/cmd/pxe.c index 9434a18..0a07f14 100644 --- a/cmd/pxe.c +++ b/cmd/pxe.c @@ -620,7 +620,7 @@ static int label_boot(cmd_tbl_t *cmdtp, struct pxe_label *label) char initrd_str[22]; char mac_str[29] = ""; char ip_str[68] = ""; - int bootm_argc = 3; + int bootm_argc = 2; int len = 0; ulong kernel_addr; void *buf; @@ -652,8 +652,6 @@ static int label_boot(cmd_tbl_t *cmdtp, struct pxe_label *label) strcpy(bootm_argv[2], getenv("ramdisk_addr_r")); strcat(bootm_argv[2], ":"); strcat(bootm_argv[2], getenv("filesize")); - } else { - bootm_argv[2] = "-"; } if (get_relfile_envaddr(cmdtp, label->kernel, "kernel_addr_r") < 0) { @@ -785,8 +783,11 @@ static int label_boot(cmd_tbl_t *cmdtp, struct pxe_label *label) if (!bootm_argv[3]) bootm_argv[3] = getenv("fdt_addr"); - if (bootm_argv[3]) + if (bootm_argv[3]) { + if (!bootm_argv[2]) + bootm_argv[2] = "-"; bootm_argc = 4; + } kernel_addr = genimg_get_kernel_addr(bootm_argv[1]); buf = map_sysmem(kernel_addr, 0);