From: fzielcke Date: Mon, 8 Jun 2009 20:51:16 +0000 (+0000) Subject: 2009-06-08 Felix Zielcke X-Git-Tag: 1.98~842 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=255a27d434b9d30189bc07e20f596cd5da1547e9;p=thirdparty%2Fgrub.git 2009-06-08 Felix Zielcke * util/i386/pc/grub-install.in: Add a parameter --disk-module to choose between ata and biosdisk module on i386-pc. --- diff --git a/ChangeLog b/ChangeLog index 4f0fbb587..bb9415004 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2009-06-08 Felix Zielcke + + * util/i386/pc/grub-install.in: Add a parameter --disk-module + to choose between ata and biosdisk module on i386-pc. + 2009-06-08 Oliver Henshaw * bus/usb/ohci.c (grub_ohci_pci_iter): Define the Class, diff --git a/util/i386/pc/grub-install.in b/util/i386/pc/grub-install.in index 468a72e08..5f6e55676 100644 --- a/util/i386/pc/grub-install.in +++ b/util/i386/pc/grub-install.in @@ -49,6 +49,12 @@ force_lba= recheck=no debug=no +if [ "${target_cpu}-${platform}" = "i386-pc" ] ; then + disk_module=biosdisk +else + disk_module=ata +fi + # Usage: usage # Print the usage. usage () { @@ -68,6 +74,13 @@ Install GRUB on your drive. --no-floppy do not probe any floppy drive --recheck probe a device map even if it already exists --force install even if problems are detected +EOF +if [ "${target_cpu}-${platform}" = "i386-pc" ] ; then + cat < /dev/nul devabstraction_module=`$grub_probe --target=abstraction --device ${grub_device}` # The order in this list is critical. Be careful when modifying it. -if [ "${target_cpu}-${platform}" = "i386-pc" ] ; then - modules="$modules biosdisk" -else - modules="$modules ata" -fi +modules="$modules $disk_module" modules="$modules $fs_module $partmap_module $devabstraction_module" prefix_drive= @@ -269,11 +282,11 @@ if [ "x${devabstraction_module}" = "x" ] ; then # Strip partition number install_drive="`echo ${install_drive} | sed -e s/,[0-9]*[a-z]*//g`" grub_drive="`echo ${grub_drive} | sed -e s/,[0-9]*[a-z]*//g`" - if [ "${target_cpu}-${platform}" != "i386-pc" ] ; then - # generic method (used on coreboot) + if [ "$disk_module" = ata ] ; then + # generic method (used on coreboot and ata mod) uuid="`$grub_probe --target=fs_uuid --device ${grub_device}`" if [ "x${uuid}" = "x" ] ; then - echo "UUID needed on this platform, but the filesystem containing ${grubdir} does not support UUIDs." 1>&2 + echo "UUID needed on this platform and with ata mod, but the filesystem containing ${grubdir} does not support UUIDs." 1>&2 exit 1 fi prefix_drive="(UUID=${uuid})"