summaryrefslogtreecommitdiffstats
path: root/common
diff options
context:
space:
mode:
authorAlexey Brodkin <Alexey.Brodkin@synopsys.com>2015-12-16 19:24:10 +0300
committerAlexey Brodkin <abrodkin@synopsys.com>2018-03-21 16:21:34 +0300
commit264d298fda39c5caa9505702b257a1f60c3b7352 (patch)
tree7062412f4b517410cb5b71222937af2b4b396e82 /common
parentfac4790491f69b29755d92db2cad508849573ff7 (diff)
downloadu-boot-264d298fda39c5caa9505702b257a1f60c3b7352.tar.gz
u-boot-264d298fda39c5caa9505702b257a1f60c3b7352.tar.xz
u-boot-264d298fda39c5caa9505702b257a1f60c3b7352.zip
arc: Introduce a possibility to not relocate U-boot
Disabling relocation might be useful on ARC for 2 reasons: a) For advanced debugging with Synopsys proprietary MetaWare debugger which is capable of accessing much more specific hardware resources compared to gdb. For example it may show contents of L1 and L2 caches, internal states of some hardware blocks etc. But on the downside MetaWare debugger still cannot work with PIE. Even though that limitation could be work-arounded with change of ELF's header and stripping down all debug info but with it we won't have debug info for source-level debugging which is quite inconvenient. b) Some platforms which might benefit from usage of U-Boot basically don't have enough RAM to accommodate relocation of U-Boot so we keep code in flash and use as much of RAM as possible for more interesting things. Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> Cc: Simon Glass <sjg@chromium.org> Cc: Bin Meng <bmeng.cn@gmail.com> Cc: Heiko Schocher <hs@denx.de> Cc: York Sun <york.sun@nxp.com> Cc: Stefan Roese <sr@denx.de>
Diffstat (limited to 'common')
-rw-r--r--common/board_f.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/common/board_f.c b/common/board_f.c
index 62588c5bad..ae8bdb7c5c 100644
--- a/common/board_f.c
+++ b/common/board_f.c
@@ -900,7 +900,8 @@ void board_init_f(ulong boot_flags)
hang();
#if !defined(CONFIG_ARM) && !defined(CONFIG_SANDBOX) && \
- !defined(CONFIG_EFI_APP) && !CONFIG_IS_ENABLED(X86_64)
+ !defined(CONFIG_EFI_APP) && !CONFIG_IS_ENABLED(X86_64) && \
+ !defined(CONFIG_ARC)
/* NOTREACHED - jump_to_copy() does not return */
hang();
#endif