summaryrefslogtreecommitdiff
path: root/sysutils/u-boot-rpi3/files/patch-lib_efi__loader_efi__console.c
diff options
context:
space:
mode:
authorDiane Bruce <db@FreeBSD.org>2016-10-18 14:23:50 +0000
committerDiane Bruce <db@FreeBSD.org>2016-10-18 14:23:50 +0000
commit38c39dd8da26df3cd84cc043d22e8e2d73d6fbd8 (patch)
tree028a336343266b8728e83f43e75f0d2c2799b4da /sysutils/u-boot-rpi3/files/patch-lib_efi__loader_efi__console.c
parentnet/quagga: Update 1.0.20160315 -> 1.0.20161017 (diff)
Initial u-boot port for the Raspberry Pi 3
Diffstat (limited to 'sysutils/u-boot-rpi3/files/patch-lib_efi__loader_efi__console.c')
-rw-r--r--sysutils/u-boot-rpi3/files/patch-lib_efi__loader_efi__console.c40
1 files changed, 40 insertions, 0 deletions
diff --git a/sysutils/u-boot-rpi3/files/patch-lib_efi__loader_efi__console.c b/sysutils/u-boot-rpi3/files/patch-lib_efi__loader_efi__console.c
new file mode 100644
index 000000000000..e412d0f92420
--- /dev/null
+++ b/sysutils/u-boot-rpi3/files/patch-lib_efi__loader_efi__console.c
@@ -0,0 +1,40 @@
+--- lib/efi_loader/efi_console.c.orig 2016-09-12 14:05:51 UTC
++++ lib/efi_loader/efi_console.c
+@@ -9,9 +9,9 @@
+ #include <common.h>
+ #include <efi_loader.h>
+
+-/* If we can't determine the console size, default to 80x24 */
++/* If we can't determine the console size, default to 80x25 */
+ static int console_columns = 80;
+-static int console_rows = 24;
++static int console_rows = 25;
+ static bool console_size_queried;
+
+ const efi_guid_t efi_guid_console_control = CONSOLE_CONTROL_GUID;
+@@ -165,6 +165,8 @@ static efi_status_t EFIAPI efi_cout_quer
+ unsigned long mode_number, unsigned long *columns,
+ unsigned long *rows)
+ {
++ unsigned long current_mode;
++
+ EFI_ENTRY("%p, %ld, %p, %p", this, mode_number, columns, rows);
+
+ if (!console_size_queried) {
+@@ -196,6 +198,16 @@ static efi_status_t EFIAPI efi_cout_quer
+ }
+
+ out:
++ if (console_columns == 80 && console_rows == 25)
++ current_mode = 0;
++ else if (console_columns == 80 && console_rows == 50)
++ current_mode = 1;
++ else
++ current_mode = 2;
++
++ if (mode_number != current_mode)
++ return EFI_EXIT(EFI_UNSUPPORTED);
++
+ if (columns)
+ *columns = console_columns;
+ if (rows)