diff options
Diffstat (limited to 'src/cpu/x86/car')
-rw-r--r-- | src/cpu/x86/car/copy_and_run.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/cpu/x86/car/copy_and_run.c b/src/cpu/x86/car/copy_and_run.c index 14fe83d667..30b3b7a2f5 100644 --- a/src/cpu/x86/car/copy_and_run.c +++ b/src/cpu/x86/car/copy_and_run.c @@ -2,6 +2,22 @@ (Written by Patrick Georgi <patrick.georgi@coresystems.de> for coresystems GmbH */ +#if CONFIG_CBFS == 1 +void cbfs_and_run_core(char*, unsigned ebp); + +static void copy_and_run(unsigned cpu_reset) +{ + if (cpu_reset == 1) cpu_reset = -1; + else cpu_reset = 0; + +# if USE_FALLBACK_IMAGE == 1 + cbfs_and_run_core("fallback/coreboot_ram", cpu_reset); +# else + cbfs_and_run_core("normal/coreboot_ram", cpu_reset); +# endif +} + +#else void copy_and_run_core(u8 *src, u8 *dst, unsigned long ilen, unsigned ebp); extern u8 _liseg, _iseg, _eiseg; @@ -21,3 +37,5 @@ static void copy_and_run(unsigned cpu_reset) copy_and_run_core(src, dst, ilen, cpu_reset); } +#endif + |