- Fix UDELAY options and HAVE_INIT_TIMER [kconfig]
(defaults to UDELAY_IO again, like newconfig) - Use UDELAY_TSC on Via C7 [kconfig] - Support Tinybootblock on Intel CPUs - set XIP location correctly for Tinybootblock on Intel - provide correct XIP location in Tinybootblock configuration - Make kontron/986lcd-m use Tinybootblock - Some kconfig fixes to kontron/986lcd-m [kconfig] Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de> Acked-by: Stefan Reinauer <stepan@coresystems.de> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4997 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
parent
ce56835a5c
commit
1f807fd42f
|
@ -186,6 +186,7 @@ config HAVE_HARD_RESET
|
||||||
|
|
||||||
config HAVE_INIT_TIMER
|
config HAVE_INIT_TIMER
|
||||||
bool
|
bool
|
||||||
|
default n if UDELAY_IO
|
||||||
default y
|
default y
|
||||||
|
|
||||||
config HAVE_MAINBOARD_RESOURCES
|
config HAVE_MAINBOARD_RESOURCES
|
||||||
|
|
|
@ -67,13 +67,13 @@ $(obj)/bootblock.elf: $(obj)/mainboard/$(MAINBOARDDIR)/bootblock.o $(obj)/bootbl
|
||||||
# Build the romstage
|
# Build the romstage
|
||||||
$(obj)/coreboot.romstage: $(obj)/coreboot.pre1 $(initobjs) $(obj)/romstage/ldscript.ld
|
$(obj)/coreboot.romstage: $(obj)/coreboot.pre1 $(initobjs) $(obj)/romstage/ldscript.ld
|
||||||
@printf " LINK $(subst $(obj)/,,$(@))\n"
|
@printf " LINK $(subst $(obj)/,,$(@))\n"
|
||||||
printf "CONFIG_ROMBASE = 0x0;\n" > $(obj)/location.ld
|
printf "CONFIG_ROMBASE = 0x0;\nAUTO_XIP_ROM_BASE = 0x0;\n" > $(obj)/location.ld
|
||||||
$(CC) -nostdlib -nostartfiles -static -o $(obj)/romstage.elf -L$(obj) -T $(obj)/romstage/ldscript.ld $(initobjs)
|
$(CC) -nostdlib -nostartfiles -static -o $(obj)/romstage.elf -L$(obj) -T $(obj)/romstage/ldscript.ld $(initobjs)
|
||||||
$(OBJCOPY) -O binary $(obj)/romstage.elf $(obj)/romstage.bin
|
$(OBJCOPY) -O binary $(obj)/romstage.elf $(obj)/romstage.bin
|
||||||
printf "CONFIG_ROMBASE = 0x" > $(obj)/location.ld
|
printf "CONFIG_ROMBASE = 0x" > $(obj)/location.ld
|
||||||
$(CBFSTOOL) $(obj)/coreboot.pre1 locate $(obj)/romstage.bin fallback/romstage $(CONFIG_XIP_ROM_SIZE) > $(obj)/location.txt
|
$(CBFSTOOL) $(obj)/coreboot.pre1 locate $(obj)/romstage.bin fallback/romstage $(CONFIG_XIP_ROM_SIZE) > $(obj)/location.txt
|
||||||
cat $(obj)/location.txt >> $(obj)/location.ld
|
cat $(obj)/location.txt >> $(obj)/location.ld
|
||||||
printf ";\n" >> $(obj)/location.ld
|
printf ';\nAUTO_XIP_ROM_BASE = CONFIG_ROMBASE & ~(CONFIG_XIP_ROM_SIZE - 1);\n' >> $(obj)/location.ld
|
||||||
$(CC) -nostdlib -nostartfiles -static -o $(obj)/romstage.elf -L$(obj) -T $(obj)/romstage/ldscript.ld $(initobjs)
|
$(CC) -nostdlib -nostartfiles -static -o $(obj)/romstage.elf -L$(obj) -T $(obj)/romstage/ldscript.ld $(initobjs)
|
||||||
$(NM) -n $(obj)/romstage.elf | sort > $(obj)/romstage.map
|
$(NM) -n $(obj)/romstage.elf | sort > $(obj)/romstage.map
|
||||||
$(OBJCOPY) -O binary $(obj)/romstage.elf $@
|
$(OBJCOPY) -O binary $(obj)/romstage.elf $@
|
||||||
|
|
|
@ -114,7 +114,13 @@ clear_mtrrs:
|
||||||
/* Enable cache for our code in Flash because we do XIP here */
|
/* Enable cache for our code in Flash because we do XIP here */
|
||||||
movl $MTRRphysBase_MSR(1), %ecx
|
movl $MTRRphysBase_MSR(1), %ecx
|
||||||
xorl %edx, %edx
|
xorl %edx, %edx
|
||||||
movl $(CONFIG_XIP_ROM_BASE | MTRR_TYPE_WRBACK), %eax
|
#if defined(CONFIG_TINY_BOOTBLOCK) && CONFIG_TINY_BOOTBLOCK
|
||||||
|
#define REAL_XIP_ROM_BASE AUTO_XIP_ROM_BASE
|
||||||
|
#else
|
||||||
|
#define REAL_XIP_ROM_BASE CONFIG_XIP_ROM_BASE
|
||||||
|
#endif
|
||||||
|
movl $REAL_XIP_ROM_BASE, %eax
|
||||||
|
orl $MTRR_TYPE_WRBACK, %eax
|
||||||
wrmsr
|
wrmsr
|
||||||
|
|
||||||
movl $MTRRphysMask_MSR(1), %ecx
|
movl $MTRRphysMask_MSR(1), %ecx
|
||||||
|
|
|
@ -25,6 +25,7 @@ void stage1_main(unsigned long bist)
|
||||||
{
|
{
|
||||||
unsigned int cpu_reset = 0;
|
unsigned int cpu_reset = 0;
|
||||||
|
|
||||||
|
#if !defined(CONFIG_TINY_BOOTBLOCK) || !CONFIG_TINY_BOOTBLOCK
|
||||||
#if CONFIG_USE_FALLBACK_IMAGE == 1
|
#if CONFIG_USE_FALLBACK_IMAGE == 1
|
||||||
/* Is this a deliberate reset by the bios */
|
/* Is this a deliberate reset by the bios */
|
||||||
if (bios_reset_detected() && last_boot_normal()) {
|
if (bios_reset_detected() && last_boot_normal()) {
|
||||||
|
@ -45,6 +46,7 @@ void stage1_main(unsigned long bist)
|
||||||
: "a" (bist) /* inputs */
|
: "a" (bist) /* inputs */
|
||||||
);
|
);
|
||||||
fallback_image:
|
fallback_image:
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
real_main(bist);
|
real_main(bist);
|
||||||
|
|
|
@ -104,7 +104,13 @@ clear_mtrrs:
|
||||||
/* Enable cache for our code in Flash because we do XIP here */
|
/* Enable cache for our code in Flash because we do XIP here */
|
||||||
movl $MTRRphysBase_MSR(1), %ecx
|
movl $MTRRphysBase_MSR(1), %ecx
|
||||||
xorl %edx, %edx
|
xorl %edx, %edx
|
||||||
movl $(CONFIG_XIP_ROM_BASE | MTRR_TYPE_WRBACK), %eax
|
#if defined(CONFIG_TINY_BOOTBLOCK) && CONFIG_TINY_BOOTBLOCK
|
||||||
|
#define REAL_XIP_ROM_BASE AUTO_XIP_ROM_BASE
|
||||||
|
#else
|
||||||
|
#define REAL_XIP_ROM_BASE CONFIG_XIP_ROM_BASE
|
||||||
|
#endif
|
||||||
|
movl $REAL_XIP_ROM_BASE, %eax
|
||||||
|
orl $MTRR_TYPE_WRBACK, %eax
|
||||||
wrmsr
|
wrmsr
|
||||||
|
|
||||||
movl $MTRRphysMask_MSR(1), %ecx
|
movl $MTRRphysMask_MSR(1), %ecx
|
||||||
|
|
|
@ -27,6 +27,7 @@ void stage1_main(unsigned long bist)
|
||||||
{
|
{
|
||||||
unsigned int cpu_reset = 0;
|
unsigned int cpu_reset = 0;
|
||||||
|
|
||||||
|
#if !defined(CONFIG_TINY_BOOTBLOCK) || !CONFIG_TINY_BOOTBLOCK
|
||||||
#if CONFIG_USE_FALLBACK_IMAGE == 1
|
#if CONFIG_USE_FALLBACK_IMAGE == 1
|
||||||
/* Is this a deliberate reset by the bios */
|
/* Is this a deliberate reset by the bios */
|
||||||
if (bios_reset_detected() && last_boot_normal()) {
|
if (bios_reset_detected() && last_boot_normal()) {
|
||||||
|
@ -47,6 +48,7 @@ void stage1_main(unsigned long bist)
|
||||||
: "a" (bist) /* inputs */
|
: "a" (bist) /* inputs */
|
||||||
);
|
);
|
||||||
fallback_image:
|
fallback_image:
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
real_main(bist);
|
real_main(bist);
|
||||||
|
|
|
@ -111,7 +111,13 @@ clear_mtrrs:
|
||||||
/* Enable cache for our code in Flash because we do XIP here */
|
/* Enable cache for our code in Flash because we do XIP here */
|
||||||
movl $MTRRphysBase_MSR(1), %ecx
|
movl $MTRRphysBase_MSR(1), %ecx
|
||||||
xorl %edx, %edx
|
xorl %edx, %edx
|
||||||
movl $(CONFIG_XIP_ROM_BASE | MTRR_TYPE_WRBACK), %eax
|
#if defined(CONFIG_TINY_BOOTBLOCK) && CONFIG_TINY_BOOTBLOCK
|
||||||
|
#define REAL_XIP_ROM_BASE AUTO_XIP_ROM_BASE
|
||||||
|
#else
|
||||||
|
#define REAL_XIP_ROM_BASE CONFIG_XIP_ROM_BASE
|
||||||
|
#endif
|
||||||
|
movl $REAL_XIP_ROM_BASE, %eax
|
||||||
|
orl $MTRR_TYPE_WRBACK, %eax
|
||||||
wrmsr
|
wrmsr
|
||||||
|
|
||||||
movl $MTRRphysMask_MSR(1), %ecx
|
movl $MTRRphysMask_MSR(1), %ecx
|
||||||
|
|
|
@ -27,6 +27,7 @@ void stage1_main(unsigned long bist)
|
||||||
{
|
{
|
||||||
unsigned int cpu_reset = 0;
|
unsigned int cpu_reset = 0;
|
||||||
|
|
||||||
|
#if !defined(CONFIG_TINY_BOOTBLOCK) || !CONFIG_TINY_BOOTBLOCK
|
||||||
#if CONFIG_USE_FALLBACK_IMAGE == 1
|
#if CONFIG_USE_FALLBACK_IMAGE == 1
|
||||||
/* Is this a deliberate reset by the bios */
|
/* Is this a deliberate reset by the bios */
|
||||||
if (bios_reset_detected() && last_boot_normal()) {
|
if (bios_reset_detected() && last_boot_normal()) {
|
||||||
|
@ -47,6 +48,7 @@ void stage1_main(unsigned long bist)
|
||||||
: "a" (bist) /* inputs */
|
: "a" (bist) /* inputs */
|
||||||
);
|
);
|
||||||
fallback_image:
|
fallback_image:
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
real_main(bist);
|
real_main(bist);
|
||||||
|
|
|
@ -1,2 +1,3 @@
|
||||||
config CPU_VIA_C7
|
config CPU_VIA_C7
|
||||||
bool
|
bool
|
||||||
|
select UDELAY_TSC
|
||||||
|
|
|
@ -8,6 +8,7 @@ config WAIT_BEFORE_CPUS_INIT
|
||||||
|
|
||||||
config UDELAY_IO
|
config UDELAY_IO
|
||||||
bool
|
bool
|
||||||
|
default y if !UDELAY_LAPIC && !UDELAY_TSC
|
||||||
default n
|
default n
|
||||||
|
|
||||||
config UDELAY_LAPIC
|
config UDELAY_LAPIC
|
||||||
|
|
|
@ -21,7 +21,7 @@ config BOARD_KONTRON_986LCD_M
|
||||||
select IOAPIC
|
select IOAPIC
|
||||||
select USE_DCACHE_RAM
|
select USE_DCACHE_RAM
|
||||||
select GFXUMA
|
select GFXUMA
|
||||||
select HAVE_MOVNTI
|
select TINY_BOOTBLOCK
|
||||||
|
|
||||||
config MAINBOARD_DIR
|
config MAINBOARD_DIR
|
||||||
string
|
string
|
||||||
|
@ -72,8 +72,3 @@ config FALLBACK_VGA_BIOS_FILE
|
||||||
string
|
string
|
||||||
default "amipci_01.20"
|
default "amipci_01.20"
|
||||||
depends on BOARD_KONTRON_986LCD_M
|
depends on BOARD_KONTRON_986LCD_M
|
||||||
|
|
||||||
config HAVE_ACPI_SLIC
|
|
||||||
bool
|
|
||||||
default n
|
|
||||||
depends on BOARD_KONTRON_986LCD_M
|
|
||||||
|
|
|
@ -40,18 +40,12 @@ smmobj-$(CONFIG_HAVE_SMI_HANDLER) += mainboard_smi.o
|
||||||
|
|
||||||
initobj-y += crt0.o
|
initobj-y += crt0.o
|
||||||
# FIXME in $(top)/Makefile
|
# FIXME in $(top)/Makefile
|
||||||
crt0-y += ../../../../src/cpu/x86/16bit/entry16.inc
|
|
||||||
crt0-y += ../../../../src/cpu/x86/32bit/entry32.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/intel/model_6ex/cache_as_ram.inc
|
crt0-y += ../../../../src/cpu/intel/model_6ex/cache_as_ram.inc
|
||||||
crt0-y += auto.inc
|
crt0-y += auto.inc
|
||||||
|
|
||||||
ldscript-y += ../../../../src/arch/i386/init/ldscript_fallback_cbfs.lb
|
ldscript-y += ../../../../src/arch/i386/init/ldscript_fallback_cbfs.lb
|
||||||
ldscript-y += ../../../../src/cpu/x86/16bit/entry16.lds
|
ldscript-y += ../../../../src/cpu/x86/32bit/entry32.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
|
|
||||||
|
|
||||||
ifdef POST_EVALUATION
|
ifdef POST_EVALUATION
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue