[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH] enable quietbios check
From: |
Cory Fields |
Subject: |
[Qemu-devel] [PATCH] enable quietbios check |
Date: |
Thu, 12 Feb 2009 01:48:49 -0500 |
Signed-off-by: Cory Fields <address@hidden>
---
vgabios.c | 27 ++++++++++++++++++++++++++-
1 files changed, 26 insertions(+), 1 deletions(-)
diff --git a/vgabios.c b/vgabios.c
index fbc3588..bb78bd5 100644
--- a/vgabios.c
+++ b/vgabios.c
@@ -55,6 +55,10 @@
#endif
#define USE_BX_INFO
+#define BX_CFG_CTL_PORT 0x510
+#define BX_CFG_DATA_PORT 0x511
+#define BX_CFG_SIGNATURE 0x00
+#define BX_CFG_QUIETBIOS 0x08
/* Declares */
static Bit8u read_byte();
@@ -250,6 +254,10 @@ vgabios_init_func:
call cirrus_init
#endif
+ call _qemu_quietbios_probe
+ test al,al
+ jnz skip_display
+
;; display splash screen
call _display_splash_screen
@@ -269,7 +277,7 @@ vgabios_init_func:
;; show cirrus info
call cirrus_display_info
#endif
-
+skip_display:
retf
ASM_END
@@ -3897,6 +3905,23 @@ ASM_END
#endif
//
--------------------------------------------------------------------------------------------
+int qemu_cfg_port_probe()
+{
+ outw(BX_CFG_CTL_PORT, BX_CFG_SIGNATURE);
+ if (inb(BX_CFG_DATA_PORT) != 'Q') return 0;
+ if (inb(BX_CFG_DATA_PORT) != 'E') return 0;
+ if (inb(BX_CFG_DATA_PORT) != 'M') return 0;
+ if (inb(BX_CFG_DATA_PORT) != 'U') return 0;
+ return 1;
+}
+
+int qemu_quietbios_probe()
+{
+ if(qemu_cfg_port_probe())
+ outw(BX_CFG_CTL_PORT, BX_CFG_QUIETBIOS);
+ if (inb(BX_CFG_DATA_PORT)) return 1;
+ return 0;
+}
ASM_START
;; DATA_SEG_DEFS_HERE
--
1.6.0.6
- [Qemu-devel] [PATCH] Define a new route for sending data to bios, (continued)