David Hendricks ([email protected]) just uploaded a new patch set to 
gerrit, which you can find at http://review.coreboot.org/2163

-gerrit

commit 939d2f7b3a6e32707a878df4c84f1b61b6c77ade
Author: David Hendricks <[email protected]>
Date:   Wed Jan 16 15:00:07 2013 -0800

    make main() in snow's romstage.c our romstage entry point
    
    Our earlier attempt was jumping straight from asm to the old u-boot
    board_init_f in lowlevel_init_c.c. We are getting ready to transition
    to using a real bootblock for ARM, so add romstage.c to the files
    compiled and we'll make main() our entry point.
    
    This also updates romstage.ld to place main() (*(.text.startup)) at
    the beginning of romstage.
    
    Change-Id: Ifc77a6bfba27d915c4cad62c6c8040665294628a
    Signed-off-by: David Hendricks <[email protected]>
---
 src/arch/armv7/Makefile.inc            | 14 ++++++++------
 src/arch/armv7/romstage.ld             |  2 ++
 src/mainboard/google/snow/Makefile.inc |  2 +-
 3 files changed, 11 insertions(+), 7 deletions(-)

diff --git a/src/arch/armv7/Makefile.inc b/src/arch/armv7/Makefile.inc
index cc30633..ca64f78 100644
--- a/src/arch/armv7/Makefile.inc
+++ b/src/arch/armv7/Makefile.inc
@@ -148,6 +148,7 @@ CFLAGS += \
 # For various headers imported from Linux
 CFLAGS += -D__LINUX_ARM_ARCH__=7
 
+#crt0s = $(src)/arch/armv7/bootblock.inc
 ldscripts =
 ldscripts += $(src)/arch/armv7/romstage.ld
 
@@ -164,17 +165,18 @@ ifeq ($(CONFIG_LLSHELL),y)
 crt0s += $(src)/arch/armv7/llshell/llshell.inc
 endif
 
-crt0s += $(obj)/mainboard/$(MAINBOARDDIR)/romstage.inc
+# FIXME: do we need romstage.inc? Maybe just get rid of this entirely.
+#crt0s += $(obj)/mainboard/$(MAINBOARDDIR)/romstage.inc
 
 $(obj)/mainboard/$(MAINBOARDDIR)/romstage.pre.inc: 
$(src)/mainboard/$(MAINBOARDDIR)/romstage.c $(OPTION_TABLE_H) $(obj)/build.h 
$(obj)/config.h
        @printf "    CC         romstage.inc\n"
        $(CC) -MMD $(CFLAGS) -D__PRE_RAM__ -I$(src) -I. -I$(obj) -c -S $< -o $@
 
-$(obj)/mainboard/$(MAINBOARDDIR)/romstage.inc: 
$(obj)/mainboard/$(MAINBOARDDIR)/romstage.pre.inc
-       @printf "    POST       romstage.inc\n"
-       sed -e 's/\.rodata/.rom.data/g' -e 's/\^\.text/.section .rom.text/g' \
-               -e 's/\^\.section \.text/.section .rom.text/g' $^ > [email protected]
-       mv [email protected] $@
+#$(obj)/mainboard/$(MAINBOARDDIR)/romstage.inc: 
$(obj)/mainboard/$(MAINBOARDDIR)/romstage.pre.inc
+#      @printf "    POST       romstage.inc\n"
+#      sed -e 's/\.rodata/.rom.data/g' -e 's/\^\.text/.section .rom.text/g' \
+#              -e 's/\^\.section \.text/.section .rom.text/g' $^ > [email protected]
+#      mv [email protected] $@
 
 # Things that appear in every board
 romstage-srcs += $(objgenerated)/crt0.s
diff --git a/src/arch/armv7/romstage.ld b/src/arch/armv7/romstage.ld
index b63a78e..61e3479 100644
--- a/src/arch/armv7/romstage.ld
+++ b/src/arch/armv7/romstage.ld
@@ -43,6 +43,8 @@ SECTIONS
 
        .romtext . : {
                _rom = .;
+               _start = .;
+               *(.text.startup);
                *(.text);
        }
 
diff --git a/src/mainboard/google/snow/Makefile.inc 
b/src/mainboard/google/snow/Makefile.inc
index 01488d0..26378db 100644
--- a/src/mainboard/google/snow/Makefile.inc
+++ b/src/mainboard/google/snow/Makefile.inc
@@ -17,7 +17,7 @@
 ## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
 ##
 
-#romstage-y += romstage.c
+romstage-y += romstage.c
 
 # ramstage-y += ec.c
 

-- 
coreboot mailing list: [email protected]
http://www.coreboot.org/mailman/listinfo/coreboot

Reply via email to