Fix initial printk buffer address initialization. This was broken in

r785 (move from explicit asm to implicit C) and unfortunately qemu never
triggered the bug, only real hardware did. That's because qemu will not
spew an error on access to RAM before RAM is enabled.

Thanks to Ron for bisecting this.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Ronald G. Minnich <rminnich@gmail.com>


git-svn-id: svn://coreboot.org/repository/coreboot-v3@857 f3766cd6-281f-0410-b1cd-43a5c92072e9
This commit is contained in:
Carl-Daniel Hailfinger 2008-09-04 15:35:49 +00:00
commit 49e1879723

View file

@ -82,7 +82,9 @@ void printk_buffer_move(void *newaddr, int newsize)
void printk_buffer_init(void)
{
struct printk_buffer *buf = printk_buffer_addr();
struct printk_buffer *buf = (struct printk_buffer *)PRINTK_BUF_ADDR_CAR;
global_vars()->printk_buffer = buf;
buf = printk_buffer_addr();
buf->len = PRINTK_BUF_SIZE_CAR - sizeof(struct printk_buffer);
buf->readoffset = 0;
buf->writeoffset = 0;