Commit Graph

405 Commits

Author SHA1 Message Date
Blue Swirl
01e48a6f39 Sparc64: fix native Unix version build
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>

git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@668 f158a5a8-5612-0410-a976-696ce0be7e32
2010-01-23 14:43:02 +00:00
Blue Swirl
a40a92653f Sparc64: use firmware configuration device for command line storage
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>

git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@663 f158a5a8-5612-0410-a976-696ce0be7e32
2010-01-09 21:28:28 +00:00
Blue Swirl
592138f390 Sparc64: clear timer interrupt disable bit (NPT bit when reading tick)
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>

git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@662 f158a5a8-5612-0410-a976-696ce0be7e32
2010-01-05 20:49:50 +00:00
Blue Swirl
4d0214e2bf Sparc64: fix Linux error about inconsistent console also for serial console
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>

git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@654 f158a5a8-5612-0410-a976-696ce0be7e32
2009-12-30 10:54:52 +00:00
Igor V. Kovalenko
c0b4bb8002 sparc64: claim memory mapped by startup code
- claim both physical and virtual address ranges
  while walking boot memory mappings

Signed-off-by: Igor V. Kovalenko <igor.v.kovalenko@gmail.com>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>

git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@651 f158a5a8-5612-0410-a976-696ce0be7e32
2009-12-29 17:36:05 +00:00
Blue Swirl
8fde0b100a Postpone mapping of the memory
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>

git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@650 f158a5a8-5612-0410-a976-696ce0be7e32
2009-12-29 17:36:03 +00:00
Blue Swirl
2b5a61fc6c Map VGA buffer only during PCI probe
Also pass physical addresses instead of bus addresses to VGA init.

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

git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@648 f158a5a8-5612-0410-a976-696ce0be7e32
2009-12-28 10:15:33 +00:00
igor.v.kovalenko
384b8c7614 Revert r639, fix mem_claim (Igor Kovalenko) and mem_release
Signed-off-by: igor.v.kovalenko@gmail.com
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>

git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@640 f158a5a8-5612-0410-a976-696ce0be7e32
2009-12-05 10:13:17 +00:00
Blue Swirl
3068b8763d Sparc64: fix mmu_map
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>

git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@639 f158a5a8-5612-0410-a976-696ce0be7e32
2009-12-04 22:01:12 +00:00
Mark Cave-Ayland
ba52470cce In the IEEE 1275-1994 specification the parameters for Client Interface calls
are not in forth stack order but in reversed (heh!) order. Our implementation
confused this.

This second patch is fairly straightforward; probably the only unexpected part is
the need to rename the existing /openprom/client-services "claim" and
"release" words to "cif-claim" and "cif-release" respectively. This is
because we need to use the "claim" and "release" words in
forth/system/ciface.fs to reverse the argument order before calling the real
underlying words.

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



git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@637 f158a5a8-5612-0410-a976-696ce0be7e32
2009-12-02 10:44:35 +00:00
Laurent Vivier
8d752aaf26 Change link edition order to move libc after libfs, allowing libfs to
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
2009-11-22 09:53:54 +00:00
Blue Swirl
d6aac5ffe2 Reworked version of Forth Source debugger (Mark Cave-Ayland)
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
2009-11-15 21:03:51 +00:00
Laurent Vivier
8fd9a7d4af Add "64-bit" property for PowerPC 970fx.
(allows Fedora bootloader to load the good kernel, 32-bit or 64-bit)

Signed-off-by: Laurent Vivier <Laurent@vivier.eu>


git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@607 f158a5a8-5612-0410-a976-696ce0be7e32
2009-11-10 22:13:54 +00:00
Laurent Vivier
5398f1f5e3 Correct typo
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@600 f158a5a8-5612-0410-a976-696ce0be7e32
2009-11-08 23:43:19 +00:00
Laurent Vivier
657daacde8 ppc/qemu: correctly manage property "available" of package "/memory"
Instead of hardcoding values during init, call ofmem_register() with "/memory" phandle.

Signed-off-by: Laurent Vivier <Laurent@vivier.eu>



git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@599 f158a5a8-5612-0410-a976-696ce0be7e32
2009-11-07 21:53:45 +00:00
Laurent Vivier
e76492313a ppc: replace ofmem_claim_phys() + ofmem_claim_virt() by ofmem_map().
This is needed by haiku-ppc bootloader (but it is not enough).

Signed-off-by: Laurent Vivier <Laurent@vivier.eu>



