summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJustin M. Forbes <jforbes@redhat.com>2012-10-05 11:05:47 -0500
committerJustin M. Forbes <jforbes@redhat.com>2012-10-05 11:05:47 -0500
commitbf6e2f44b95e1eb4fdfd50111a10a896f4fe82f1 (patch)
tree897f2b20cc1d849e0f4a54daca49b2d09254fc67
parent1ae0b0fe93f0c4e6166fc45a7d43a2d0bffd51fc (diff)
downloadkernel-bf6e2f44b95e1eb4fdfd50111a10a896f4fe82f1.tar.gz
kernel-bf6e2f44b95e1eb4fdfd50111a10a896f4fe82f1.tar.xz
kernel-bf6e2f44b95e1eb4fdfd50111a10a896f4fe82f1.zip
Fix handle-efi-roms.patch
-rw-r--r--handle-efi-roms.patch70
-rw-r--r--kernel.spec5
2 files changed, 4 insertions, 71 deletions
diff --git a/handle-efi-roms.patch b/handle-efi-roms.patch
index 7f02a1c3d..bc080542b 100644
--- a/handle-efi-roms.patch
+++ b/handle-efi-roms.patch
@@ -131,62 +131,6 @@ diff -ur linux-3.6.0-0.rc2.git2.1.fc18.x86_64/arch/x86/boot/compressed/eboot.c .
/*
* See if we have Graphics Output Protocol
*/
-@@ -276,8 +392,9 @@
- nr_gops = size / sizeof(void *);
- for (i = 0; i < nr_gops; i++) {
- struct efi_graphics_output_mode_info *info;
-- efi_guid_t pciio_proto = EFI_PCI_IO_PROTOCOL_GUID;
-- void *pciio;
-+ efi_guid_t conout_proto = EFI_CONSOLE_OUT_DEVICE_GUID;
-+ bool conout_found = false;
-+ void *dummy;
- void *h = gop_handle[i];
-
- status = efi_call_phys3(sys_table->boottime->handle_protocol,
-@@ -285,19 +402,21 @@
- if (status != EFI_SUCCESS)
- continue;
-
-- efi_call_phys3(sys_table->boottime->handle_protocol,
-- h, &pciio_proto, &pciio);
-+ status = efi_call_phys3(sys_table->boottime->handle_protocol,
-+ h, &conout_proto, &dummy);
-+
-+ if (status == EFI_SUCCESS)
-+ conout_found = true;
-
- status = efi_call_phys4(gop->query_mode, gop,
- gop->mode->mode, &size, &info);
-- if (status == EFI_SUCCESS && (!first_gop || pciio)) {
-+ if (status == EFI_SUCCESS && (!first_gop || conout_found)) {
- /*
-- * Apple provide GOPs that are not backed by
-- * real hardware (they're used to handle
-- * multiple displays). The workaround is to
-- * search for a GOP implementing the PCIIO
-- * protocol, and if one isn't found, to just
-- * fallback to the first GOP.
-+ * Systems that use the UEFI Console Splitter may
-+ * provide multiple GOP devices, not all of which are
-+ * backed by real hardware. The workaround is to search
-+ * for a GOP implementing the ConOut protocol, and if
-+ * one isn't found, to just fall back to the first GOP.
- */
- width = info->horizontal_resolution;
- height = info->vertical_resolution;
-@@ -308,10 +427,10 @@
- pixels_per_scan_line = info->pixels_per_scan_line;
-
- /*
-- * Once we've found a GOP supporting PCIIO,
-+ * Once we've found a GOP supporting ConOut,
- * don't bother looking any further.
- */
-- if (pciio)
-+ if (conout_found)
- break;
-
- first_gop = gop;
@@ -1052,6 +1171,8 @@
setup_graphics(boot_params);
@@ -196,20 +140,6 @@ diff -ur linux-3.6.0-0.rc2.git2.1.fc18.x86_64/arch/x86/boot/compressed/eboot.c .
status = efi_call_phys3(sys_table->boottime->allocate_pool,
EFI_LOADER_DATA, sizeof(*gdt),
(void **)&gdt);
-diff -ur linux-3.6.0-0.rc2.git2.1.fc18.x86_64/arch/x86/boot/compressed/eboot.h ../kernel-3.5.fc18.bak/linux-3.6.0-0.rc2.git2.1.fc18.x86_64/arch/x86/boot/compressed/eboot.h
---- linux-3.6.0-0.rc2.git2.1.fc18.x86_64/arch/x86/boot/compressed/eboot.h 2012-07-21 16:58:29.000000000 -0400
-+++ ../kernel-3.5.fc18.bak/linux-3.6.0-0.rc2.git2.1.fc18.x86_64/arch/x86/boot/compressed/eboot.h 2012-08-22 15:25:40.530244882 -0400
-@@ -14,6 +14,10 @@
- #define EFI_PAGE_SIZE (1UL << EFI_PAGE_SHIFT)
- #define EFI_READ_CHUNK_SIZE (1024 * 1024)
-
-+#define EFI_CONSOLE_OUT_DEVICE_GUID \
-+ EFI_GUID( 0xd3b36f2c, 0xd551, 0x11d4, 0x9a, 0x46, 0x0, 0x90, 0x27, \
-+ 0x3f, 0xc1, 0x4d )
-+
- #define PIXEL_RGB_RESERVED_8BIT_PER_COLOR 0
- #define PIXEL_BGR_RESERVED_8BIT_PER_COLOR 1
- #define PIXEL_BIT_MASK 2
diff -ur linux-3.6.0-0.rc2.git2.1.fc18.x86_64/arch/x86/include/asm/bootparam.h ../kernel-3.5.fc18.bak/linux-3.6.0-0.rc2.git2.1.fc18.x86_64/arch/x86/include/asm/bootparam.h
--- linux-3.6.0-0.rc2.git2.1.fc18.x86_64/arch/x86/include/asm/bootparam.h 2012-08-22 15:26:32.485522068 -0400
+++ ../kernel-3.5.fc18.bak/linux-3.6.0-0.rc2.git2.1.fc18.x86_64/arch/x86/include/asm/bootparam.h 2012-08-22 15:25:40.530244882 -0400
diff --git a/kernel.spec b/kernel.spec
index 2b4671c08..10d7adc77 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -1404,7 +1404,7 @@ ApplyPatch modsign-post-KS-jwb.patch
ApplyPatch secure-boot-20120924.patch
# Improved PCI support for UEFI
-# ApplyPatch handle-efi-roms.patch
+ApplyPatch handle-efi-roms.patch
# Assorted Virt Fixes
@@ -2314,6 +2314,9 @@ fi
# || ||
%changelog
* Fri Oct 05 2012 Justin M. Forbes <jforbes@redhat.com>
+- Fix handle-efi-roms.patch
+
+* Fri Oct 05 2012 Justin M. Forbes <jforbes@redhat.com>
- v3.6-6670-gecefbd9
- Reenable debugging options.