[OpenBIOS] [commit] r734 - in trunk/openbios-devel: arch/ppc/qemu config/examples include/arch/ppc

repository service svn at openbios.org
Mon Apr 5 20:41:11 CEST 2010


Author: mcayland
Date: Mon Apr  5 20:41:11 2010
New Revision: 734
URL: http://tracker.coreboot.org/trac/openbios/changeset/734

Log:
Partially fix up the OpenBIOS PPC build. While the code technically works, even with this fix in place the PPC console output 
disappears when booting a FC12 test ISO directly. Interestingly enough, if the equivalent "load" and "go" commands are entered 
manually then the console output works fine and the ISO can boot?! So there is still an issue with the console not being 
initialised correctly somewhere.

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland at siriusit.co.uk>

Modified:
   trunk/openbios-devel/arch/ppc/qemu/init.c
   trunk/openbios-devel/arch/ppc/qemu/ofmem.c
   trunk/openbios-devel/config/examples/cross-ppc_config.xml
   trunk/openbios-devel/config/examples/ppc_config.xml
   trunk/openbios-devel/include/arch/ppc/io.h
   trunk/openbios-devel/include/arch/ppc/types.h

Modified: trunk/openbios-devel/arch/ppc/qemu/init.c
==============================================================================
--- trunk/openbios-devel/arch/ppc/qemu/init.c	Sat Apr  3 15:03:39 2010	(r733)
+++ trunk/openbios-devel/arch/ppc/qemu/init.c	Mon Apr  5 20:41:11 2010	(r734)
@@ -472,6 +472,7 @@
 {
     ucell addr;
 
+    feval("saved-program-state >sps.entry @");
     addr = POP();
 
     call_elf( 0, 0, addr);

Modified: trunk/openbios-devel/arch/ppc/qemu/ofmem.c
==============================================================================
--- trunk/openbios-devel/arch/ppc/qemu/ofmem.c	Sat Apr  3 15:03:39 2010	(r733)
+++ trunk/openbios-devel/arch/ppc/qemu/ofmem.c	Mon Apr  5 20:41:11 2010	(r734)
@@ -162,8 +162,6 @@
 /*	misc								*/
 /************************************************************************/
 
-extern char _start[], _end[];
-
 ucell ofmem_arch_default_translation_mode( ucell phys )
 {
 	/* XXX: Guard bit not set as it should! */

Modified: trunk/openbios-devel/config/examples/cross-ppc_config.xml
==============================================================================
--- trunk/openbios-devel/config/examples/cross-ppc_config.xml	Sat Apr  3 15:03:39 2010	(r733)
+++ trunk/openbios-devel/config/examples/cross-ppc_config.xml	Mon Apr  5 20:41:11 2010	(r734)
@@ -42,7 +42,7 @@
   <option name="CONFIG_VGA_DEPTH" type="integer" value="8"/>
   <option name="CONFIG_LOADER_AOUT" type="boolean" value="false"/>
   <option name="CONFIG_LOADER_BOOTINFO" type="boolean" value="true"/>
-  <option name="CONFIG_LOADER_ELF" type="boolean" value="false"/>
+  <option name="CONFIG_LOADER_ELF" type="boolean" value="true"/>
   <option name="CONFIG_LOADER_FCODE" type="boolean" value="false"/>
   <option name="CONFIG_LOADER_FORTH" type="boolean" value="false"/>
   <option name="CONFIG_LOADER_XCOFF" type="boolean" value="true"/>

Modified: trunk/openbios-devel/config/examples/ppc_config.xml
==============================================================================
--- trunk/openbios-devel/config/examples/ppc_config.xml	Sat Apr  3 15:03:39 2010	(r733)
+++ trunk/openbios-devel/config/examples/ppc_config.xml	Mon Apr  5 20:41:11 2010	(r734)
@@ -42,7 +42,7 @@
   <option name="CONFIG_VGA_DEPTH" type="integer" value="8"/>
   <option name="CONFIG_LOADER_AOUT" type="boolean" value="false"/>
   <option name="CONFIG_LOADER_BOOTINFO" type="boolean" value="true"/>
-  <option name="CONFIG_LOADER_ELF" type="boolean" value="false"/>
+  <option name="CONFIG_LOADER_ELF" type="boolean" value="true"/>
   <option name="CONFIG_LOADER_FCODE" type="boolean" value="false"/>
   <option name="CONFIG_LOADER_FORTH" type="boolean" value="false"/>
   <option name="CONFIG_LOADER_XCOFF" type="boolean" value="true"/>

Modified: trunk/openbios-devel/include/arch/ppc/io.h
==============================================================================
--- trunk/openbios-devel/include/arch/ppc/io.h	Sat Apr  3 15:03:39 2010	(r733)
+++ trunk/openbios-devel/include/arch/ppc/io.h	Mon Apr  5 20:41:11 2010	(r734)
@@ -6,6 +6,7 @@
 #define NO_QEMU_PROTOS
 #include "arch/common/fw_cfg.h"
 
+extern char _start, _end;
 extern unsigned long virt_offset;
 
 #define phys_to_virt(phys) ((void *) ((unsigned long) (phys) - virt_offset))

Modified: trunk/openbios-devel/include/arch/ppc/types.h
==============================================================================
--- trunk/openbios-devel/include/arch/ppc/types.h	Sat Apr  3 15:03:39 2010	(r733)
+++ trunk/openbios-devel/include/arch/ppc/types.h	Mon Apr  5 20:41:11 2010	(r734)
@@ -40,6 +40,10 @@
 #define FMT_ucellx  "%08x"
 #define FMT_ucellX  "%08X"
 
+#define FMT_elf     "%#x"
+#define FMT_sizet   "%lx"
+#define FMT_aout_ehdr  "%lx"
+
 #define bitspercell	(sizeof(cell)<<3)
 #define bitsperdcell	(sizeof(dcell)<<3)
 



More information about the OpenBIOS mailing list