[coreboot] [PATCH] improve realmode api
njacobs8 at hetnet.nl
Sat May 8 23:44:17 CEST 2010
During my investigations i found this Geode GX2 hardware bug
discription, could that have anything to do with my problems?
AMD Geode™ GX Processors Silicon Revision 2.1
1.15 Limit fault during exception in SMM with unreal
Description: When an exception or other interseg-
ment change of flow (COF) occurs inside an SMI
handler and the target offset is higher than the SMI
handler's code segment (CS) limit, a spurious
general protection fault for a segment limit violation
may occur. The CS limit, normally FFFFh in real
mode, can be set to a smaller value inside SMM with
RSM or with an MSR write. When fetching the first
instruction of an exception handler, or the target of a
far jump, the CPU mistakenly uses that shortened
CS limit instead of the implicit limit of FFFFh that
would normally apply to a real mode code segment.
This leads to an erroneous general protection excep-
Implications: Exceptions may generate a limit fault
when a COF occurs while in SMM.
Resolution: Leave the SMM's code segment limit at
FFFFh, or put any SMM exception handlers and
intersegment COF targets lower in their segment, at
offsets that are less than the SMM CS limit.
More information about the coreboot