git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@591 f158a5a8-5612-0410-a976-696ce0be7e32
2009-11-01 23:27:35 +00:00
Laurent Vivier
b9486926d9 ppc: if "\\:tbxi" (mac) fails, try "ppc\bootinfo.txt" (chrp).
This is needed to load the bootloader of OpenBSD.

Signed-off-by: Laurent Vivier <Laurent@vivier.eu>


git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@590 f158a5a8-5612-0410-a976-696ce0be7e32
2009-10-19 23:02:10 +00:00
Laurent Vivier
6e47ae9e09 ppc: simplify boot by using load and go.
Signed-off-by: Laurent Vivier <Laurent@vivier.eu>


git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@589 f158a5a8-5612-0410-a976-696ce0be7e32
2009-09-21 23:12:02 +00:00
Laurent Vivier
719271835f Add bootinfo-loader.
Signed-off-by: Laurent Vivier <Laurent@vivier.eu>



git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@584 f158a5a8-5612-0410-a976-696ce0be7e32
2009-09-20 20:15:46 +00:00
Laurent Vivier
1a93a83480 Allows to boot openSUSE from install CD-ROM
Implements "init-program" using loader packages
Write a first loader package: elf-loader

Signed-off-by: Laurent Vivier <Laurent@vivier.eu>



git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@578 f158a5a8-5612-0410-a976-696ce0be7e32
2009-09-18 22:59:30 +00:00
Laurent Vivier
38283e32ac Use the load method to load and execute CHRP script.
This adds a better support of Apple BootX script.
However, "init-program" and "go" are always missing to be able to really boot with BootX.

Signed-off-by: Laurent Vivier <Laurent@vivier.eu>


git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@576 f158a5a8-5612-0410-a976-696ce0be7e32
2009-09-01 23:44:24 +00:00
Laurent Vivier
a58190e204 Define load-base to follow memory mapping defined in the BootX source
comments.

This as been reported by Steven Noonan.



git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@573 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-29 21:09:21 +00:00
Laurent Vivier
2db781a446 Replace yaboot_startup() by newworld_boot() which implements generic
CHRP boot method.
It finds the CHRP bootscript using the file attribute 'tbxi' and 
the blessed directory.

This method allows to boot easily Fedora (the bitness detection is done
by the script and yaboot is called with the according yaboot.conf) but
openSUSE is broken (you have to use "boot cd:,\suseboot\yaboot")
Debian works well (as usual...).
The openSUSE needs the missing forth words: "load" and "go".
The MacOS bootloader (BootX) is also loaded automatically but forth 
script is too complex to be executed correctly.

Signed-off-by: Laurent Vivier <Laurent@vivier.eu>


git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@571 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-29 15:43:00 +00:00
Laurent Vivier
1ced7923e7 For mac-parts, when no partition number is provided, open the first HFS
partition (type is "Apple_HFS").

Signed-off-by: Laurent Vivier <Laurent@vivier.eu>



git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@570 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-29 15:24:49 +00:00
igor.v.kovalenko
f13fecfb60 v1 Preliminary support for softint handler with trap to bug on other irqs
v0->v1: removed extra instructions

Signed-off-by: igor.v.kovalenko@gmail.com
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>

git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@566 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-22 06:04:00 +00:00
igor.v.kovalenko
6433c74bf7 Enable timer after trap table is initialized
Signed-off-by: igor.v.kovalenko@gmail.com
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>

git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@563 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-21 19:15:55 +00:00
igor.v.kovalenko
b26b3c4391 Save locked tlb space by aligning to 512k pages.
Signed-off-by: igor.v.kovalenko@gmail.com
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>

git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@562 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-21 19:15:46 +00:00
Blue Swirl
bc770eddac Fix OpenBSD boot
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>

git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@560 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-19 19:44:40 +00:00
Laurent Vivier
1be70e1bca We can select cpu using unit number instead of name,
for instance we can use "dev /cpus/@0" instead of "dev 
/cpus/PowerPC,750". This notation is used in Fedora bootscript
to know if the CPU is 64-bit or 32-bit: it looks at "64-bit" property
of first available CPUS ("@0").

Signed-off-by: Laurent Vivier <Laurent@vivier.eu>



git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@559 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-17 21:57:04 +00:00
Blue Swirl
9162f1b584 Introduce quiet build
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
2009-08-17 16:58:42 +00:00
Laurent Vivier
6a16562087 This patch allows to boot from bootsector of first bootable partition
using "boot hd:%BOOT"

