diff --git a/arch/x86/kernel/mfgpt_32.c b/arch/x86/kernel/mfgpt_32.c index 0ab680f..5b4fa24 100644 --- a/arch/x86/kernel/mfgpt_32.c +++ b/arch/x86/kernel/mfgpt_32.c @@ -74,18 +74,31 @@ int __init geode_mfgpt_detect(void) { int count = 0, i; u16 val; + u32 hi, lo; if (disable) { printk(KERN_INFO "geode-mfgpt: Skipping MFGPT setup\n"); return 0; } + rdmsr(0x51400028, lo, hi); + printk(KERN_INFO "geode-mfgpt: IRQ MSR=%x:%x\n", hi, lo); + + rdmsr(0x51400029, lo, hi); + printk(KERN_INFO "geode-mfgpt: NMI MSR=%x:%x\n", hi, lo); + + rdmsr(0x51400022, lo, hi); + printk(KERN_INFO "geode-mfgpt: Unrestricted sources=%x\n", lo); + for (i = 0; i < MFGPT_MAX_TIMERS; i++) { val = geode_mfgpt_read(i, MFGPT_REG_SETUP); if (!(val & MFGPT_SETUP_SETUP)) { mfgpt_timers[i].flags = F_AVAIL; count++; } + else { + printk(KERN_INFO "geode-mfgpt: [%d] is already setup=%x\n", i, val); + } } /* set up clock event device, if desired */