common: fix missing function pointer relocation in fixup_cmdtable()
The command auto-completion does not work on architectures relying on CONFIG_NEEDS_MANUAL_RELOC like MIPS. Cause is the missing function pointer fixup for cmd_tbl_t::complete function in fixup_cmdtable(). This patch adds the missing pointer fixup in case of CONFIG_AUTO_COMPLETE is defined. Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@googlemail.com>
This commit is contained in:
parent
4fc823ddb4
commit
fa28bd2eef
|
@ -474,6 +474,12 @@ void fixup_cmdtable(cmd_tbl_t *cmdtp, int size)
|
||||||
addr = (ulong)(cmdtp->help) + gd->reloc_off;
|
addr = (ulong)(cmdtp->help) + gd->reloc_off;
|
||||||
cmdtp->help = (char *)addr;
|
cmdtp->help = (char *)addr;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
#ifdef CONFIG_AUTO_COMPLETE
|
||||||
|
if (cmdtp->complete) {
|
||||||
|
addr = (ulong)(cmdtp->complete) + gd->reloc_off;
|
||||||
|
cmdtp->complete = (char *)addr;
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
cmdtp++;
|
cmdtp++;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue