Rename coreboot_ram stage to ramstage
Rename coreboot_ram stage to ramstage. This is done in order to provide consistency with other stage names (bootblock, romstage) and to allow any Makefile rule generalization, required for patches to be submitted later. Change-Id: Ib66e43b7e17b9c48b2d099670ba7e7d857673386 Signed-off-by: Furquan Shaikh <furquan@google.com> Reviewed-on: http://review.coreboot.org/5567 Tested-by: build bot (Jenkins) Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net> Reviewed-by: Patrick Georgi <patrick@georgi-clan.de>
This commit is contained in:
parent
817149643c
commit
20f25dd5c8
|
@ -331,7 +331,7 @@ clean-abuild:
|
||||||
rm -rf coreboot-builds
|
rm -rf coreboot-builds
|
||||||
|
|
||||||
clean-for-update-target:
|
clean-for-update-target:
|
||||||
rm -f $(obj)/coreboot_ram* $(obj)/coreboot.romstage $(obj)/coreboot.pre* $(obj)/coreboot.bootblock $(obj)/coreboot.a
|
rm -f $(obj)/ramstage* $(obj)/coreboot.romstage $(obj)/coreboot.pre* $(obj)/coreboot.bootblock $(obj)/coreboot.a
|
||||||
rm -rf $(obj)/bootblock* $(obj)/romstage* $(obj)/location.*
|
rm -rf $(obj)/bootblock* $(obj)/romstage* $(obj)/location.*
|
||||||
rm -f $(obj)/option_table.* $(obj)/crt0.S $(obj)/ldscript
|
rm -f $(obj)/option_table.* $(obj)/crt0.S $(obj)/ldscript
|
||||||
rm -f $(obj)/mainboard/$(MAINBOARDDIR)/static.c $(obj)/mainboard/$(MAINBOARDDIR)/config.py $(obj)/mainboard/$(MAINBOARDDIR)/static.dot
|
rm -f $(obj)/mainboard/$(MAINBOARDDIR)/static.c $(obj)/mainboard/$(MAINBOARDDIR)/config.py $(obj)/mainboard/$(MAINBOARDDIR)/static.dot
|
||||||
|
|
|
@ -166,7 +166,7 @@ config INCLUDE_CONFIG_FILE
|
||||||
Name Offset Type Size
|
Name Offset Type Size
|
||||||
cmos_layout.bin 0x0 cmos layout 1159
|
cmos_layout.bin 0x0 cmos layout 1159
|
||||||
fallback/romstage 0x4c0 stage 339756
|
fallback/romstage 0x4c0 stage 339756
|
||||||
fallback/coreboot_ram 0x53440 stage 186664
|
fallback/ramstage 0x53440 stage 186664
|
||||||
fallback/payload 0x80dc0 payload 51526
|
fallback/payload 0x80dc0 payload 51526
|
||||||
config 0x8d740 raw 3324
|
config 0x8d740 raw 3324
|
||||||
(empty) 0x8e480 null 3610440
|
(empty) 0x8e480 null 3610440
|
||||||
|
|
|
@ -65,10 +65,10 @@ $(obj)/coreboot.pre: $(CBFSTOOL)
|
||||||
mv $(obj)/coreboot.rom $@
|
mv $(obj)/coreboot.rom $@
|
||||||
endif
|
endif
|
||||||
|
|
||||||
$(obj)/coreboot.rom: $(obj)/coreboot.pre $(objcbfs)/coreboot_ram.elf $(CBFSTOOL) $(call strip_quotes,$(COREBOOT_ROM_DEPENDENCIES)) $$(INTERMEDIATE)
|
$(obj)/coreboot.rom: $(obj)/coreboot.pre $(objcbfs)/ramstage.elf $(CBFSTOOL) $(call strip_quotes,$(COREBOOT_ROM_DEPENDENCIES)) $$(INTERMEDIATE)
|
||||||
@printf " CBFS $(subst $(obj)/,,$(@))\n"
|
@printf " CBFS $(subst $(obj)/,,$(@))\n"
|
||||||
cp $(obj)/coreboot.pre $@.tmp
|
cp $(obj)/coreboot.pre $@.tmp
|
||||||
$(CBFSTOOL) $@.tmp add-stage -f $(objcbfs)/coreboot_ram.elf -n $(CONFIG_CBFS_PREFIX)/coreboot_ram -c $(CBFS_COMPRESS_FLAG)
|
$(CBFSTOOL) $@.tmp add-stage -f $(objcbfs)/ramstage.elf -n $(CONFIG_CBFS_PREFIX)/ramstage -c $(CBFS_COMPRESS_FLAG)
|
||||||
ifeq ($(CONFIG_PAYLOAD_NONE),y)
|
ifeq ($(CONFIG_PAYLOAD_NONE),y)
|
||||||
@printf " PAYLOAD none (as specified by user)\n"
|
@printf " PAYLOAD none (as specified by user)\n"
|
||||||
endif
|
endif
|
||||||
|
@ -117,17 +117,17 @@ $(stages_o): $(stages_c) $(obj)/config.h
|
||||||
|
|
||||||
|
|
||||||
################################################################################
|
################################################################################
|
||||||
# Build the coreboot_ram (stage 2)
|
# Build the ramstage (stage 2)
|
||||||
|
|
||||||
$(objcbfs)/coreboot_ram.debug: $(objgenerated)/coreboot_ram.o $(src)/arch/armv7/coreboot_ram.ld
|
$(objcbfs)/ramstage.debug: $(objgenerated)/ramstage.o $(src)/arch/armv7/ramstage.ld
|
||||||
@printf " CC $(subst $(obj)/,,$(@))\n"
|
@printf " CC $(subst $(obj)/,,$(@))\n"
|
||||||
ifeq ($(CONFIG_COMPILER_LLVM_CLANG),y)
|
ifeq ($(CONFIG_COMPILER_LLVM_CLANG),y)
|
||||||
$(LD) -m armelf_linux_eabi -o $@ -L$(obj) $< -T $(src)/arch/armv7/coreboot_ram.ld
|
$(LD) -m armelf_linux_eabi -o $@ -L$(obj) $< -T $(src)/arch/armv7/ramstage.ld
|
||||||
else
|
else
|
||||||
$(CC) -nostdlib -nostartfiles -static -o $@ -L$(obj) -T $(src)/arch/armv7/coreboot_ram.ld $<
|
$(CC) -nostdlib -nostartfiles -static -o $@ -L$(obj) -T $(src)/arch/armv7/ramstage.ld $<
|
||||||
endif
|
endif
|
||||||
|
|
||||||
$(objgenerated)/coreboot_ram.o: $(stages_o) $$(ramstage-objs) $(LIBGCC_FILE_NAME)
|
$(objgenerated)/ramstage.o: $(stages_o) $$(ramstage-objs) $(LIBGCC_FILE_NAME)
|
||||||
@printf " CC $(subst $(obj)/,,$(@))\n"
|
@printf " CC $(subst $(obj)/,,$(@))\n"
|
||||||
ifeq ($(CONFIG_COMPILER_LLVM_CLANG),y)
|
ifeq ($(CONFIG_COMPILER_LLVM_CLANG),y)
|
||||||
$(LD) -m -m armelf_linux_eabi -r -o $@ --wrap __divdi3 --wrap __udivdi3 --wrap __moddi3 --wrap __umoddi3 --wrap __uidiv --start-group $(ramstage-objs) $(LIBGCC_FILE_NAME) --end-group
|
$(LD) -m -m armelf_linux_eabi -r -o $@ --wrap __divdi3 --wrap __udivdi3 --wrap __moddi3 --wrap __umoddi3 --wrap __uidiv --start-group $(ramstage-objs) $(LIBGCC_FILE_NAME) --end-group
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
/*
|
/*
|
||||||
* Written by Johan Rydberg, based on work by Daniel Kahlin.
|
* Written by Johan Rydberg, based on work by Daniel Kahlin.
|
||||||
* Rewritten by Eric Biederman
|
* Rewritten by Eric Biederman
|
||||||
* 2005.12 yhlu add coreboot_ram cross the vga font buffer handling
|
* 2005.12 yhlu add ramstage cross the vga font buffer handling
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* We use ELF as output format. So that we can debug the code in some form. */
|
/* We use ELF as output format. So that we can debug the code in some form. */
|
|
@ -16,7 +16,7 @@
|
||||||
/*
|
/*
|
||||||
* Written by Johan Rydberg, based on work by Daniel Kahlin.
|
* Written by Johan Rydberg, based on work by Daniel Kahlin.
|
||||||
* Rewritten by Eric Biederman
|
* Rewritten by Eric Biederman
|
||||||
* 2005.12 yhlu add coreboot_ram cross the vga font buffer handling
|
* 2005.12 yhlu add ramstage cross the vga font buffer handling
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* We use ELF as output format. So that we can debug the code in some form. */
|
/* We use ELF as output format. So that we can debug the code in some form. */
|
||||||
|
|
|
@ -99,10 +99,10 @@ $(REFCODE_BLOB): $(RMODTOOL)
|
||||||
$(RMODTOOL) -i $(CONFIG_REFCODE_BLOB_FILE) -o $@
|
$(RMODTOOL) -i $(CONFIG_REFCODE_BLOB_FILE) -o $@
|
||||||
endif
|
endif
|
||||||
|
|
||||||
$(obj)/coreboot.rom: $(obj)/coreboot.pre $(objcbfs)/coreboot_ram.elf $(CBFSTOOL) $(call strip_quotes,$(COREBOOT_ROM_DEPENDENCIES)) $$(INTERMEDIATE) $$(VBOOT_STUB) $(REFCODE_BLOB)
|
$(obj)/coreboot.rom: $(obj)/coreboot.pre $(objcbfs)/ramstage.elf $(CBFSTOOL) $(call strip_quotes,$(COREBOOT_ROM_DEPENDENCIES)) $$(INTERMEDIATE) $$(VBOOT_STUB) $(REFCODE_BLOB)
|
||||||
@printf " CBFS $(subst $(obj)/,,$(@))\n"
|
@printf " CBFS $(subst $(obj)/,,$(@))\n"
|
||||||
cp $(obj)/coreboot.pre $@.tmp
|
cp $(obj)/coreboot.pre $@.tmp
|
||||||
$(CBFSTOOL) $@.tmp add-stage -f $(objcbfs)/coreboot_ram.elf -n $(CONFIG_CBFS_PREFIX)/coreboot_ram -c $(CBFS_COMPRESS_FLAG)
|
$(CBFSTOOL) $@.tmp add-stage -f $(objcbfs)/ramstage.elf -n $(CONFIG_CBFS_PREFIX)/ramstage -c $(CBFS_COMPRESS_FLAG)
|
||||||
ifeq ($(CONFIG_PAYLOAD_NONE),y)
|
ifeq ($(CONFIG_PAYLOAD_NONE),y)
|
||||||
@printf " PAYLOAD none (as specified by user)\n"
|
@printf " PAYLOAD none (as specified by user)\n"
|
||||||
endif
|
endif
|
||||||
|
@ -205,31 +205,31 @@ $(objcbfs)/%.elf: $(objcbfs)/%.debug
|
||||||
mv $@.tmp $@
|
mv $@.tmp $@
|
||||||
|
|
||||||
################################################################################
|
################################################################################
|
||||||
# Build the coreboot_ram (stage 2)
|
# Build the ramstage (stage 2)
|
||||||
|
|
||||||
ramstage-libs ?=
|
ramstage-libs ?=
|
||||||
|
|
||||||
ifeq ($(CONFIG_RELOCATABLE_RAMSTAGE),y)
|
ifeq ($(CONFIG_RELOCATABLE_RAMSTAGE),y)
|
||||||
|
|
||||||
$(eval $(call rmodule_link,$(objcbfs)/coreboot_ram.debug, $(objgenerated)/coreboot_ram.o, $(CONFIG_HEAP_SIZE)))
|
$(eval $(call rmodule_link,$(objcbfs)/ramstage.debug, $(objgenerated)/ramstage.o, $(CONFIG_HEAP_SIZE)))
|
||||||
|
|
||||||
# The rmodule_link defintion creates an elf file with .rmod extension.
|
# The rmodule_link defintion creates an elf file with .rmod extension.
|
||||||
$(objcbfs)/coreboot_ram.elf: $(objcbfs)/coreboot_ram.debug.rmod
|
$(objcbfs)/ramstage.elf: $(objcbfs)/ramstage.debug.rmod
|
||||||
cp $< $@
|
cp $< $@
|
||||||
|
|
||||||
else
|
else
|
||||||
|
|
||||||
$(objcbfs)/coreboot_ram.debug: $(objgenerated)/coreboot_ram.o $(src)/arch/x86/coreboot_ram.ld
|
$(objcbfs)/ramstage.debug: $(objgenerated)/ramstage.o $(src)/arch/x86/ramstage.ld
|
||||||
@printf " CC $(subst $(obj)/,,$(@))\n"
|
@printf " CC $(subst $(obj)/,,$(@))\n"
|
||||||
ifeq ($(CONFIG_COMPILER_LLVM_CLANG),y)
|
ifeq ($(CONFIG_COMPILER_LLVM_CLANG),y)
|
||||||
$(LD) -m elf_i386 -o $@ -L$(obj) $< -T $(src)/arch/x86/coreboot_ram.ld
|
$(LD) -m elf_i386 -o $@ -L$(obj) $< -T $(src)/arch/x86/ramstage.ld
|
||||||
else
|
else
|
||||||
$(CC) -nostdlib -nostartfiles -static -o $@ -L$(obj) -T $(src)/arch/x86/coreboot_ram.ld $<
|
$(CC) -nostdlib -nostartfiles -static -o $@ -L$(obj) -T $(src)/arch/x86/ramstage.ld $<
|
||||||
endif
|
endif
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
$(objgenerated)/coreboot_ram.o: $$(ramstage-objs) $(LIBGCC_FILE_NAME) $$(ramstage-libs)
|
$(objgenerated)/ramstage.o: $$(ramstage-objs) $(LIBGCC_FILE_NAME) $$(ramstage-libs)
|
||||||
@printf " CC $(subst $(obj)/,,$(@))\n"
|
@printf " CC $(subst $(obj)/,,$(@))\n"
|
||||||
ifeq ($(CONFIG_COMPILER_LLVM_CLANG),y)
|
ifeq ($(CONFIG_COMPILER_LLVM_CLANG),y)
|
||||||
$(LD) -m elf_i386 -r -o $@ --wrap __divdi3 --wrap __udivdi3 --wrap __moddi3 --wrap __umoddi3 --start-group $(ramstage-objs) $(ramstage-libs) $(LIBGCC_FILE_NAME) --end-group
|
$(LD) -m elf_i386 -r -o $@ --wrap __divdi3 --wrap __udivdi3 --wrap __moddi3 --wrap __umoddi3 --start-group $(ramstage-objs) $(ramstage-libs) $(LIBGCC_FILE_NAME) --end-group
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
/*
|
/*
|
||||||
* Written by Johan Rydberg, based on work by Daniel Kahlin.
|
* Written by Johan Rydberg, based on work by Daniel Kahlin.
|
||||||
* Rewritten by Eric Biederman
|
* Rewritten by Eric Biederman
|
||||||
* 2005.12 yhlu add coreboot_ram cross the vga font buffer handling
|
* 2005.12 yhlu add ramstage cross the vga font buffer handling
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* We use ELF as output format. So that we can debug the code in some form. */
|
/* We use ELF as output format. So that we can debug the code in some form. */
|
|
@ -36,7 +36,7 @@ static inline __attribute__((always_inline)) void disable_cache_as_ram(void)
|
||||||
#if CONFIG_DCACHE_RAM_SIZE > 0x8000
|
#if CONFIG_DCACHE_RAM_SIZE > 0x8000
|
||||||
wrmsr(MTRRfix4K_C0000_MSR, msr);
|
wrmsr(MTRRfix4K_C0000_MSR, msr);
|
||||||
#endif
|
#endif
|
||||||
/* disable fixed mtrr from now on, it will be enabled by coreboot_ram again*/
|
/* disable fixed mtrr from now on, it will be enabled by ramstage again*/
|
||||||
|
|
||||||
msr = rdmsr(SYSCFG_MSR);
|
msr = rdmsr(SYSCFG_MSR);
|
||||||
msr.lo &= ~(SYSCFG_MSR_MtrrFixDramEn | SYSCFG_MSR_MtrrFixDramModEn);
|
msr.lo &= ~(SYSCFG_MSR_MtrrFixDramEn | SYSCFG_MSR_MtrrFixDramModEn);
|
||||||
|
|
|
@ -153,7 +153,7 @@ cache_as_ram_new_stack (void *resume_backup_memory __attribute__ ((unused)))
|
||||||
|
|
||||||
set_sysinfo_in_ram(1); // So other core0 could start to train mem
|
set_sysinfo_in_ram(1); // So other core0 could start to train mem
|
||||||
|
|
||||||
/*copy and execute coreboot_ram */
|
/*copy and execute ramstage */
|
||||||
copy_and_run();
|
copy_and_run();
|
||||||
/* We will not return */
|
/* We will not return */
|
||||||
|
|
||||||
|
|
|
@ -42,11 +42,11 @@ static const msrinit_t msr_table[] =
|
||||||
|
|
||||||
/* Pre-setup access to memory above 1Mb. Here we set up about 500Mb of memory.
|
/* Pre-setup access to memory above 1Mb. Here we set up about 500Mb of memory.
|
||||||
* It doesn't really matter in fact how much, however, because the only usage
|
* It doesn't really matter in fact how much, however, because the only usage
|
||||||
* of this extended memory will be to host the coreboot_ram stage at RAMBASE,
|
* of this extended memory will be to host the ramstage stage at RAMBASE,
|
||||||
* currently 1Mb.
|
* currently 1Mb.
|
||||||
* These registers will be set to their correct value by the Northbridge init code.
|
* These registers will be set to their correct value by the Northbridge init code.
|
||||||
*
|
*
|
||||||
* WARNING: if coreboot_ram could not be loaded, these registers are probably
|
* WARNING: if ramstage could not be loaded, these registers are probably
|
||||||
* incorrectly set here. You may comment the following two lines and set RAMBASE
|
* incorrectly set here. You may comment the following two lines and set RAMBASE
|
||||||
* to 0x4000 to revert to the previous behavior for LX-boards.
|
* to 0x4000 to revert to the previous behavior for LX-boards.
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -162,7 +162,7 @@ _clear_mtrrs_:
|
||||||
post_code(0x38)
|
post_code(0x38)
|
||||||
|
|
||||||
/* Enable Write Back and Speculative Reads for the first MB
|
/* Enable Write Back and Speculative Reads for the first MB
|
||||||
* and coreboot_ram.
|
* and ramstage.
|
||||||
*/
|
*/
|
||||||
movl $MTRRphysBase_MSR(0), %ecx
|
movl $MTRRphysBase_MSR(0), %ecx
|
||||||
movl $(0x00000000 | MTRR_TYPE_WRBACK), %eax
|
movl $(0x00000000 | MTRR_TYPE_WRBACK), %eax
|
||||||
|
|
|
@ -227,7 +227,7 @@ before_romstage:
|
||||||
post_code(0x38)
|
post_code(0x38)
|
||||||
|
|
||||||
/* Enable Write Back and Speculative Reads for the first MB
|
/* Enable Write Back and Speculative Reads for the first MB
|
||||||
* and coreboot_ram.
|
* and ramstage.
|
||||||
*/
|
*/
|
||||||
movl $MTRRphysBase_MSR(0), %ecx
|
movl $MTRRphysBase_MSR(0), %ecx
|
||||||
movl $(0x00000000 | MTRR_TYPE_WRBACK), %eax
|
movl $(0x00000000 | MTRR_TYPE_WRBACK), %eax
|
||||||
|
|
|
@ -239,7 +239,7 @@ before_romstage:
|
||||||
post_code(0x38)
|
post_code(0x38)
|
||||||
|
|
||||||
/* Enable Write Back and Speculative Reads for the first MB
|
/* Enable Write Back and Speculative Reads for the first MB
|
||||||
* and coreboot_ram.
|
* and ramstage.
|
||||||
*/
|
*/
|
||||||
movl $MTRRphysBase_MSR(0), %ecx
|
movl $MTRRphysBase_MSR(0), %ecx
|
||||||
movl $(0x00000000 | MTRR_TYPE_WRBACK), %eax
|
movl $(0x00000000 | MTRR_TYPE_WRBACK), %eax
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
2005.12 yhlu add coreboot_ram cross the vga font buffer handling
|
2005.12 yhlu add ramstage cross the vga font buffer handling
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <console/console.h>
|
#include <console/console.h>
|
||||||
|
|
|
@ -36,7 +36,7 @@ static const struct ramstage_loader_ops *loaders[] = {
|
||||||
&cbfs_ramstage_loader,
|
&cbfs_ramstage_loader,
|
||||||
};
|
};
|
||||||
|
|
||||||
static const char *ramstage_name = CONFIG_CBFS_PREFIX "/coreboot_ram";
|
static const char *ramstage_name = CONFIG_CBFS_PREFIX "/ramstage";
|
||||||
static const uint32_t ramstage_id = CBMEM_ID_RAMSTAGE;
|
static const uint32_t ramstage_id = CBMEM_ID_RAMSTAGE;
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
|
@ -34,7 +34,7 @@ SECTIONS
|
||||||
|
|
||||||
/* The driver sections are to allow linking coreboot's
|
/* The driver sections are to allow linking coreboot's
|
||||||
* ramstage with the rmodule linker. Any changes made in
|
* ramstage with the rmodule linker. Any changes made in
|
||||||
* coreboot_ram.ld should be made here as well. */
|
* ramstage.ld should be made here as well. */
|
||||||
pci_drivers = . ;
|
pci_drivers = . ;
|
||||||
*(.rodata.pci_driver)
|
*(.rodata.pci_driver)
|
||||||
epci_drivers = . ;
|
epci_drivers = . ;
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
#include <bootmem.h>
|
#include <bootmem.h>
|
||||||
#include <payload_loader.h>
|
#include <payload_loader.h>
|
||||||
|
|
||||||
/* from coreboot_ram.ld: */
|
/* from ramstage.ld: */
|
||||||
extern unsigned char _ram_seg;
|
extern unsigned char _ram_seg;
|
||||||
extern unsigned char _eram_seg;
|
extern unsigned char _eram_seg;
|
||||||
|
|
||||||
|
@ -418,7 +418,7 @@ static int load_self_segments(
|
||||||
/* Zero the extra bytes */
|
/* Zero the extra bytes */
|
||||||
memset(middle, 0, end - middle);
|
memset(middle, 0, end - middle);
|
||||||
}
|
}
|
||||||
/* Copy the data that's outside the area that shadows coreboot_ram */
|
/* Copy the data that's outside the area that shadows ramstage */
|
||||||
printk(BIOS_DEBUG, "dest %p, end %p, bouncebuffer %lx\n", dest, end, bounce_buffer);
|
printk(BIOS_DEBUG, "dest %p, end %p, bouncebuffer %lx\n", dest, end, bounce_buffer);
|
||||||
if ((unsigned long)end > bounce_buffer) {
|
if ((unsigned long)end > bounce_buffer) {
|
||||||
if ((unsigned long)dest < bounce_buffer) {
|
if ((unsigned long)dest < bounce_buffer) {
|
||||||
|
|
|
@ -87,7 +87,7 @@ void main(void)
|
||||||
a1x_set_cpu_clock(384);
|
a1x_set_cpu_clock(384);
|
||||||
}
|
}
|
||||||
|
|
||||||
entry = cbfs_load_stage(CBFS_DEFAULT_MEDIA, "fallback/coreboot_ram");
|
entry = cbfs_load_stage(CBFS_DEFAULT_MEDIA, "fallback/ramstage");
|
||||||
printk(BIOS_INFO, "entry is 0x%p, leaving romstage.\n", entry);
|
printk(BIOS_INFO, "entry is 0x%p, leaving romstage.\n", entry);
|
||||||
|
|
||||||
stage_exit(entry);
|
stage_exit(entry);
|
||||||
|
|
|
@ -23,7 +23,7 @@ void main(void)
|
||||||
|
|
||||||
console_init();
|
console_init();
|
||||||
|
|
||||||
entry = cbfs_load_stage(CBFS_DEFAULT_MEDIA, "fallback/coreboot_ram");
|
entry = cbfs_load_stage(CBFS_DEFAULT_MEDIA, "fallback/ramstage");
|
||||||
|
|
||||||
stage_exit(entry);
|
stage_exit(entry);
|
||||||
}
|
}
|
||||||
|
|
|
@ -274,7 +274,7 @@ void main(void)
|
||||||
|
|
||||||
cbmem_initialize_empty();
|
cbmem_initialize_empty();
|
||||||
|
|
||||||
entry = cbfs_load_stage(CBFS_DEFAULT_MEDIA, "fallback/coreboot_ram");
|
entry = cbfs_load_stage(CBFS_DEFAULT_MEDIA, "fallback/ramstage");
|
||||||
simple_spi_test();
|
simple_spi_test();
|
||||||
stage_exit(entry);
|
stage_exit(entry);
|
||||||
}
|
}
|
||||||
|
|
|
@ -186,6 +186,6 @@ void main(void)
|
||||||
|
|
||||||
cbmem_initialize_empty();
|
cbmem_initialize_empty();
|
||||||
|
|
||||||
entry = cbfs_load_stage(CBFS_DEFAULT_MEDIA, "fallback/coreboot_ram");
|
entry = cbfs_load_stage(CBFS_DEFAULT_MEDIA, "fallback/ramstage");
|
||||||
stage_exit(entry);
|
stage_exit(entry);
|
||||||
}
|
}
|
||||||
|
|
|
@ -32,7 +32,7 @@ void main(void)
|
||||||
console_init();
|
console_init();
|
||||||
printk(BIOS_INFO, "Hello from romstage.\n");
|
printk(BIOS_INFO, "Hello from romstage.\n");
|
||||||
|
|
||||||
entry = cbfs_load_stage(CBFS_DEFAULT_MEDIA, "fallback/coreboot_ram");
|
entry = cbfs_load_stage(CBFS_DEFAULT_MEDIA, "fallback/ramstage");
|
||||||
printk(BIOS_INFO, "entry is 0x%p, leaving romstage.\n", entry);
|
printk(BIOS_INFO, "entry is 0x%p, leaving romstage.\n", entry);
|
||||||
|
|
||||||
stage_exit(entry);
|
stage_exit(entry);
|
||||||
|
|
|
@ -1033,7 +1033,7 @@ struct nodes_info_t {
|
||||||
u32 up_planes; // down planes will be [up_planes, planes)
|
u32 up_planes; // down planes will be [up_planes, planes)
|
||||||
} __attribute__((packed));
|
} __attribute__((packed));
|
||||||
|
|
||||||
/* be careful with the alignment of sysinfo, bacause sysinfo may be shared by coreboot_car and coreboot_ram stage. and coreboot_ram may be running at 64bit later.*/
|
/* be careful with the alignment of sysinfo, bacause sysinfo may be shared by coreboot_car and ramstage stage. and ramstage may be running at 64bit later.*/
|
||||||
#if !CONFIG_AMDMCT
|
#if !CONFIG_AMDMCT
|
||||||
|
|
||||||
//#define MEM_CS_COPY 1
|
//#define MEM_CS_COPY 1
|
||||||
|
|
|
@ -80,7 +80,7 @@ unsigned node_link_to_bus(unsigned node, unsigned link)
|
||||||
* pci1234[0] will record the south bridge link and bus range
|
* pci1234[0] will record the south bridge link and bus range
|
||||||
* pci1234[i] will record HT chain i.
|
* pci1234[i] will record HT chain i.
|
||||||
*
|
*
|
||||||
* For example, on the Tyan S2885 coreboot_ram will put the AMD8151 chain (HT
|
* For example, on the Tyan S2885 ramstage will put the AMD8151 chain (HT
|
||||||
* link 0) into the register 0xE0, and the AMD8131/8111 HT chain into the
|
* link 0) into the register 0xE0, and the AMD8131/8111 HT chain into the
|
||||||
* register 0xE4.
|
* register 0xE4.
|
||||||
*
|
*
|
||||||
|
|
|
@ -177,7 +177,7 @@ static void bcm5785_early_setup(void)
|
||||||
byte |= (1<<0); // SATA enable
|
byte |= (1<<0); // SATA enable
|
||||||
pci_write_config8(dev, 0x84, byte);
|
pci_write_config8(dev, 0x84, byte);
|
||||||
|
|
||||||
// WDT and cf9 for later in coreboot_ram to call hard_reset
|
// WDT and cf9 for later in ramstage to call hard_reset
|
||||||
bcm5785_enable_wdt_port_cf9();
|
bcm5785_enable_wdt_port_cf9();
|
||||||
|
|
||||||
bcm5785_enable_msg();
|
bcm5785_enable_msg();
|
||||||
|
|
|
@ -26,6 +26,6 @@ that.
|
||||||
Great use is:
|
Great use is:
|
||||||
|
|
||||||
make
|
make
|
||||||
./genprof /tmp/yourlog ; gprof ../../build/coreboot_ram | ./gprof2dot.py -e0 -n0 | dot -Tpng -o output.png
|
./genprof /tmp/yourlog ; gprof ../../build/ramstage | ./gprof2dot.py -e0 -n0 | dot -Tpng -o output.png
|
||||||
|
|
||||||
Which generates a PNG with a call graph.
|
Which generates a PNG with a call graph.
|
||||||
|
|
|
@ -10,9 +10,9 @@ A=`echo $line | cut -c 1`
|
||||||
if [ "$A" = '~' ] ; then
|
if [ "$A" = '~' ] ; then
|
||||||
FROM=`echo $line | tr \~ \( | tr \) \( | awk -F\( '{print $3}'`
|
FROM=`echo $line | tr \~ \( | tr \) \( | awk -F\( '{print $3}'`
|
||||||
TO=`echo $line | tr \~ \( | tr \) \(|awk -F\( '{print $2}'`
|
TO=`echo $line | tr \~ \( | tr \) \(|awk -F\( '{print $2}'`
|
||||||
addr2line -e ../../build/cbfs/fallback/coreboot_ram.debug "$FROM" | tr -d "\n"
|
addr2line -e ../../build/cbfs/fallback/ramstage.debug "$FROM" | tr -d "\n"
|
||||||
echo -n " calls "
|
echo -n " calls "
|
||||||
addr2line -e ../../build/cbfs/fallback/coreboot_ram.debug "$TO"
|
addr2line -e ../../build/cbfs/fallback/ramstage.debug "$TO"
|
||||||
else
|
else
|
||||||
echo "$line"
|
echo "$line"
|
||||||
fi
|
fi
|
||||||
|
|
Loading…
Reference in New Issue