]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
Set the leds and drain the input buffer in at_keyboard initialisation
authorVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Sun, 22 Aug 2010 16:15:27 +0000 (18:15 +0200)
committerVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Sun, 22 Aug 2010 16:15:27 +0000 (18:15 +0200)
term/at_keyboard.c

index 4213b29dbe19ad74937ad8429e9dd4d4b145c081..06d545d745cedf552f936cdf9e4967e7cbd37e2f 100644 (file)
@@ -223,6 +223,11 @@ grub_keyboard_controller_init (struct grub_term_input *term __attribute__ ((unus
   at_keyboard_status = 0;
   grub_keyboard_controller_orig = grub_keyboard_controller_read ();
   grub_keyboard_controller_write (grub_keyboard_controller_orig | KEYBOARD_SCANCODE_SET1);
+  keyboard_controller_led (led_status);
+  /* Drain input buffer. */
+  while (KEYBOARD_ISREADY (grub_inb (KEYBOARD_REG_STATUS)))
+    grub_inb (KEYBOARD_REG_DATA);
+
   return GRUB_ERR_NONE;
 }