[U-Boot] [PATCH] pxe: Fix pxe boot with FIT image

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(-)
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);

+Tom
On 4 August 2016 at 01:44, Wenbin song wenbin.song@nxp.com 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(-)
I cannot see this patch in patchwork - Tom do you know if there is anything wrong?
- Simon
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);
-- 2.1.0.27.g96db324

Recently I have seen mails not reaching mailing list many times. Not sure if it was our email server issue.
York
-------- Original Message -------- From: Simon Glass sjg@chromium.org Sent: Thursday, August 4, 2016 06:37 PM To: Wenbin Song wenbin.song@nxp.com Subject: Re: [PATCH] pxe: Fix pxe boot with FIT image CC: Bin Meng bmeng.cn@gmail.com,Heiko Schocher hs@denx.de,Przemyslaw Marczak p.marczak@samsung.com,Stefan Roese sr@denx.de,york sun york.sun@nxp.com,U-Boot Mailing List 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,Tom Rini trini@konsulko.com
+Tom
On 4 August 2016 at 01:44, Wenbin song wenbin.song@nxp.com 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(-)
I cannot see this patch in patchwork - Tom do you know if there is anything wrong?
- Simon
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);
-- 2.1.0.27.g96db324

Hi,
What would you advise?
Thanks.
Best Regards Wenbin Song
-----Original Message----- From: Wenbin song [mailto:wenbin.song@nxp.com] Sent: Thursday, August 04, 2016 3:45 PM To: 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; Wenbin Song wenbin.song@nxp.com; Qianyu Gong qianyu.gong@nxp.com; Shaohui Xie shaohui.xie@nxp.com; zhiqian.hou@nxp.com Subject: [PATCH] pxe: Fix pxe boot with FIT image
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(-)
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);
-- 2.1.0.27.g96db324

On 08/28/2016 08:20 PM, Wenbin Song wrote:
Hi,
What would you advise?
Resend if necessary.
In the mean time, get the msg id and open an internal ticket for mail team to track down the log. I did it before and I found the mail wasn't even delivered to the mailing list. But they were not able to find out why.
York

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
participants (5)
-
Simon Glass
-
Tom Rini
-
Wenbin Song
-
Wenbin song
-
york sun