[coreboot-gerrit] New patch to review for coreboot: f12d796 Yabel, Lenovo X60: Add tracing needed by i915tool.
Denis Carikli (GNUtoo@no-log.org)
gerrit at coreboot.org
Thu May 23 15:07:46 CEST 2013
Denis Carikli (GNUtoo at no-log.org) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/3277
-gerrit
commit f12d79607a81e3a5a1e9979b02b22a66efa37481
Author: Denis 'GNUtoo' Carikli <GNUtoo at no-log.org>
Date: Wed May 15 00:19:49 2013 +0200
Yabel, Lenovo X60: Add tracing needed by i915tool.
This patch was made by listenning to what Ron Minnich told
me to do on #coreboot IRC channel on Freenode.
i915tool is at https://code.google.com/p/i915tool/ ,
the one in coreboot is outdated.
It was of course adapted by me.
Change-Id: I13cd684f4c290114836fbd7babd461153e8d6124
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo at no-log.org>
---
src/device/oprom/yabel/biosemu.c | 5 +++++
src/device/oprom/yabel/debug.h | 4 +++-
src/device/oprom/yabel/io.c | 1 +
src/mainboard/lenovo/x60/Kconfig | 2 ++
4 files changed, 11 insertions(+), 1 deletion(-)
diff --git a/src/device/oprom/yabel/biosemu.c b/src/device/oprom/yabel/biosemu.c
index 2a2ca31..aacfd13 100644
--- a/src/device/oprom/yabel/biosemu.c
+++ b/src/device/oprom/yabel/biosemu.c
@@ -31,6 +31,8 @@
#include <device/device.h>
#include "compat/rtas.h"
+struct mono_time zero;
+
static X86EMU_memFuncs my_mem_funcs = {
my_rdb, my_rdw, my_rdl,
my_wrb, my_wrw, my_wrl
@@ -60,6 +62,7 @@ mainboard_interrupt_handlers(int interrupt, yabel_handleIntFunc func)
u32
biosemu(u8 *biosmem, u32 biosmem_size, struct device * dev, unsigned long rom_addr)
{
+
u8 *rom_image;
int i = 0;
#if CONFIG_X86EMU_DEBUG
@@ -99,6 +102,8 @@ biosemu(u8 *biosmem, u32 biosmem_size, struct device * dev, unsigned long rom_ad
#endif
#endif
+ zero.microseconds = 0;
+
if (biosmem_size < MIN_REQUIRED_VMEM_SIZE) {
printf("Error: Not enough virtual memory: %x, required: %x!\n",
biosmem_size, MIN_REQUIRED_VMEM_SIZE);
diff --git a/src/device/oprom/yabel/debug.h b/src/device/oprom/yabel/debug.h
index 9361553..4dfbd71 100644
--- a/src/device/oprom/yabel/debug.h
+++ b/src/device/oprom/yabel/debug.h
@@ -13,8 +13,10 @@
#ifndef _BIOSEMU_DEBUG_H_
#define _BIOSEMU_DEBUG_H_
+#include <timer.h>
#include <types.h>
+extern struct mono_time zero;
extern u32 debug_flags;
// from x86emu...needed for debugging
extern void x86emu_dump_xregs(void);
@@ -73,7 +75,7 @@ static inline void set_ci(void) {};
#define DEBUG_PRINTF(_x...) printf(_x);
// prints the CS:IP before the printout, NOTE: actually its CS:IP of the _next_ instruction
// to be executed, since the x86emu advances CS:IP _before_ actually executing an instruction
-#define DEBUG_PRINTF_CS_IP(_x...) DEBUG_PRINTF("%x:%x ", M.x86.R_CS, M.x86.R_IP); DEBUG_PRINTF(_x);
+#define DEBUG_PRINTF_CS_IP(_x...) DEBUG_PRINTF("[%08lx]%x:%x ", (current_time_from(&zero)).microseconds, M.x86.R_CS, M.x86.R_IP); DEBUG_PRINTF(_x);
#define DEBUG_PRINTF_IO(_x...) CHECK_DBG(DEBUG_IO) { DEBUG_PRINTF_CS_IP(_x) }
#define DEBUG_PRINTF_MEM(_x...) CHECK_DBG(DEBUG_MEM) { DEBUG_PRINTF_CS_IP(_x) }
diff --git a/src/device/oprom/yabel/io.c b/src/device/oprom/yabel/io.c
index d1172dc..1142333 100644
--- a/src/device/oprom/yabel/io.c
+++ b/src/device/oprom/yabel/io.c
@@ -12,6 +12,7 @@
*****************************************************************************/
#include <types.h>
+#include <delay.h>
#include "compat/rtas.h"
#include "compat/time.h"
#include "device.h"
diff --git a/src/mainboard/lenovo/x60/Kconfig b/src/mainboard/lenovo/x60/Kconfig
index 1431a2f..335a2f8 100644
--- a/src/mainboard/lenovo/x60/Kconfig
+++ b/src/mainboard/lenovo/x60/Kconfig
@@ -25,6 +25,8 @@ config BOARD_SPECIFIC_OPTIONS # dummy
select USE_OPTION_TABLE
select MAINBOARD_HAS_NATIVE_VGA_INIT
select EARLY_CBMEM_INIT
+ select UDELAY_LAPIC
+ select LAPIC_MONOTONIC_TIMER
config MAINBOARD_DIR
string
More information about the coreboot-gerrit
mailing list