I found a little bug in arch/x86/sys_info.c. There is a missing function prototype for void collect_sys_info(struct sys_info *info). Just adding void collect_sys_info(struct sys_info *info); right above the function definition fixes the problem.
Hi everyone,
Having spent a lot of time learning about how OpenBIOS is organised this
weekend, it seems quite obvious that the ELF, Linux, a.out and Fcode
loaders currently duplicated for each architecture really should live in
libopenbios.
A quick diff of the loader code in each of the arch/* directories shows
that there are only trivial differences between each version, and so it
would make a lot of sense to have just one copy of the loader code and
then use headers and/or callbacks to make the loader code work across
all architectures.
This also ties in with some of the work I've been doing for SPARC64 in
that in order to implement the "go" word, we need to reorganise the boot
word and hence implement the "program state" concept from the OF
documentation. If all of the loaders are in one place then this
shouldn't be too complicated a fix.
Can anyone think of a reason why we wouldn't want to move the loaders
into libopenbios? And also, how I would I be able to get hold of the
various types of file (ELF, Linux, a.out) for each platform in order
verify that I hadn't made a mistake in the merge?
ATB,
Mark.
--
Mark Cave-Ayland - Senior Technical Architect
PostgreSQL - PostGIS
Sirius Corporation plc - control through freedom
http://www.siriusit.co.uk
t: +44 870 608 0063
Sirius Labs: http://www.siriusit.co.uk/labs
Author: mcayland
Date: Sun Mar 14 22:40:22 2010
New Revision: 702
URL: http://tracker.coreboot.org/trac/openbios/changeset/702
Log:
Correct comments in kernel/primitives.c as pointed out by ProgrammingKid and Andreas Färber.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland(a)siriusit.co.uk>
Modified:
trunk/openbios-devel/kernel/primitives.c
Modified: trunk/openbios-devel/kernel/primitives.c
==============================================================================
--- trunk/openbios-devel/kernel/primitives.c Sun Mar 14 22:35:54 2010 (r701)
+++ trunk/openbios-devel/kernel/primitives.c Sun Mar 14 22:40:22 2010 (r702)
@@ -30,10 +30,10 @@
#include "forth.c"
-/* words[] is a function array of all native code functions in used by
+/* words[] is a function array of all native code functions used by
* the dictionary, i.e. CFAs and primitives.
* Any change here needs a matching change in the primitive word's
- * name list that is kept for bootstrapping in arch/unix/unix.c
+ * name list that is kept for bootstrapping in kernel/bootstrap.c
*
* NOTE: THIS LIST SHALL NOT CHANGE (EXCEPT MANDATORY ADDITIONS AT
* THE END). ANY OTHER CHANGE WILL BREAK COMPATIBILITY TO OLDER
Author: mcayland
Date: Sun Mar 14 22:35:54 2010
New Revision: 701
URL: http://tracker.coreboot.org/trac/openbios/changeset/701
Log:
Fix a debug whereby the debug banner was being printed to the debug output rather than the console.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland(a)siriusit.co.uk>
Modified:
trunk/openbios-devel/kernel/internal.c
Modified: trunk/openbios-devel/kernel/internal.c
==============================================================================
--- trunk/openbios-devel/kernel/internal.c Sun Mar 14 22:14:04 2010 (r700)
+++ trunk/openbios-devel/kernel/internal.c Sun Mar 14 22:35:54 2010 (r701)
@@ -635,7 +635,7 @@
default:
/* Display debug banner */
- printk(DEBUG_BANNER);
+ printf_console(DEBUG_BANNER);
while (!availchar());
k = getchar();
}
Hi everyone,
In looking at the modules/ subdirectory, it seems to me that it is
actually serving multiple purposes. Not only does it contain C
implementations for Forth words defined within various extension
packages, but also various random library routines.
I'd like to propose creating a new directory called common/ and moving
any files that don't contain C implementations of package words into
this new directory. With this in place, I think it will be possible to
share more files between the various architectures; in particular I
think it will be possible to use one set of code for each of the
different *-loaders, rather than requiring separate implementations for
each architecture (e.g. arch/*/elfload.c).
Thoughts/comments?
ATB,
Mark.
--
Mark Cave-Ayland - Senior Technical Architect
PostgreSQL - PostGIS
Sirius Corporation plc - control through freedom
http://www.siriusit.co.uk
t: +44 870 608 0063
Sirius Labs: http://www.siriusit.co.uk/labs
Author: mcayland
Date: Sun Mar 14 22:14:04 2010
New Revision: 700
URL: http://tracker.coreboot.org/trac/openbios/changeset/700
Log:
Fix PPC build - it seems that changing the headers around was masking the fact that virt_offset was not being defined within
ppc/qemu.c compared to the other PPC builds.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland(a)siriusit.co.uk>
Modified:
trunk/openbios-devel/arch/ppc/qemu/qemu.c
Modified: trunk/openbios-devel/arch/ppc/qemu/qemu.c
==============================================================================
--- trunk/openbios-devel/arch/ppc/qemu/qemu.c Sun Mar 14 22:02:58 2010 (r699)
+++ trunk/openbios-devel/arch/ppc/qemu/qemu.c Sun Mar 14 22:14:04 2010 (r700)
@@ -29,6 +29,8 @@
//#define DUMP_NVRAM
+unsigned long virt_offset = 0;
+
void
exit( int status __attribute__ ((unused)))
{