ppc64 doesn't use int128_t and thus fails to build when NEED_FAKE_INT128_T
gets defined, due to its use in include/kernel/stack.h.
Continue to use it for all other targets for which "$targetlongbits" = "64".
Signed-off-by: Andreas Färber <andreas.faerber@web.de>
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@928 f158a5a8-5612-0410-a976-696ce0be7e32
Detect ppc64 as Big Endian and 64-bit.
Reuse arch/ppc/ wherever possible.
v3:
* Split off int128_t fix.
* Rebase to HEAD, add support for qemu-ppc64 target.
* Rename $INCLUDEARCH to $BASEARCH and initialize it earlier.
* Set both CONFIG_$BASEARCH and CONFIG_$ARCH if they differ.
* Use -fno-builtin.
* Add ppc64 config, copied from ppc.
v2:
* Use powerpc64 prefix.
* Disable fake int128_t for everything but sparc64.
Signed-off-by: Andreas Färber <andreas.faerber@web.de>
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@927 f158a5a8-5612-0410-a976-696ce0be7e32
r879 broke ppc cross-compilation from Darwin/ppc host.
Symptom is that the assembler chokes on arch/ppc/qemu/start.S.
Always use a cross-compiler on Darwin host
since *-apple-darwin*-{gcc,ld} would produce Mach-O binaries.
Signed-off-by: Andreas Färber <andreas.faerber@web.de>
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@926 f158a5a8-5612-0410-a976-696ce0be7e32
RTAS had to be enabled via EXTRACFLAGS=-DUSE_RTAS.
Use the config file instead.
Signed-off-by: Andreas Färber <andreas.faerber@web.de>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@909 f158a5a8-5612-0410-a976-696ce0be7e32
The comparison would've always been false due to missing $.
Signed-off-by: Andreas Färber <andreas.faerber@web.de>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@880 f158a5a8-5612-0410-a976-696ce0be7e32
Autodetect cross compilation, so cross- prefix is no longer needed.
Unify cross and native configurations.
Add unix- prefix to enable openbios-unix build for selected target,
similarly builtin- for builtin targets etc.
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@879 f158a5a8-5612-0410-a976-696ce0be7e32
Otherwise it chokes on ducell in include/kernel/stack.h.
Signed-off-by: Andreas Färber <andreas.faerber@web.de>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@876 f158a5a8-5612-0410-a976-696ce0be7e32
on Laurent's original patch posted to the list.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@siriusit.co.uk>
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@809 f158a5a8-5612-0410-a976-696ce0be7e32
Based on patch by Andreas Färber.
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@808 f158a5a8-5612-0410-a976-696ce0be7e32
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@siriusit.co.uk>
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@734 f158a5a8-5612-0410-a976-696ce0be7e32
included and built as part of the SPARC64 and SPARC32 builds, it was never actually invoked in the boot sequence. Hence this
patch maintains the existing behaviour in that only X86 builds included the Forth loader.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@siriusit.co.uk>
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@712 f158a5a8-5612-0410-a976-696ce0be7e32
required. Update forthstrap to add a new -c option that when specified will direct the Forth kernel console output to a file
and integrate this into the build system. By default, when a dictionary is built using a base dictionary then a new log file
called <dict>-console.log will be generated to help debugging if the build fails.
Also update the exception handler in kernel/bootstrap.c so that it matches the entire range of error codes in
forth/bootstrap/interpreter.fs.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@siriusit.co.uk>
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@706 f158a5a8-5612-0410-a976-696ce0be7e32
files from include/$ARCH to include/arch/$ARCH.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@siriusit.co.uk>
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@687 f158a5a8-5612-0410-a976-696ce0be7e32
the source files into a structure whereby it is easier to find the relationship between a forth package word and its C
implementation, while also creating a libopenbios library into which more common code from the arch/ tree can eventually be
moved.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@siriusit.co.uk>
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@685 f158a5a8-5612-0410-a976-696ce0be7e32
On PPC the host binary build always fails for me. Since I guess I'm
the only one actually building OpenBIOS ppc on ppc and I don't really
care that much about debugging Forth code in my Linux environment,
I guess we can just disable building it by default.
Signed-off-by: Alexander Graf <agraf@suse.de>
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@683 f158a5a8-5612-0410-a976-696ce0be7e32
only onedoing that, as that (really easy) case got broken by the cross
compilation overhaul.
Let's allow host = target gcc configurations again.
Signed-off-by: Alexander Graf <agraf@suse.de>
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@645 f158a5a8-5612-0410-a976-696ce0be7e32
Enable it for powerpc and cross-powerpc
Signed-off-by: Laurent Vivier <Laurent@vivier.Eu>
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@626 f158a5a8-5612-0410-a976-696ce0be7e32
Make forthstrap quiet by default. Use generic rules when possible, unify
the rules and cleanup white space. Use ld flag --whole-archive to avoid
some local rule use. We can also remove some hacks introduced to avoid
missing symbols.
Fix problems brought in by ld flag --whole-archive:
* x86: fix missing nvram symbols
* PPC: disable misc.S build for qemu (conflicts with our libgcc)
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@556 f158a5a8-5612-0410-a976-696ce0be7e32
Later, this will allow to boot like a real NewWorld OpenFirmware:
boot hd:,\\:tbxi
Where "\\" is the default (blessed) system folder (defined by the
filesystem, generally "/System/Library/CoreServices" on MacOS X), and
":tbxi" the first file with the "tbxi" file attribute ("BootX" on
MacOS X)
Signed-off-by: Laurent Vivier <Laurent@vivier.eu>
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@550 f158a5a8-5612-0410-a976-696ce0be7e32
Check that the script is run from the top-level directory. Check that
the config file is available for every specified architecture.
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@548 f158a5a8-5612-0410-a976-696ce0be7e32
CONFIG_OFMEM and CONFIG_OFMEM_MALLOC_ALIGN are defined in
cross-ppc_config.xml, but not in ppc_config.xml, so copy them.
Likewise, copy those setting from cross-sparc64_config.xml to
sparc64_config.xml.
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@547 f158a5a8-5612-0410-a976-696ce0be7e32
Configure the screen size from QEMU command line options using FW_CFG
interface, like r538 for PPC.
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@539 f158a5a8-5612-0410-a976-696ce0be7e32
CONFIG_VGA_WIDTH, CONFIG_VGA_HEIGHT, CONFIG_VGA_DEPTH.
For the moment, only enabled for PPC/QEMU and VGA VBE interface.
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@537 f158a5a8-5612-0410-a976-696ce0be7e32
Add CONFIG_DEBUG_OFMEM option to configurations which implement OF memory
manager.
Implement DEBUG_OFMEM macro to be used by debug traces in OF memory manager
code.
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@514 f158a5a8-5612-0410-a976-696ce0be7e32