As explained in:

"PowerPC Microprocessor Common Hardware Reference Platform (CHRP)
System binding to:
IEEE Std 1275-1994 Standard for Boot (Initialization, Configuration)
Firmware
Revision: 1.8"

"Chapter 11.1.2. Open Method Algorith"

Signed-off-by: Laurent Vivier <Laurent@vivier.info>



git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@552 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-12 19:55:31 +00:00
Steven Noonan
4636eeeedf There are numerous places where using 'ELF_DPRINTF' does not make
sense, because the loader does not use ELF binaries or is not
directly involved in loading them.

Created a generic SUBSYS_PRINTF macro, as well as loader-specific
ELF_DPRINTF, CHRP_DPRINTF, and YABOOT_DPRINTF macros.

Signed-off-by: Steven Noonan <steven@uplinklabs.net>



git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@545 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-10 19:57:43 +00:00
Steven Noonan
a734a346f2 try_chrp_script() now accepts a third parameter which indicates the
script to be loaded and parsed. It will also terminate parsing on
the '</chrp-boot>' tag, which makes locating embedded data after
the script easier.

Signed-off-by: Steven Noonan <steven@uplinklabs.net>

(laurent: remove XCOFF placeholder)



git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@544 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-10 19:50:04 +00:00
Laurent Vivier
bf92aa1fbf quik_startup() uses now encode_bootpath() instead of calling
find_dev()/set_property().



git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@541 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-08 21:56:26 +00:00
Blue Swirl
9d5df30977 Fix most Sparc64 warnings from Sparse
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>

git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@536 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-04 20:37:36 +00:00
Blue Swirl
d4dd46acd7 Fix Unix target warnings from Sparse
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>

git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@535 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-04 20:37:34 +00:00
Blue Swirl
2828b56876 Fix most x86 warnings from Sparse
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>

git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@534 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-04 20:37:32 +00:00
Blue Swirl
d4b64752eb Improve version number handling
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>

git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@533 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-02 18:20:53 +00:00
Blue Swirl
44ede105c1 switch sparc64 to ofmem module implementation (Igor Kovalenko)
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@528 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-02 11:08:01 +00:00
Blue Swirl
f8c0ae8f7b switch ppc to ofmem module implementation (Igor Kovalenko)
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@527 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-02 11:07:13 +00:00
Blue Swirl
a4c4f46834 unify ppc ofmem implementations (Igor Kovalenko)
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@524 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-02 11:05:00 +00:00
Blue Swirl
75cbf028bb update briq/mol/pearpc client interface to use ucell type (Igor Kovalenko)
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@523 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-02 11:04:27 +00:00
Blue Swirl
b2336d54c0 migrate ppc briq/mol/pearpc ofmem implementation to ucell type (Igor Kovalenko)
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@522 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-02 11:03:26 +00:00
Blue Swirl
5fd89d6537 migrate ppc/qemu ofmem implementation to ucell parameter type (Igor Kovalenko)
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@521 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-02 11:02:32 +00:00
Blue Swirl
0f141c94d3 move ppc internal prototypes to arch-specific implementation (Igor Kovalenko)
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@519 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-02 10:59:49 +00:00
Blue Swirl
ffd20b950d Switch sparc64 to ofmem (Igor Kovalenko)
Initialize ofmem at startup.
Switch malloc/realloc/free to use ofmem.
Implement runtime migration of startup mappings to ofmem.
Implement mmu miss handlers to install tlb entries based on ofmem
translations list.


git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@517 f158a5a8-5612-0410-a976-696ce0be7e32
2009-07-31 11:16:24 +00:00
Blue Swirl
e5b34330ee Sparc64 ofmem implementation (Igor Kovalenko)
Add sparc64 ofmem implementation.


git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@516 f158a5a8-5612-0410-a976-696ce0be7e32
2009-07-31 11:15:30 +00:00
Blue Swirl
6b052af925 Use ucell type to pass ofmem arguments (Igor Kovalenko)
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@513 f158a5a8-5612-0410-a976-696ce0be7e32
2009-07-31 11:10:38 +00:00
Blue Swirl
12fda803f3 Fix build errors with debugging enabled
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@512 f158a5a8-5612-0410-a976-696ce0be7e32
2009-07-20 06:52:23 +00:00
Blue Swirl
480883cebd Add a file missing from r508
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@510 f158a5a8-5612-0410-a976-696ce0be7e32
2009-07-12 10:13:39 +00:00