From 4fbefdd1a9c67e3ce2a215192e47278148580c2f Mon Sep 17 00:00:00 2001 From: Stefan Reinauer Date: Tue, 21 Jul 2009 21:19:06 +0000 Subject: * rework tsc based timer code to use inb instead of outb for calibration * Add generic Local APIC based timer code. This timer does not need expensive calibration and thus reduces the boot time by up to more than a second. Signed-off-by: Stefan Reinauer Acked-by: Peter Stuge Acked-by: Carl-Daniel Hailfinger git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4446 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1 --- src/cpu/x86/tsc/delay_tsc.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/cpu/x86/tsc') diff --git a/src/cpu/x86/tsc/delay_tsc.c b/src/cpu/x86/tsc/delay_tsc.c index 946d2cf512..72b1f7196c 100644 --- a/src/cpu/x86/tsc/delay_tsc.c +++ b/src/cpu/x86/tsc/delay_tsc.c @@ -106,10 +106,10 @@ static unsigned long long calibrate_tsc(void) printk_spew("Calibrating delay loop...\n"); start = rdtscll(); - // no udivdi3, dammit. + // no udivdi3 because we don't like libgcc. (only in x86emu) // so we count to 1<< 20 and then right shift 20 for(count = 0; count < (1<<20); count ++) - outb(0x80, 0x80); + inb(0x80); end = rdtscll(); #if 0 -- cgit v1.2.3