[OpenBIOS] [PATCH] Disable mixing of DMA and FIFO messages in the Solaris ESP kernel module.

Mark Cave-Ayland mark.cave-ayland at siriusit.co.uk
Sun May 1 22:33:43 CEST 2011


QEMU's ESP emulation currently does not support the mixing of DMA and FIFO
messages. Setting the scsi-options property prevents the Solaris ESP kernel
module from trying to use this feature by default, which otherwise would
cause boot to fail.

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland at siriusit.co.uk>
---
 openbios-devel/drivers/esp.c |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/openbios-devel/drivers/esp.c b/openbios-devel/drivers/esp.c
index 2dfc2bd..78478f6 100644
--- a/openbios-devel/drivers/esp.c
+++ b/openbios-devel/drivers/esp.c
@@ -383,6 +383,14 @@ ob_esp_initialize(__attribute__((unused)) esp_private_t **esp)
     push_str("scsi");
     fword("device-type");
 
+    /* QEMU's ESP emulation does not support mixing DMA and FIFO messages. By
+       setting this attribute, we prevent the Solaris ESP kernel driver from
+       trying to use this feature when booting a disk image (and failing) */
+    PUSH(0x58);
+    fword("encode-int");
+    push_str("scsi-options");
+    fword("property");
+
     PUSH(0x24);
     fword("encode-int");
     PUSH(0);
-- 
1.7.2.5




More information about the OpenBIOS mailing list