Hi Simon, On Thu, Oct 11, 2012 at 10:12 AM, Simon Glass <[email protected]> wrote: > From: Gabe Black <[email protected]> > > When running from coreboot we don't want this code. > > This version works by ifdef-ing out all of the code that would go > into those sections and all the code that refers to it. The sections are > then empty, and the linker will either leave them empty for the loader > to ignore or remove them entirely. > > Signed-off-by: Gabe Black <[email protected]> > Signed-off-by: Simon Glass <[email protected]> > --- > Changes in v2: > - Put CONFIG_NO_RESET_CODE into Makefile instead of source files > > Makefile | 7 +++++-- > arch/x86/cpu/Makefile | 5 ++++- > arch/x86/cpu/u-boot.lds | 3 +++ > 3 files changed, 12 insertions(+), 3 deletions(-) > > diff --git a/Makefile b/Makefile > index 34d9075..6c2f357 100644 > --- a/Makefile > +++ b/Makefile > @@ -212,9 +212,12 @@ endif > # U-Boot objects....order is important (i.e. start must be first) > > OBJS = $(CPUDIR)/start.o > +OBJS = $(CPUDIR)/start.o > ifeq ($(CPU),x86) > -OBJS += $(CPUDIR)/start16.o > -OBJS += $(CPUDIR)/resetvec.o > + ifneq ($(CONFIG_NO_RESET_CODE),y) > + OBJS += $(CPUDIR)/start16.o > + OBJS += $(CPUDIR)/resetvec.o > + endif > endif > ifeq ($(CPU),ppc4xx) > OBJS += $(CPUDIR)/resetvec.o > diff --git a/arch/x86/cpu/Makefile b/arch/x86/cpu/Makefile > index 7f1fc18..1eb70a7 100644 > --- a/arch/x86/cpu/Makefile > +++ b/arch/x86/cpu/Makefile > @@ -28,7 +28,10 @@ include $(TOPDIR)/config.mk > > LIB = $(obj)lib$(CPU).o > > -START = start.o start16.o resetvec.o > +START = start.o > +ifneq ($(CONFIG_NO_RESET_CODE),y) > +START += resetvec.o start16.o > +endif > COBJS = interrupts.o cpu.o > > SRCS := $(START:.o=.S) $(SOBJS:.o=.S) $(COBJS:.o=.c) > diff --git a/arch/x86/cpu/u-boot.lds b/arch/x86/cpu/u-boot.lds > index fe28030..2a90a01 100644 > --- a/arch/x86/cpu/u-boot.lds > +++ b/arch/x86/cpu/u-boot.lds > @@ -85,6 +85,8 @@ SECTIONS > __bios_start = LOADADDR(.bios); > __bios_size = SIZEOF(.bios); > > +#ifndef CONFIG_NO_RESET_CODE > + > /* > * The following expressions place the 16-bit Real-Mode code and > * Reset Vector at the end of the Flash ROM > @@ -94,4 +96,5 @@ SECTIONS > > . = RESET_VEC_LOC; > .resetvec : AT (CONFIG_SYS_TEXT_BASE + (CONFIG_SYS_MONITOR_LEN - > RESET_SEG_SIZE + RESET_VEC_LOC)) { KEEP(*(.resetvec)); } > +#endif > } > -- > 1.7.7.3 >
Acked-by: Graeme Russ <[email protected]> _______________________________________________ U-Boot mailing list [email protected] http://lists.denx.de/mailman/listinfo/u-boot

