Messages in this thread | | | Date | Thu, 17 May 2007 03:39:30 +0200 | From | Christian <> | Subject | Re: 2.6.22-rc1 does not boot on VIA C3_2 cause of X86_CMPXCHG64 |
| |
Dave Jones wrote: > The C3s all have cx8, but it needs to be enabled in an MSR first. > (See arch/i386/kernel/cpu/centaur.c , search for CX8) > > Did we add code that uses cmpxchg8b before identify_cpu() gets run ? > I've not been paying attention to .22rc (busy trying to beat .21 into shape for F7) > so I may have missed something obvious. Andi? > > Dave >
May I brought up a wrong reason with the command cmpxchg64. But disabling CONFIG_X86_CMPXCHG64 helps.
The via C3 EBGA datasheet R1.9 tells me this command works always: >The CMPXCHG8B instruction is provided and always enabled, however, it appears disabled in the corresponding >CPUID function bit 0 to avoid a bug in an early version of Windows NT. However, this default can be changed >via a bit in the FCR MSR.
Hmm, I should be able to add a few small "here I am" to the my local boot code with a little hint.
Anyway I will try tomorrow to find this on my own. printfs for debugging are more friendly than assembler.
H. Peter Anvin wrote: > Andi added code to verify that we can actually execute on the processor > before protected mode (so we can still get a message out through the > BIOS.) That code presumably doesn't know of the MSR that needs to be > touched.
Best regards,
Christian - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |