[coreboot] [PATCH]more kconfig

Patrick Georgi patrick at georgi-clan.de
Wed Oct 7 16:27:57 CEST 2009


Am Mittwoch, den 07.10.2009, 16:18 +0200 schrieb Uwe Hermann:
> > as rca/rm4100 wants -O only.
> 
> This should be investigated, though. I believe pretty much _all_ those
> -O or -O2 lines are copy-paste anyway, nobody really ever thought about
> which of them is appropriate for the resp. board.
> 
> Apart from possible romcc bugs I cannot think about a reason to not use
> the -O2 option for all boards per default. Is there such a bug?
romcc crashes, so yes, a bug. Some other board requires quite a specific
romcc option, so there are more such special cases. Fixing romcc bugs
will be a nice task once the tree settled down a bit.

> > Index: src/mainboard/bcom/winnetp680/Kconfig
> > ===================================================================
> > --- src/mainboard/bcom/winnetp680/Kconfig	(Revision 0)
> > +++ src/mainboard/bcom/winnetp680/Kconfig	(Revision 0)
> [...]
> > +config RAMBASE
> > +	hex
> > +	default 0x4000
> > +	depends on BOARD_BCOM_WINNETP680
> 
> This is also something we should look into later. I'd use the new
> default for RAMBASE whereever possible, unless some boards have problems
> with that (which we should find out).
> 
> I can do some tests on boards which used 0x4000 earlier.
At least those boards with their own vgabios.c (pretty much all via
chipsets) must be <1MB due to the way their VGABIOS stuff is
implemented.
Stefan and I tried to replace that with x86emu (or any of the common vga
things), but didn't succeed so far.
> 
> > Index: src/mainboard/bcom/winnetp680/Makefile.inc
> > ===================================================================
> > --- src/mainboard/bcom/winnetp680/Makefile.inc	(Revision 0)
> > +++ src/mainboard/bcom/winnetp680/Makefile.inc	(Revision 0)
> > @@ -0,0 +1,61 @@
> [...]
> > +initobj-y += crt0.o
> > +obj-y += mainboard.o
> > +obj-$(CONFIG_HAVE_PIRQ_TABLE) += irq_tables.o
> > +obj-$(CONFIG_HAVE_MP_TABLE) += mptable.o
> > +
> > +obj-$(CONFIG_HAVE_ACPI_TABLES) += fadt.o
> > +obj-$(CONFIG_HAVE_ACPI_TABLES) += dsdt.o
> > +obj-$(CONFIG_HAVE_ACPI_TABLES) += acpi_tables.o
> > +
> > +ldscript-y += ../../../../src/arch/i386/init/ldscript_fallback_cbfs.lb
> > +ldscript-y += ../../../../src/cpu/x86/16bit/entry16.lds
> > +ldscript-y += ../../../../src/cpu/x86/16bit/reset16.lds
> > +ldscript-y += ../../../../src/arch/i386/lib/id.lds
> > +ldscript-y += ../../../../src/arch/i386/lib/failover.lds
> > +
> > +crt0-y += ../../../../src/cpu/x86/16bit/entry16.inc
> > +crt0-y += ../../../../src/cpu/x86/32bit/entry32.inc
> > +crt0-y += ../../../../src/cpu/x86/16bit/reset16.inc
> > +crt0-y += ../../../../src/arch/i386/lib/id.inc
> > +crt0-y += ../../../../src/cpu/x86/fpu/enable_fpu.inc
> > +crt0-y += ../../../../src/cpu/x86/mmx/enable_mmx.inc
> > +crt0-y += auto.inc
> > +crt0-y += ../../../../src/cpu/x86/mmx/disable_mmx.inc
> > +
> > +ifdef POST_EVALUATION
> > +
> > +$(obj)/mainboard/$(MAINBOARDDIR)/dsdt.o: $(obj)/dsdt.c
> > +	$(CC) $(DISTRO_CFLAGS) $(CFLAGS) $(CPPFLAGS) $(DEBUG_CFLAGS) -I$(src) -I. -c $< -o $@
> > +
> > +$(obj)/dsdt.c: $(src)/mainboard/$(MAINBOARDDIR)/dsdt.asl
> > +	iasl -p dsdt -tc $(src)/mainboard/$(MAINBOARDDIR)/dsdt.asl
> > +	mv dsdt.hex $@
> > +
> > +$(obj)/mainboard/$(MAINBOARDDIR)/auto.inc: $(src)/mainboard/$(MAINBOARDDIR)/auto.c $(obj)/option_table.h
> > +	$(CC) $(DISTRO_CFLAGS) $(CFLAGS) $(CPPFLAGS) $(DEBUG_CFLAGS) -I$(src) -I. -c -S  $(src)/mainboard/$(MAINBOARDDIR)/auto.c -o $@
> > +	perl -e 's/\.rodata/.rom.data/g' -pi $@
> > +	perl -e 's/\.text/.section .rom.text/g' -pi $@
> > +
> > +endif
> 
> Long-term this should move into a global file as it's pretty much
> the same for all boards.
Yes, that's on my TODO for a while.
The ACPI related things require some file renaming, which I wanted to
wait for until newconfig is gone (no need to waste time on adapting that
one, too)


Patrick





More information about the coreboot mailing list