Messages in this thread | | | Date | Fri, 4 Feb 2005 21:30:36 -0500 | From | Jon Smirl <> | Subject | Re: [RFC] Reliable video POSTing on resume |
| |
On Sat, 05 Feb 2005 02:17:22 +0000, Matthew Garrett <mjg59@srcf.ucam.org> wrote: > On laptops, it's frequently the case that c000:0003 will jump to a > section of code that is no longer mapped into the address space. > Instead, it's entirely possible that some other section of BIOS will be > mapped there. The resulting behaviour is undefined, and can cause the > hardware to hang.
I suspect the problem in that case is a compressed VBIOS. Some laptops compress the VBIOS and the system BIOS into a single ROM and then expand them at power on. Sounds like this is not happening on resume. To get around the problem copy the image from C000:0 before suspend to a place in preserved RAM where wakeup.S can find it and then copy it back to C000:0 on resume. To test for this checksum C000:0 before suspend and after and see if it has changed.
You can always do a simple test. If a program like vbios.vm86 or vbetool can reset the card, then there is no reason wakeup.S shouldn't be able to do it too if the environment is set up correctly.
-- Jon Smirl jonsmirl@gmail.com - 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/
| |