From 3c30e682963ac20c5249358f4998932681e66aa7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ky=C3=B6sti=20M=C3=A4lkki?= Date: Fri, 17 Jun 2016 10:35:29 +0300 Subject: [PATCH] UPSTREAM: emulation/qemu-i440fx qemu-q35: Asmlinkage for romstage main() Change-Id: I66238525c5c4d97313a589373144741f1be97483 Original-Signed-off-by: Kysti Mlkki Original-Reviewed-on: https://review.coreboot.org/15226 Original-Reviewed-by: Aaron Durbin (cherry-picked from commit c6986fac7793e119ce0f10205ff185d187654448) Signed-off-by: Martin Roth Reviewed-on: https://chromium-review.googlesource.com/354189 Tested-by: Furquan Shaikh Reviewed-by: Furquan Shaikh --- src/mainboard/emulation/qemu-i440fx/cache_as_ram.inc | 2 +- src/mainboard/emulation/qemu-i440fx/romstage.c | 6 ++++-- src/mainboard/emulation/qemu-q35/romstage.c | 6 ++++-- 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 #include #include +#include #include #include #include #include "memory.c" -#include -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 #include #include +#include #include #include #include #include "../qemu-i440fx/memory.c" -#include -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; }