Index: /trunk/src/VBox/Main/src-client/ConsoleImpl2.cpp
===================================================================
--- /trunk/src/VBox/Main/src-client/ConsoleImpl2.cpp	(revision 50555)
+++ /trunk/src/VBox/Main/src-client/ConsoleImpl2.cpp	(revision 50556)
@@ -1292,4 +1292,5 @@
         PCFGMNODE pBiosCfg = NULL;      /* /Devices/pcbios/0/Config/ */
         PCFGMNODE pNetBootCfg = NULL;   /* /Devices/pcbios/0/Config/NetBoot/ */
+        bool fHaveBiosScsiConfig = false;
 
         InsertConfigNode(pRoot, "Devices", &pDevices);
@@ -1955,10 +1956,15 @@
                     InsertConfigInteger(pCfg, "Bootable",  fBootable);
 
-                    if (pBiosCfg)
+                    /* BIOS configuration values, first controller only. */
+                    if (!pBusMgr->hasPCIDevice("lsilogicscsi", 1) && pBiosCfg)
                     {
-                        InsertConfigString(pBiosCfg, "ScsiHardDiskDevice", "lsilogicscsi");
+                        if (!fHaveBiosScsiConfig)
+                        {
+                            fHaveBiosScsiConfig = true;
+                            InsertConfigString(pBiosCfg, "ScsiHardDiskDevice", "lsilogicscsi");
+
+                            hrc = SetBiosDiskInfo(pMachine, pCfg, pBiosCfg, controllerName, apszBiosConfigScsi);    H();
+                        }
                     }
-
-                    hrc = SetBiosDiskInfo(pMachine, pCfg, pBiosCfg, controllerName, apszBiosConfigScsi);    H();
 
                     /* Attach the status driver */
@@ -1976,10 +1982,15 @@
                     InsertConfigInteger(pCfg, "Bootable",  fBootable);
 
-                    if (pBiosCfg)
+                    /* BIOS configuration values, first controller only. */
+                    if (!pBusMgr->hasPCIDevice("buslogic", 1) && pBiosCfg)
                     {
-                        InsertConfigString(pBiosCfg, "ScsiHardDiskDevice", "buslogic");
+                        if (!fHaveBiosScsiConfig)
+                        {
+                            fHaveBiosScsiConfig = true;
+                            InsertConfigString(pBiosCfg, "ScsiHardDiskDevice", "buslogic");
+
+                            hrc = SetBiosDiskInfo(pMachine, pCfg, pBiosCfg, controllerName, apszBiosConfigScsi);    H();
+                        }
                     }
-
-                    hrc = SetBiosDiskInfo(pMachine, pCfg, pBiosCfg, controllerName, apszBiosConfigScsi);    H();
 
                     /* Attach the status driver */
@@ -2067,10 +2078,15 @@
                     InsertConfigInteger(pCfg, "Bootable",  fBootable);
 
-                    if (pBiosCfg)
+                    /* BIOS configuration values, first controller only. */
+                    if (!pBusMgr->hasPCIDevice("lsilogicsas", 1) && pBiosCfg)
                     {
-                        InsertConfigString(pBiosCfg, "ScsiHardDiskDevice", "lsilogicsas");
+                        if (!fHaveBiosScsiConfig)
+                        {
+                            fHaveBiosScsiConfig = true;
+                            InsertConfigString(pBiosCfg, "ScsiHardDiskDevice", "lsilogicsas");
+
+                            hrc = SetBiosDiskInfo(pMachine, pCfg, pBiosCfg, controllerName, apszBiosConfigScsi);    H();
+                        }
                     }
-
-                    hrc = SetBiosDiskInfo(pMachine, pCfg, pBiosCfg, controllerName, apszBiosConfigScsi);    H();
 
                     ULONG cPorts = 0;
