From 49e1879723494203bb711aa4347d0904aed4381f Mon Sep 17 00:00:00 2001 From: Carl-Daniel Hailfinger Date: Thu, 4 Sep 2008 15:35:49 +0000 Subject: [PATCH] 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 Acked-by: Ronald G. Minnich git-svn-id: svn://coreboot.org/repository/coreboot-v3@857 f3766cd6-281f-0410-b1cd-43a5c92072e9 --- lib/console.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/console.c b/lib/console.c index c7dec1d391..d3707bb424 100644 --- a/lib/console.c +++ b/lib/console.c @@ -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;