summaryrefslogtreecommitdiff
path: root/arch/unix
Commit message (Collapse)AuthorAgeFilesLines
* arch/unix/unix.c: fix build on x86 architecture with modern gcc compilersMark Cave-Ayland2022-02-081-0/+2
| | | | | | | | | | | Modern gcc compilers will fail to build x86 OpenBIOS failing with the error message "libc/misc.c:20: multiple definition of `errno_int'" during link. Since the accompanying comment mentions that the reason for adding the definition is to allow compilation to succeed on OS X, surround it with suitable #if defined(__APPLE__) ... #endif guards. Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
* Remove obsolete email addressesStefan Reinauer2017-06-088-8/+8
| | | | Signed-off-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
* fw_cfg: implement fw-cfg-read-file Forth wordMark Cave-Ayland2017-04-201-0/+8
| | | | | | | Implement fw-cfg-read-file Forth word as a simple wrapper around fw_cfg_read_file(). Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
* unix: fix openbios-unix buildMark Cave-Ayland2016-10-151-0/+2
| | | | | | | The previous context patch series accidentally omitted adding __context to openbios-unix causing a link failure. Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
* libopenbios: remove address parameter from start_elf()Mark Cave-Ayland2016-09-111-1/+1
| | | | | | | Now that each loader sets up its own context, there is no need to pass in the address or set up the context ourselves. Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
* elf: implement load/init-program as per IEEE-1275 specificationMark Cave-Ayland2016-09-111-1/+6
| | | | | | | load should place the file at load-base, whilst init-program should parse the memory at load-base and set up the context accordingly. Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
* libopenbios: move go() function into libopenbiosMark Cave-Ayland2016-09-111-0/+8
| | | | | | | | | Add an (arch-go) hook for architectures that need to do their own thing before starting an image, and switch the callers over to use it. Also clarify the state-valid check: any non-zero value is considered true. Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
* libopenbios: move console selection from compile-time to runtimeMark Cave-Ayland2013-10-251-1/+22
| | | | | | | | | | | | | Some architectures require different console configurations depending upon the machine type. This commit moves the console handlers into a struct _console_ops structure held within libopenbios and switches all our supported architectures over to use it. Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> CC: Andreas Färber <afaerber@suse.de> CC: Hervé Poussineau <hpoussin@reactos.org> git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@1230 f158a5a8-5612-0410-a976-696ce0be7e32
* Unix build: Add is_machine helpersAlexander Graf2013-06-221-0/+20
| | | | | | | | | | | | | | When building the unix target on PPC, our #ifdef'ery thinks we can properly use the is_machine helpers and act accordingly to implement hacks. Expose these helpers in the unix target as well, just always define them as false. That way we safe compilation without adding too much logic to deal with unimportant corner cases. Signed-off-by: Alexander Graf <agraf@suse.de> git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@1157 f158a5a8-5612-0410-a976-696ce0be7e32
* ppc: Adjust isa_io_base for ppc64Andreas Färber2010-11-211-3/+1
| | | | | | | | | | | | | | | | | | | | To avoid cast warnings, use a 64-bit ISA I/O base on ppc64. v3: * Adjust unix target, pointed out by Blue. Unify ppc and sparc64, using unsigned long instead of uintptr_t. It is initialized from pci_arch_t, which uses unsigned long. * Update other ppc targets, pointed out by Blue. v2: Initial. Cc: Blue Swirl <blauwirbel@gmail.com> Cc: Alexander Graf <agraf@suse.de> Signed-off-by: Andreas Färber <andreas.faerber@web.de> git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@964 f158a5a8-5612-0410-a976-696ce0be7e32
* Introduce forth_init() for trampoline initializationAndreas Färber2010-11-131-0/+1
| | | | | | | | | | | | | | | | | | | | Use init_trampoline() for trampoline variable initialization. Add calls to a new forth_init() function for each architecture to invoke it. Idea courtesy of Blue. This fixes ppc64 compilation by avoiding a casted self-reference. v2: * Share init_trampoline() with kernel/bootstrap.c, suggested by Mark. * Adopt QEMU coding style for new functions. Cc: Mark Cave-Ayland <mark.cave-ayland@siriusit.co.uk> Signed-off-by: Andreas Färber <andreas.faerber@web.de> Acked-by: Blue Swirl <blauwirbel@gmail.com> git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@954 f158a5a8-5612-0410-a976-696ce0be7e32
* Stop openbios-unix from crashing when auto-boot? is enabled.Mark Cave-Ayland2010-08-071-1/+5
| | | | | | | Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@siriusit.co.uk> git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@836 f158a5a8-5612-0410-a976-696ce0be7e32
* Use standard typesBlue Swirl2010-08-011-2/+2
| | | | | | | | | | | | | | | | Replace uchar, uint, ulong, u_char, u_int, u_long, u_int* with their standard equivalents. Fixes warnings like these on OpenBSD: CC target/arch/unix/unix.o In file included from ../arch/unix/unix.c:29: ../include/config.h:26: warning: redefinition of `ulong' /usr/include/sys/types.h:56: warning: `ulong' previously declared here ../include/config.h:26: warning: redundant redeclaration of `ulong' in same scope Signed-off-by: Blue Swirl <blauwirbel@gmail.com> git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@830 f158a5a8-5612-0410-a976-696ce0be7e32
* Commit revised version of Igor Kovalenko's patch for detecting whether ↵Igor V. Kovalenko2010-04-121-0/+1
| | | | | | | | | | | | dictionary allocations have overrun the memory buffer allocated for them. Signed-off-by: Igor V. Kovalenko <igor.v.kovalenko@gmail.com> Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@siriusit.co.uk> git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@741 f158a5a8-5612-0410-a976-696ce0be7e32
* Create an initialisation function called openbios_init(), similar to ↵Mark Cave-Ayland2010-04-021-0/+2
| | | | | | | | | | | | modules_init(), for use by libopenbios and make sure all architectures are updated to use it. This is required to allow binding of C functions into Forth by libopenbios (i.e. cross architecture) rather than having to update everything in every arch/*/ initialisation file. Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@siriusit.co.uk> git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@725 f158a5a8-5612-0410-a976-696ce0be7e32
* Move the *_init_program() functions into the main loader source files so ↵Mark Cave-Ayland2010-03-282-1/+3
| | | | | | | | | | | | that everything is in one place. Part of this involves taking the existing parts of the XCOFF loader and putting them into a new loader file xcoff_load.c. Also fix a dependency order change these changes introduce when building openbios-unix. Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@siriusit.co.uk> git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@720 f158a5a8-5612-0410-a976-696ce0be7e32
* Create a brand new ELF loader based upon arch/*/elfload.c and ↵Mark Cave-Ayland2010-03-271-1/+1
| | | | | | | | | | | libopenbios/elfload.c combined together in libopenbios. This means that each arch no longer needs its own ELF loader implementation. Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@siriusit.co.uk> git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@710 f158a5a8-5612-0410-a976-696ce0be7e32
* Split nvram.h into its proper two components - one for the arch-specific ↵Mark Cave-Ayland2010-03-141-1/+1
| | | | | | | | | functions and another for the package functions. Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@siriusit.co.uk> git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@698 f158a5a8-5612-0410-a976-696ce0be7e32
* Move the basic OpenBIOS configuration header files from include/openbios to ↵Mark Cave-Ayland2010-03-144-5/+5
| | | | | | | | | include/. Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@siriusit.co.uk> git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@695 f158a5a8-5612-0410-a976-696ce0be7e32
* Move the libopenbios header files into include/libopenbios to synchronise ↵Mark Cave-Ayland2010-03-143-5/+5
| | | | | | | | | with the code directory structure. Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@siriusit.co.uk> git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@691 f158a5a8-5612-0410-a976-696ce0be7e32
* Move the kernel header files into include/kernel to synchronise with the ↵Mark Cave-Ayland2010-03-141-2/+2
| | | | | | | | | code directory structure. Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@siriusit.co.uk> git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@689 f158a5a8-5612-0410-a976-696ce0be7e32
* Finish move of architecture-specific header files, with modifications to the ↵Mark Cave-Ayland2010-03-141-1/+1
| | | | | | | | | header paths as required. Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@siriusit.co.uk> git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@688 f158a5a8-5612-0410-a976-696ce0be7e32
* Refactoring of the OpenBIOS source code, as discussed on the mailing list. ↵Mark Cave-Ayland2010-03-131-1/+2
| | | | | | | | | | | | | The primary aim of this process is to try and arrange 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
* Fix Unix target build on PPC hostBlue Swirl2010-03-071-0/+7
| | | | | | Signed-off-by: Blue Swirl <blauwirbel@gmail.com> git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@684 f158a5a8-5612-0410-a976-696ce0be7e32
* Sparc64: fix native Unix version buildBlue Swirl2010-01-231-0/+7
| | | | | | Signed-off-by: Blue Swirl <blauwirbel@gmail.com> git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@668 f158a5a8-5612-0410-a976-696ce0be7e32
* Change link edition order to move libc after libfs, allowing libfs toLaurent Vivier2009-11-221-1/+1
| | | | | | | | | | use functions from libc. Signed-off-by: Laurent Vivier <Laurent@vivier.eu> git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@629 f158a5a8-5612-0410-a976-696ce0be7e32
* Reworked version of Forth Source debugger (Mark Cave-Ayland)Blue Swirl2009-11-152-3/+3
| | | | | | | | | | | | | | | | | | | | | | This patch implements the following Forth words: debug <xt> - Mark word for debugging debug-off - Unmark all words for debugging resume - Return from subordinate Forth interpreter The source debugger also implements the following commands when it has been activated: Up - Unmark current word for debugging, mark parent and continue Down - Mark next word for debugging Trace - Continue execution until end of word displaying debug information Rstack - Display contents of the Rstack Forth - Launch subordinate Forth interpreter Signed-off-by: Blue Swirl <blauwirbel@gmail.com> git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@611 f158a5a8-5612-0410-a976-696ce0be7e32
* Introduce quiet buildBlue Swirl2009-08-171-1/+1
| | | | | | | | | | | | | | | 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
* Fix Unix target warnings from SparseBlue Swirl2009-08-041-6/+5
| | | | | | Signed-off-by: Blue Swirl <blauwirbel@gmail.com> git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@535 f158a5a8-5612-0410-a976-696ce0be7e32
* Improve version number handlingBlue Swirl2009-08-021-2/+4
| | | | | | Signed-off-by: Blue Swirl <blauwirbel@gmail.com> git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@533 f158a5a8-5612-0410-a976-696ce0be7e32
* Fix Sparc64 native unix buildBlue Swirl2009-01-131-0/+2
| | | | git-svn-id: svn://coreboot.org/openbios/openbios-devel@402 f158a5a8-5612-0410-a976-696ce0be7e32
* Fix amd64 warnings, enable more warningsBlue Swirl2009-01-061-1/+1
| | | | git-svn-id: svn://coreboot.org/openbios/openbios-devel@360 f158a5a8-5612-0410-a976-696ce0be7e32
* Fix Unix host build on PPCBlue Swirl2009-01-011-0/+4
| | | | git-svn-id: svn://coreboot.org/openbios/openbios-devel@339 f158a5a8-5612-0410-a976-696ce0be7e32
* Remove unnecessary trailing newlinesBlue Swirl2008-12-138-8/+0
| | | | git-svn-id: svn://coreboot.org/openbios/openbios-devel@285 f158a5a8-5612-0410-a976-696ce0be7e32
* Delete extra whitespace at the end of line, which annoys quiltBlue Swirl2008-12-1111-103/+103
| | | | git-svn-id: svn://coreboot.org/openbios/openbios-devel@284 f158a5a8-5612-0410-a976-696ce0be7e32
* blueswirl's latest console patches.Stefan Reinauer2006-07-281-5/+33
| | | | git-svn-id: svn://coreboot.org/openbios/openbios-devel@72 f158a5a8-5612-0410-a976-696ce0be7e32
* - Cleanup compiler warnings etc.Stefan Reinauer2006-07-182-5/+5
| | | | | | | - add crosscflags from previous patch ;) git-svn-id: svn://coreboot.org/openbios/openbios-devel@67 f158a5a8-5612-0410-a976-696ce0be7e32
* - update datesStefan Reinauer2006-05-261-1/+1
| | | | | | | - fix address output of ls git-svn-id: svn://coreboot.org/openbios/openbios-devel@34 f158a5a8-5612-0410-a976-696ce0be7e32
* initial import of openbios--main--1.0--patch-26Stefan Reinauer2006-04-2630-0/+2661
git-svn-id: svn://coreboot.org/openbios/openbios-devel@1 f158a5a8-5612-0410-a976-696ce0be7e32