On my test hardware, the EFI cursor stays up when switching to gfxterm,
which looks pretty odd.  We should disable it when the EFI console stops
being active.

2010-07-20  Colin Watson  <cjwat...@ubuntu.com>

        Disable EFI cursor when the EFI console becomes inactive.

        * term/efi/console.c (grub_efi_console_init): New function.
        (grub_efi_console_fini): New function.
        (grub_console_term_output): Register init and fini methods.

=== modified file 'term/efi/console.c'
--- term/efi/console.c  2010-05-09 11:20:35 +0000
+++ term/efi/console.c  2010-07-20 15:35:42 +0000
@@ -311,6 +311,20 @@ grub_console_setcursor (struct grub_term
   efi_call_2 (o->enable_cursor, o, on);
 }
 
+static grub_err_t
+grub_efi_console_init (struct grub_term_output *term)
+{
+  grub_console_setcursor (term, 1);
+  return 0;
+}
+
+static grub_err_t
+grub_efi_console_fini (struct grub_term_output *term)
+{
+  grub_console_setcursor (term, 0);
+  return 0;
+}
+
 static struct grub_term_input grub_console_term_input =
   {
     .name = "console",
@@ -321,6 +335,8 @@ static struct grub_term_input grub_conso
 static struct grub_term_output grub_console_term_output =
   {
     .name = "console",
+    .init = grub_efi_console_init,
+    .fini = grub_efi_console_fini,
     .putchar = grub_console_putchar,
     .getwh = grub_console_getwh,
     .getxy = grub_console_getxy,

-- 
Colin Watson                                       [cjwat...@ubuntu.com]

_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/grub-devel

Reply via email to