|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH RFC 2/3] x86/ACPI: restore VESA mode upon resume from S3
In order for "acpi_sleep=s3_mode" to have any effect, we should record
the video mode we switched to during boot. Since right now there's mode
setting code for VESA modes only in the resume case, record the mode
just in that one case.
Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
---
RFC: On the box that I've been trying to test this on this didn't really
make a difference (in the random cases where resume works in the
first place there): The graphics card looks to remain powered off
even after the Dom0 kernel has resumed. Additionally using
"acpi_sleep=s3_bios" didn't make a difference either. Furthermore
it looks like the serial console (connected via PCI card) doesn't
work (yet) immediately after resume (I suppose it too is powered
down), and resume hangs altogether with it in use. Hence it's sort
of difficult to actually debug anything here.
---
I'm wondering actually whether the user having to explicitly request the
mode restoration is a good model: Why would we _not_ want to restore the
mode we've set during boot? In the worst case Dom0 kernel or X will
change the mode another time.
--- a/xen/arch/x86/boot/video.S
+++ b/xen/arch/x86/boot/video.S
@@ -455,14 +455,17 @@ check_vesa:
cmpb $0x99, %al
jnz _setbad # Doh! No linear frame buffer.
+ pushw %bx
subb $VIDEO_FIRST_VESA>>8, %bh
orw $0x4000, %bx # Use linear frame buffer
movw $0x4f02, %ax # VESA BIOS mode set call
int $0x10
+ popw %bx
cmpw $0x004f, %ax # AL=4f if implemented
jnz _setbad # AH=0 if OK
movb $1, bootsym(graphic_mode) # flag graphic mode
+ movw %bx, bootsym(video_mode)
stc
ret
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |