
From: T Karthik Reddy t.karthik.reddy@xilinx.com
pxe sub commands need to be manually relocated for architectures which enables MANUAL_RELOC as Microblaze.
Signed-off-by: T Karthik Reddy t.karthik.reddy@xilinx.com Signed-off-by: Michal Simek michal.simek@xilinx.com ---
cmd/pxe.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+)
diff --git a/cmd/pxe.c b/cmd/pxe.c index 6372fc987187..46ac08fa3a03 100644 --- a/cmd/pxe.c +++ b/cmd/pxe.c @@ -212,10 +212,24 @@ static struct cmd_tbl cmd_pxe_sub[] = { U_BOOT_CMD_MKENT(boot, 2, 1, do_pxe_boot, "", "") };
+static void __maybe_unused pxe_reloc(void) +{ + static int relocated_pxe; + + if (!relocated_pxe) { + fixup_cmdtable(cmd_pxe_sub, ARRAY_SIZE(cmd_pxe_sub)); + relocated_pxe = 1; + } +} + static int do_pxe(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) { struct cmd_tbl *cp;
+#if defined(CONFIG_NEEDS_MANUAL_RELOC) + pxe_reloc(); +#endif + if (argc < 2) return CMD_RET_USAGE;