Re: Weirdness in arch/i386/kernel/acpi_wakeup.S
From: Pavel Machek <hidden>
Date: 2003-02-12 14:24:05
Hi!
quoted
quoted
(The problem I'm having is that the console VGA is not re-initialized upon coming back from an S3 suspend and I am trying to debug that)Have you tried acpi_sleep=s3_bios and acpi_sleep=s3_mode (not yet in 2.5.59, but already in 2.5.59-acpi?)(tried with 2.5.60 now including the 4096 byte wakeup .org fix, and btw this is on an Acer Travelmate 634LC laptop). Without s3_bios and s3_mode, and without any drivers compiled into the kernel, the kernel wakes up after the suspend, and you can execute stuff using the keyboard but the VGA never resumes. Close call!
Good.
With s3_bios, the display lights up and the cursor starts blinking in the upper left corner, but it hangs there (no keyboard input possible). I guess the BIOS call succeeded in reinitializing the display but something after that hung. With s3_mode, the display neither lights up nor allows keyboard input :)
Do you use vgacon or vesafb or ...?
Anyway, may I ask what debugging methods are best for tracking down problems like this on an i386. I'm used to doing kernel debugging on embedded systems but then you have access to logic analysers, LED-lighting etc.. what would be an appropriate way to debug such low level code on a PC - I noticed these references in acpi_wakeup.S like "movw $0x0e00 + 'L', %fs:(0x10)" that seem to be some kind of debug messages - what do they really do - write to the VGA character memory ?
Yes, exactly. I'd suggest 8 leds on printer port as a debugging trick... [VGA is easier -- when it works. Try moving 'L' just after "call bios" to see if it ever returns etc.] Pavel -- Casualities in World Trade Center: ~3k dead inside the building, cryptography in U.S.A. and free speech in Czech Republic. ------------------------------------------------------- This SF.NET email is sponsored by: SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See! http://www.vasoftware.com