[OpenBIOS] r539 - in trunk/openbios-devel: config/examples drivers include/ppc include/sparc64

svn at openbios.org svn at openbios.org
Sat Aug 8 12:52:59 CEST 2009


Author: blueswirl
Date: 2009-08-08 12:52:59 +0200 (Sat, 08 Aug 2009)
New Revision: 539

Modified:
   trunk/openbios-devel/config/examples/cross-sparc64_config.xml
   trunk/openbios-devel/config/examples/sparc64_config.xml
   trunk/openbios-devel/drivers/vga_vbe.c
   trunk/openbios-devel/include/ppc/io.h
   trunk/openbios-devel/include/sparc64/io.h
Log:
Sparc64: configure screen size from QEMU command line options

Configure the screen size from QEMU command line options using FW_CFG
interface, like r538 for PPC.

Signed-off-by: Blue Swirl <blauwirbel at gmail.com>

Modified: trunk/openbios-devel/config/examples/cross-sparc64_config.xml
===================================================================
--- trunk/openbios-devel/config/examples/cross-sparc64_config.xml	2009-08-04 21:08:37 UTC (rev 538)
+++ trunk/openbios-devel/config/examples/cross-sparc64_config.xml	2009-08-08 10:52:59 UTC (rev 539)
@@ -4,6 +4,7 @@
   <!-- generic -->
   <option name="CONFIG_SPARC" type="boolean" value="true"/>
   <option name="CONFIG_SPARC64" type="boolean" value="true"/>
+  <option name="CONFIG_QEMU" type="boolean" value="true"/>
   <option name="CONFIG_BIG_ENDIAN" type="boolean" value="true"/>
 
   <!-- kernel binaries (SPARC64) -->

Modified: trunk/openbios-devel/config/examples/sparc64_config.xml
===================================================================
--- trunk/openbios-devel/config/examples/sparc64_config.xml	2009-08-04 21:08:37 UTC (rev 538)
+++ trunk/openbios-devel/config/examples/sparc64_config.xml	2009-08-08 10:52:59 UTC (rev 539)
@@ -4,6 +4,7 @@
   <!-- generic -->
   <option name="CONFIG_SPARC" type="boolean" value="true"/>
   <option name="CONFIG_SPARC64" type="boolean" value="true"/>
+  <option name="CONFIG_QEMU" type="boolean" value="true"/>
   <option name="CONFIG_BIG_ENDIAN" type="boolean" value="true"/>
 
   <!-- kernel binaries (SPARC64) -->

Modified: trunk/openbios-devel/drivers/vga_vbe.c
===================================================================
--- trunk/openbios-devel/drivers/vga_vbe.c	2009-08-04 21:08:37 UTC (rev 538)
+++ trunk/openbios-devel/drivers/vga_vbe.c	2009-08-08 10:52:59 UTC (rev 539)
@@ -131,11 +131,11 @@
 	int depth = VGA_DEFAULT_DEPTH;
 	int linebytes = VGA_DEFAULT_LINEBYTES;
 
-#if defined(CONFIG_QEMU) && defined(CONFIG_PPC)
+#if defined(CONFIG_QEMU) && (defined(CONFIG_PPC) || defined(CONFIG_SPARC64))
 	int w, h, d;
-	w = fw_cfg_read_i16(FW_CFG_PPC_WIDTH);
-	h = fw_cfg_read_i16(FW_CFG_PPC_HEIGHT);
-	d = fw_cfg_read_i16(FW_CFG_PPC_DEPTH);
+        w = fw_cfg_read_i16(FW_CFG_ARCH_WIDTH);
+        h = fw_cfg_read_i16(FW_CFG_ARCH_HEIGHT);
+        d = fw_cfg_read_i16(FW_CFG_ARCH_DEPTH);
 	if (w && h && d) {
 		width = w;
 		height = h;

Modified: trunk/openbios-devel/include/ppc/io.h
===================================================================
--- trunk/openbios-devel/include/ppc/io.h	2009-08-04 21:08:37 UTC (rev 538)
+++ trunk/openbios-devel/include/ppc/io.h	2009-08-08 10:52:59 UTC (rev 539)
@@ -165,9 +165,9 @@
 #endif
 
 #if defined(CONFIG_QEMU)
-#define FW_CFG_PPC_WIDTH        (FW_CFG_ARCH_LOCAL + 0x00)
-#define FW_CFG_PPC_HEIGHT       (FW_CFG_ARCH_LOCAL + 0x01)
-#define FW_CFG_PPC_DEPTH        (FW_CFG_ARCH_LOCAL + 0x02)
+#define FW_CFG_ARCH_WIDTH        (FW_CFG_ARCH_LOCAL + 0x00)
+#define FW_CFG_ARCH_HEIGHT       (FW_CFG_ARCH_LOCAL + 0x01)
+#define FW_CFG_ARCH_DEPTH        (FW_CFG_ARCH_LOCAL + 0x02)
 #endif
 
 #endif /* _ASM_IO_H */

Modified: trunk/openbios-devel/include/sparc64/io.h
===================================================================
--- trunk/openbios-devel/include/sparc64/io.h	2009-08-04 21:08:37 UTC (rev 538)
+++ trunk/openbios-devel/include/sparc64/io.h	2009-08-08 10:52:59 UTC (rev 539)
@@ -3,6 +3,9 @@
 
 #include "asm/types.h"
 
+#define NO_QEMU_PROTOS
+#include "openbios/fw_cfg.h"
+
 extern unsigned long va_shift; // Set in entry.S
 // Defined in ldscript
 extern char _start, _data, _stack, _estack, _end, _vmem, _evmem, _iomem;
@@ -213,4 +216,11 @@
 extern void outsw(u32 reg, const void *addr, unsigned long count);
 #endif
 #endif
+
+#if defined(CONFIG_QEMU)
+#define FW_CFG_ARCH_WIDTH        (FW_CFG_ARCH_LOCAL + 0x00)
+#define FW_CFG_ARCH_HEIGHT       (FW_CFG_ARCH_LOCAL + 0x01)
+#define FW_CFG_ARCH_DEPTH        (FW_CFG_ARCH_LOCAL + 0x02)
+#endif
+
 #endif /* _ASM_IO_H */




More information about the OpenBIOS mailing list