summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKyösti Mälkki <kyosti.malkki@gmail.com>2016-06-17 10:35:29 +0300
committerKyösti Mälkki <kyosti.malkki@gmail.com>2016-06-18 20:05:01 +0200
commitc6986fac7793e119ce0f10205ff185d187654448 (patch)
tree0294600d5347341bbece21ba82615e41150a7b0a
parente325b223a2c48d35dedce1c20d055c23b0ea4bea (diff)
emulation/qemu-i440fx qemu-q35: Asmlinkage for romstage main()
Change-Id: I66238525c5c4d97313a589373144741f1be97483 Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com> Reviewed-on: https://review.coreboot.org/15226 Reviewed-by: Aaron Durbin <adurbin@chromium.org> Tested-by: build bot (Jenkins) Tested-by: Raptor Engineering Automated Test Stand <noreply@raptorengineeringinc.com>
-rw-r--r--src/mainboard/emulation/qemu-i440fx/cache_as_ram.inc2
-rw-r--r--src/mainboard/emulation/qemu-i440fx/romstage.c6
-rw-r--r--src/mainboard/emulation/qemu-q35/romstage.c6
3 files changed, 9 insertions, 5 deletions
diff --git a/src/mainboard/emulation/qemu-i440fx/cache_as_ram.inc b/src/mainboard/emulation/qemu-i440fx/cache_as_ram.inc
index 7349af85e6..297eaf130a 100644
--- a/src/mainboard/emulation/qemu-i440fx/cache_as_ram.inc
+++ b/src/mainboard/emulation/qemu-i440fx/cache_as_ram.inc
@@ -49,7 +49,7 @@ cache_as_ram:
before_romstage:
post_code(0x29)
/* Call romstage.c main function. */
- call main
+ call romstage_main
post_code(0x30)
diff --git a/src/mainboard/emulation/qemu-i440fx/romstage.c b/src/mainboard/emulation/qemu-i440fx/romstage.c
index d03c8ab55c..bc239293d7 100644
--- a/src/mainboard/emulation/qemu-i440fx/romstage.c
+++ b/src/mainboard/emulation/qemu-i440fx/romstage.c
@@ -21,14 +21,14 @@
#include <pc80/mc146818rtc.h>
#include <console/console.h>
#include <cpu/x86/bist.h>
+#include <cpu/intel/romstage.h>
#include <timestamp.h>
#include <delay.h>
#include <cpu/x86/lapic.h>
#include "memory.c"
-#include <cpu/intel/romstage.h>
-void main(unsigned long bist)
+void * asmlinkage romstage_main(unsigned long bist)
{
int cbmem_was_initted;
@@ -48,4 +48,6 @@ void main(unsigned long bist)
timestamp_init(timestamp_get());
timestamp_add_now(TS_START_ROMSTAGE);
+ /* Emulation uses fixed low stack during ramstage. */
+ return NULL;
}
diff --git a/src/mainboard/emulation/qemu-q35/romstage.c b/src/mainboard/emulation/qemu-q35/romstage.c
index fb0bccff23..1bb51da2f6 100644
--- a/src/mainboard/emulation/qemu-q35/romstage.c
+++ b/src/mainboard/emulation/qemu-q35/romstage.c
@@ -22,14 +22,14 @@
#include <console/console.h>
#include <southbridge/intel/i82801ix/i82801ix.h>
#include <cpu/x86/bist.h>
+#include <cpu/intel/romstage.h>
#include <timestamp.h>
#include <delay.h>
#include <cpu/x86/lapic.h>
#include "../qemu-i440fx/memory.c"
-#include <cpu/intel/romstage.h>
-void main(unsigned long bist)
+void * asmlinkage romstage_main(unsigned long bist)
{
int cbmem_was_initted;
@@ -50,4 +50,6 @@ void main(unsigned long bist)
timestamp_init(timestamp_get());
timestamp_add_now(TS_START_ROMSTAGE);
+ /* Emulation uses fixed low stack during ramstage. */
+ return NULL;
}