CAR will write to memory locations below 1M. There are three ways to
cope with that:
1. Back up that area during suspend and restore it as last instruction
of resume.
2. Declare the CAR area (48 kB) as reserved memory.

Imho this is OK, and easiest.

3. Write excessively clever and fragile code which performs a double
stack switch during resume.


Here are some other ideas, might not work if stack is never realocated. I dont know how CAR in v3 works.

4. use 0xA0000-0xBFFFF

I think we can use this RAM because it will be covered by SMM (done by us) or will be covered by legacy VGA anyway.

5.  use 0xf0000-0xfffff

It will get overwritten by some our code, before that we might use it.

Rudolf

--
coreboot mailing list
[email protected]
http://www.coreboot.org/mailman/listinfo/coreboot

Reply via email to