|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen master] efi: split out efi_set_gop_mode()
commit af79880d358de78ba52effb7daece27d42bc602c
Author: Daniel Kiper <daniel.kiper@xxxxxxxxxx>
AuthorDate: Thu Oct 8 11:25:09 2015 +0200
Commit: Jan Beulich <jbeulich@xxxxxxxx>
CommitDate: Thu Oct 8 11:25:09 2015 +0200
efi: split out efi_set_gop_mode()
..which sets chosen GOP mode. We want to re-use this
code to support multiboot2 protocol on EFI platforms.
Signed-off-by: Daniel Kiper <daniel.kiper@xxxxxxxxxx>
Reviewed-by: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
Acked-by: Jan Beulich <jbeulich@xxxxxxxx>
---
xen/common/efi/boot.c | 29 +++++++++++++++++------------
1 files changed, 17 insertions(+), 12 deletions(-)
diff --git a/xen/common/efi/boot.c b/xen/common/efi/boot.c
index 9bbb952..0be5d9e 100644
--- a/xen/common/efi/boot.c
+++ b/xen/common/efi/boot.c
@@ -859,6 +859,22 @@ static void __init efi_variables(void)
}
}
+static void __init efi_set_gop_mode(EFI_GRAPHICS_OUTPUT_PROTOCOL *gop, UINTN
gop_mode)
+{
+ EFI_GRAPHICS_OUTPUT_MODE_INFORMATION *mode_info;
+ EFI_STATUS status;
+ UINTN info_size;
+
+ /* Set graphics mode. */
+ if ( gop_mode < gop->Mode->MaxMode && gop_mode != gop->Mode->Mode )
+ gop->SetMode(gop, gop_mode);
+
+ /* Get graphics and frame buffer info. */
+ status = gop->QueryMode(gop, gop->Mode->Mode, &info_size, &mode_info);
+ if ( !EFI_ERROR(status) )
+ efi_arch_video_init(gop, info_size, mode_info);
+}
+
static int __init __maybe_unused set_color(u32 mask, int bpp, u8 *pos, u8 *sz)
{
if ( bpp < 0 )
@@ -886,7 +902,6 @@ efi_start(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE
*SystemTable)
UINTN map_key, info_size, gop_mode = ~0;
EFI_SHIM_LOCK_PROTOCOL *shim_lock;
EFI_GRAPHICS_OUTPUT_PROTOCOL *gop = NULL;
- EFI_GRAPHICS_OUTPUT_MODE_INFORMATION *mode_info;
union string section = { NULL }, name;
bool_t base_video = 0, retry;
char *option_str;
@@ -1101,17 +1116,7 @@ efi_start(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE
*SystemTable)
efi_arch_memory_setup();
if ( gop )
- {
-
- /* Set graphics mode. */
- if ( gop_mode < gop->Mode->MaxMode && gop_mode != gop->Mode->Mode )
- gop->SetMode(gop, gop_mode);
-
- /* Get graphics and frame buffer info. */
- status = gop->QueryMode(gop, gop->Mode->Mode, &info_size, &mode_info);
- if ( !EFI_ERROR(status) )
- efi_arch_video_init(gop, info_size, mode_info);
- }
+ efi_set_gop_mode(gop, gop_mode);
info_size = 0;
efi_bs->GetMemoryMap(&info_size, NULL, &map_key,
--
generated by git-patchbot for /home/xen/git/xen.git#master
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |