diff options
author | Simon Glass <sjg@chromium.org> | 2017-03-31 08:40:38 -0600 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2017-04-05 16:36:57 -0400 |
commit | e47b2d674f0acd137412535647cb3072bf11dbb0 (patch) | |
tree | 9ebdb5b4ccc2805279bdbdb8971d1c55dcc2c0af /include/relocate.h | |
parent | 96d4b75c0d7f1bbbbde19e6225b09b1f7e7b60fe (diff) |
board_f: Make relocation functions generic
This header file is used by three archs. It could be used by all of them
since relocation is a common function. Move it into a generic file.
Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'include/relocate.h')
-rw-r--r-- | include/relocate.h | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/include/relocate.h b/include/relocate.h new file mode 100644 index 0000000000..0d4b27aa2b --- /dev/null +++ b/include/relocate.h @@ -0,0 +1,39 @@ +/* + * (C) Copyright 2011 + * Graeme Russ, <graeme.russ@gmail.com> + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#ifndef _RELOCATE_H_ +#define _RELOCATE_H_ + +#include <common.h> + +/** + * copy_uboot_to_ram() - Copy U-Boot to its new relocated position + * + * @return 0 if OK, -ve on error + */ +int copy_uboot_to_ram(void); + +/** + * clear_bss() - Clear the BSS (Blocked Start by Symbol) segment + * + * This clears the memory used by global variables + * + * @return 0 if OK, -ve on error + */ +int clear_bss(void); + +/** + * do_elf_reloc_fixups() - Fix up ELF relocations in the relocated code + * + * This processes the relocation tables to ensure that the code can run in its + * new location. + * + * @return 0 if OK, -ve on error + */ +int do_elf_reloc_fixups(void); + +#endif /* _RELOCATE_H_ */ |