Index: /trunk/src/VBox/Devices/PC/BIOS-new/ahci.c
===================================================================
--- /trunk/src/VBox/Devices/PC/BIOS-new/ahci.c	(revision 39589)
+++ /trunk/src/VBox/Devices/PC/BIOS-new/ahci.c	(revision 39590)
@@ -120,4 +120,5 @@
 #define AHCI_REG_PORT_IS   0x10
 # define AHCI_REG_PORT_IS_DHRS RT_BIT_32(0)
+# define AHCI_REG_PORT_IS_TFES RT_BIT_32(30)
 #define AHCI_REG_PORT_IE   0x14
 #define AHCI_REG_PORT_CMD  0x18
@@ -258,5 +259,5 @@
         DBG_AHCI("AHCI: Waiting for D2H FIS\n");
         while (ahci_ctrl_is_bit_set(io_base, AHCI_PORT_REG(port, AHCI_REG_PORT_IS),
-                                    AHCI_REG_PORT_IS_DHRS) == 0)
+                                    AHCI_REG_PORT_IS_DHRS | AHCI_REG_PORT_IS_TFES) == 0)
         {
             // This is where we'd need some kind of a yield functionality...
