From: Jan Beulich Date: Mon, 2 Sep 2019 12:41:19 +0000 (+0200) Subject: x86/ACPI: restore VESA mode upon resume from S3 X-Git-Tag: archive/raspbian/4.14.0+80-gd101b417b7-1+rpi1^2~63^2~1683 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=d1235883bf4e61be0b38e6393d445374b6e52492;p=xen.git 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 Acked-by: Andrew Cooper --- diff --git a/xen/arch/x86/boot/video.S b/xen/arch/x86/boot/video.S index 335a51c9b5..20097aa643 100644 --- 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