Fix the generic code for copying and running coreboot_ram in case
certain configuration options are disabled. The strings were just at the wrong place. Two boards fix up some variables for romstream. This isn't necessary (or possible) when CBFS is active, as there is no romstream. It would be nicer to have them depend on CONFIG_ROM_PAYLOAD, but there isn't any invariant that forces that to be inactive if CBFS is active, and this patch is supposed to be small, esp. as the stream loaders are on the way out. Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de> Acked-by: Ronald G. Minnich <rminnich@gmail.com> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4494 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
parent
8f95edaabd
commit
f537407e5a
|
@ -70,6 +70,7 @@ __main:
|
||||||
* Normally this is copying from FLASH ROM to RAM.
|
* Normally this is copying from FLASH ROM to RAM.
|
||||||
*/
|
*/
|
||||||
movl %ebp, %esi
|
movl %ebp, %esi
|
||||||
|
/* FIXME: look for a proper place for the stack */
|
||||||
movl $0x4000000, %esp
|
movl $0x4000000, %esp
|
||||||
movl %esp, %ebp
|
movl %esp, %ebp
|
||||||
pushl %esi
|
pushl %esi
|
||||||
|
@ -142,6 +143,11 @@ str_copying_to_ram: .string "Uncompressing coreboot to RAM.\r\n"
|
||||||
#else
|
#else
|
||||||
str_copying_to_ram: .string "Copying coreboot to RAM.\r\n"
|
str_copying_to_ram: .string "Copying coreboot to RAM.\r\n"
|
||||||
#endif
|
#endif
|
||||||
|
str_pre_main: .string "Jumping to coreboot.\r\n"
|
||||||
|
.previous
|
||||||
|
|
||||||
|
#endif /* ASM_CONSOLE_LOGLEVEL > BIOS_DEBUG */
|
||||||
|
|
||||||
#if CONFIG_CBFS == 1
|
#if CONFIG_CBFS == 1
|
||||||
# if CONFIG_USE_FALLBACK_IMAGE == 1
|
# if CONFIG_USE_FALLBACK_IMAGE == 1
|
||||||
str_coreboot_ram_name: .string "fallback/coreboot_ram"
|
str_coreboot_ram_name: .string "fallback/coreboot_ram"
|
||||||
|
@ -149,9 +155,5 @@ str_coreboot_ram_name: .string "fallback/coreboot_ram"
|
||||||
str_coreboot_ram_name: .string "normal/coreboot_ram"
|
str_coreboot_ram_name: .string "normal/coreboot_ram"
|
||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
str_pre_main: .string "Jumping to coreboot.\r\n"
|
|
||||||
.previous
|
|
||||||
|
|
||||||
#endif /* ASM_CONSOLE_LOGLEVEL > BIOS_DEBUG */
|
|
||||||
|
|
||||||
#endif /* CONFIG_USE_DCACHE_RAM */
|
#endif /* CONFIG_USE_DCACHE_RAM */
|
||||||
|
|
|
@ -35,7 +35,9 @@ static void irqdump()
|
||||||
- set ADDDECTL (now done in raminit.c in cpu/amd/sc520
|
- set ADDDECTL (now done in raminit.c in cpu/amd/sc520
|
||||||
*/
|
*/
|
||||||
static void enable_dev(struct device *dev) {
|
static void enable_dev(struct device *dev) {
|
||||||
|
#if !CONFIG_CBFS
|
||||||
extern unsigned char *rom_start, *rom_end;
|
extern unsigned char *rom_start, *rom_end;
|
||||||
|
#endif
|
||||||
volatile struct mmcrpic *pic = MMCRPIC;
|
volatile struct mmcrpic *pic = MMCRPIC;
|
||||||
volatile struct mmcr *mmcr = MMCRDEFAULT;
|
volatile struct mmcr *mmcr = MMCRDEFAULT;
|
||||||
|
|
||||||
|
@ -134,10 +136,12 @@ static void enable_dev(struct device *dev) {
|
||||||
/* follow fuctory here */
|
/* follow fuctory here */
|
||||||
mmcr->dmacontrol.extchanmapa = 0x3210;
|
mmcr->dmacontrol.extchanmapa = 0x3210;
|
||||||
|
|
||||||
|
#if !CONFIG_CBFS
|
||||||
/* hack for IDIOTIC need to fix rom_start */
|
/* hack for IDIOTIC need to fix rom_start */
|
||||||
printk_err("Patching rom_start due to sc520 limits\n");
|
printk_err("Patching rom_start due to sc520 limits\n");
|
||||||
rom_start = 0x2000000 + 0x40000;
|
rom_start = 0x2000000 + 0x40000;
|
||||||
rom_end = rom_start + CONFIG_PAYLOAD_SIZE - 1;
|
rom_end = rom_start + CONFIG_PAYLOAD_SIZE - 1;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,7 +35,9 @@ static void irqdump()
|
||||||
- set ADDDECTL (now done in raminit.c in cpu/amd/sc520
|
- set ADDDECTL (now done in raminit.c in cpu/amd/sc520
|
||||||
*/
|
*/
|
||||||
static void enable_dev(struct device *dev) {
|
static void enable_dev(struct device *dev) {
|
||||||
|
#if !CONFIG_CBFS
|
||||||
extern unsigned char *rom_start, *rom_end;
|
extern unsigned char *rom_start, *rom_end;
|
||||||
|
#endif
|
||||||
volatile struct mmcrpic *pic = MMCRPIC;
|
volatile struct mmcrpic *pic = MMCRPIC;
|
||||||
volatile struct mmcr *mmcr = MMCRDEFAULT;
|
volatile struct mmcr *mmcr = MMCRDEFAULT;
|
||||||
|
|
||||||
|
@ -139,10 +141,12 @@ static void enable_dev(struct device *dev) {
|
||||||
mmcr->dmacontrol.extchanmapa = 0xf210;
|
mmcr->dmacontrol.extchanmapa = 0xf210;
|
||||||
mmcr->dmacontrol.extchanmapb = 0xffff;
|
mmcr->dmacontrol.extchanmapb = 0xffff;
|
||||||
|
|
||||||
|
#if !CONFIG_CBFS
|
||||||
/* hack for IDIOTIC need to fix rom_start */
|
/* hack for IDIOTIC need to fix rom_start */
|
||||||
printk_err("Patching rom_start due to sc520 limits\n");
|
printk_err("Patching rom_start due to sc520 limits\n");
|
||||||
rom_start = 0x09400000 + 0xe0000;
|
rom_start = 0x09400000 + 0xe0000;
|
||||||
rom_end = rom_start + CONFIG_PAYLOAD_SIZE - 1;
|
rom_end = rom_start + CONFIG_PAYLOAD_SIZE - 1;
|
||||||
|
#endif
|
||||||
|
|
||||||
printk_err("TS5300 EXIT %s\n", __func__);
|
printk_err("TS5300 EXIT %s\n", __func__);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue