Enforce disabling of firmware disk drivers when native drivers kick in.

This commit is contained in:
Vladimir 'phcoder' Serbinenko 2013-04-29 12:16:46 +02:00
parent ef9d8cd510
commit e2f27a8c53
9 changed files with 52 additions and 34 deletions

View file

@ -28,6 +28,7 @@
#include <grub/time.h>
#include <grub/loader.h>
#include <grub/cs5536.h>
#include <grub/disk.h>
GRUB_MOD_LICENSE ("GPLv3+");
@ -1909,6 +1910,9 @@ GRUB_MOD_INIT (ehci)
{
COMPILE_TIME_ASSERT (sizeof (struct grub_ehci_td) == 64);
COMPILE_TIME_ASSERT (sizeof (struct grub_ehci_qh) == 96);
grub_stop_disk_firmware ();
grub_boot_time ("Initing EHCI hardware");
grub_ehci_inithw ();
grub_boot_time ("Registering EHCI driver");

View file

@ -28,6 +28,7 @@
#include <grub/time.h>
#include <grub/cs5536.h>
#include <grub/loader.h>
#include <grub/disk.h>
GRUB_MOD_LICENSE ("GPLv3+");
@ -1442,6 +1443,9 @@ GRUB_MOD_INIT(ohci)
{
COMPILE_TIME_ASSERT (sizeof (struct grub_ohci_td) == 32);
COMPILE_TIME_ASSERT (sizeof (struct grub_ohci_ed) == 16);
grub_stop_disk_firmware ();
grub_ohci_inithw ();
grub_usb_controller_dev_register (&usb_controller);
fini_hnd = grub_loader_register_preboot_hook (grub_ohci_fini_hw,

View file

@ -866,6 +866,8 @@ static struct grub_usb_controller_dev usb_controller =
GRUB_MOD_INIT(uhci)
{
grub_stop_disk_firmware ();
grub_uhci_inithw ();
grub_usb_controller_dev_register (&usb_controller);
grub_dprintf ("uhci", "registered\n");