Commit Graph

63 Commits

Author SHA1 Message Date
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
Laurent Vivier
4639e7efb0 This patch modifies disk-label.c to not allow to read beyond
the selected partition limits.

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



git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@546 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-10 20:18:27 +00:00
Laurent Vivier
b1070a239f Add DPRINTF() to disk-label.c
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@543 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-08 22:42:52 +00:00
Laurent Vivier
2df8b7381b If the partition type is the mac partition type, this patch allows to
not select the partition to boot from but to boot from the first 
bootable partition.

"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"

"[...] If the partition component is present, it selects the desired 
partition, where partition 0 refers to the entire disk, partition 1 
refers to the first partition, partition 2 to the second, and so forth. 
If the partition component is absent and the disk has an FDISK or Mac 
partition, the first "bootable" partition is used. [...]"



git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@542 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-08 22:00:10 +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
98bf05ae40 Fix compile when CONFIG_DEBUG_SUN_PARTS is defined
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>

git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@529 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-02 12:28:24 +00:00
Blue Swirl
0f5e36481c extract ofmem module implementation (Igor Kovalenko)
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@526 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-02 11:06:13 +00:00
Blue Swirl
defe01ae5c extract ofmem module implementation (Igor Kovalenko)
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@525 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-02 11:05:16 +00:00
Blue Swirl
ec3b928919 const qualifier for nvram_init parameter (Igor Kovalenko)
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@518 f158a5a8-5612-0410-a976-696ce0be7e32
2009-08-02 10:58:33 +00:00
Blue Swirl
ffc2bb1fda sparc64 video.pal fix memory corruption (Igor Kovalenko)
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@503 f158a5a8-5612-0410-a976-696ce0be7e32
2009-06-13 07:36:56 +00:00
Blue Swirl
a6c558cbf2 Improve client interface debugging
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@501 f158a5a8-5612-0410-a976-696ce0be7e32
2009-06-06 09:58:11 +00:00
Igor Kovalenko
02130e8240 Fix regprop int encoding (Igor Kovalenko)
Wrong encoding of "#address-cells" property can lead to a failure
fetching correct value in my-#acells method. According to docs
properties must be encoded with "encode-int". I spent some time
looking at the docs and it is clear that encode-int produces
quad-sized result (of size /l bytes).

This patch fixes pci helpers to encode to 32bit instead of 64bit values,
and correctes my-address and my-unit methods to read 32bit data
to match encode-int rules
modules/bindings.c: also fixed set_int_property and get_int_property
to match encode-int rules

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


git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@493 f158a5a8-5612-0410-a976-696ce0be7e32
2009-05-22 17:14:10 +00:00
Blue Swirl
a0c398f24b Delete some unused macros detected with -Wp,-Wunused-macros use
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@482 f158a5a8-5612-0410-a976-696ce0be7e32
2009-03-28 14:28:16 +00:00
Laurent Vivier
14e9b11e1f Set disk-label information when no partition map is used
git-svn-id: svn://coreboot.org/openbios/openbios-devel@448 f158a5a8-5612-0410-a976-696ce0be7e32
2009-02-05 21:37:26 +00:00
Laurent Vivier
21f5eb3c1a disk-label: retrieve block-size on open
git-svn-id: svn://coreboot.org/openbios/openbios-devel@447 f158a5a8-5612-0410-a976-696ce0be7e32
2009-02-05 21:33:23 +00:00
Laurent Vivier
838e276b6a set blocksize when partition number is 0
git-svn-id: svn://coreboot.org/openbios/openbios-devel@445 f158a5a8-5612-0410-a976-696ce0be7e32
2009-02-05 20:19:50 +00:00
Laurent Vivier
15c56bea6f Allows to use disk (like CD-ROM) without partition map but with filesystem
on the full disk. We accept partition number 0 (which identifies the full
disk) and partition number 1 (we can see the disk as only one partition).

This is needed to boot openSUSE install CD which uses
"&device;:1,\suseboot\yaboot.ibm" as its boot path.

There is a Mac partition map on the CD, but
partition 1 is the partition map itself, and thus is not usable by a filesystem.
So we can guess, openFirmware must use ISO9660 instead of HFS and thus
to not use the Mac partition map, but the whole CD for the partition #1.

Disk openSUSE-ppc.iso: 135 MB, 135593984 bytes
4 heads, 32 sectors/track, 2069 cylinders
Units = cylinders of 128 * 512 = 65536 bytes

                                  Device Boot      Start         End      Blocks   Id  System 
openSUSE-ppc.iso1               1           1          48   Apple_partition_map
openSUSE-ppc.iso2               1        2066      132160   Apple_HFS



git-svn-id: svn://coreboot.org/openbios/openbios-devel@443 f158a5a8-5612-0410-a976-696ce0be7e32
2009-02-05 00:16:54 +00:00
Laurent Vivier
6e727d8f4b mac-parts: block-size returns value found in partition map
git-svn-id: svn://coreboot.org/openbios/openbios-devel@440 f158a5a8-5612-0410-a976-696ce0be7e32
2009-02-03 20:33:37 +00:00
Stefan Assmann
1a4b1e4f3d Fix fs->vol_name handling
This patch checks wether fs->vol_name exists and handles the
case where it doesn't exist. That fixes the lockup that occurs
when trying to run qemu-system-ppc -cdrom <iso> -boot d

Signed-off-by: Stefan Assmann <sassmann@suse.de>


git-svn-id: svn://coreboot.org/openbios/openbios-devel@430 f158a5a8-5612-0410-a976-696ce0be7e32
2009-01-29 19:56:41 +00:00
Blue Swirl
78ca85bba5 Fix console escape code problems with NetBSD 4.0 and Debian 3.1r1
git-svn-id: svn://coreboot.org/openbios/openbios-devel@427 f158a5a8-5612-0410-a976-696ce0be7e32
2009-01-25 20:37:01 +00:00
Blue Swirl
0bcf12f53b Fix warning about shadowing
git-svn-id: svn://coreboot.org/openbios/openbios-devel@403 f158a5a8-5612-0410-a976-696ce0be7e32
2009-01-13 19:54:29 +00:00
Blue Swirl
eb3f96ade3 Fix amd64 warnings, enable more warnings
git-svn-id: svn://coreboot.org/openbios/openbios-devel@360 f158a5a8-5612-0410-a976-696ce0be7e32
2009-01-06 19:06:58 +00:00
Blue Swirl
1b47a7ee96 Fix x86 warnings, enable more warnings
git-svn-id: svn://coreboot.org/openbios/openbios-devel@359 f158a5a8-5612-0410-a976-696ce0be7e32
2009-01-06 18:46:22 +00:00
Blue Swirl
6eea2f277a Define "screen-#columns" and "screen-#rows" in /options (Laurent Vivier)
git-svn-id: svn://coreboot.org/openbios/openbios-devel@355 f158a5a8-5612-0410-a976-696ce0be7e32
2009-01-05 20:20:45 +00:00
Blue Swirl
ec53fcec45 Clean up video routines
git-svn-id: svn://coreboot.org/openbios/openbios-devel@343 f158a5a8-5612-0410-a976-696ce0be7e32
2009-01-02 14:53:33 +00:00
Blue Swirl
2137312f95 Clean up font handling
git-svn-id: svn://coreboot.org/openbios/openbios-devel@342 f158a5a8-5612-0410-a976-696ce0be7e32
2009-01-02 13:32:15 +00:00
Blue Swirl
1beaaac8fa Allow yaboot to read files from cdrom (Laurent Vivier)
git-svn-id: svn://coreboot.org/openbios/openbios-devel@325 f158a5a8-5612-0410-a976-696ce0be7e32
2008-12-25 10:38:40 +00:00
Blue Swirl
58d21fb1c2 Change part_length to a define
git-svn-id: svn://coreboot.org/openbios/openbios-devel@312 f158a5a8-5612-0410-a976-696ce0be7e32
2008-12-23 10:15:14 +00:00
Blue Swirl
d7208a6daf Fix Sparse warnings
git-svn-id: svn://coreboot.org/openbios/openbios-devel@296 f158a5a8-5612-0410-a976-696ce0be7e32
2008-12-20 18:36:23 +00:00
Blue Swirl
7e21fc929d Fix almost all remaining warnings
git-svn-id: svn://coreboot.org/openbios/openbios-devel@294 f158a5a8-5612-0410-a976-696ce0be7e32
2008-12-20 17:15:47 +00:00
Laurent Vivier
5766c8fb3a Add block-size to partition packages.
Yaboot uses "block-size" with disk-label packages.

This patch add block-size to all partitions packages.

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


git-svn-id: svn://coreboot.org/openbios/openbios-devel@291 f158a5a8-5612-0410-a976-696ce0be7e32
2008-12-18 20:44:20 +00:00
Blue Swirl
c5d270009e Warning fixes for Sparc32, Sparc64, PPC
Fix warnings that would be caused by gcc flag -Wwrite-strings and
-Wmissing-prototypes. Also fix most PPC specific warnings.


git-svn-id: svn://coreboot.org/openbios/openbios-devel@288 f158a5a8-5612-0410-a976-696ce0be7e32
2008-12-14 12:54:23 +00:00
Blue Swirl
a757800a01 Remove unnecessary trailing newlines
git-svn-id: svn://coreboot.org/openbios/openbios-devel@285 f158a5a8-5612-0410-a976-696ce0be7e32
2008-12-13 09:26:41 +00:00
Blue Swirl
58ca864765 Delete extra whitespace at the end of line, which annoys quilt
git-svn-id: svn://coreboot.org/openbios/openbios-devel@284 f158a5a8-5612-0410-a976-696ce0be7e32
2008-12-11 20:30:53 +00:00
Blue Swirl
40feb4bb04 Misc VGA fixes (Laurent Vivier)
git-svn-id: svn://coreboot.org/openbios/openbios-devel@282 f158a5a8-5612-0410-a976-696ce0be7e32
2008-12-05 18:32:39 +00:00
Blue Swirl
e338f06ba1 Initialize VGA from PCI configuration (Laurent Vivier)
git-svn-id: svn://coreboot.org/openbios/openbios-devel@281 f158a5a8-5612-0410-a976-696ce0be7e32
2008-12-05 18:31:27 +00:00
Blue Swirl
bf0c6b1c38 Fix most warnings from Sparse
git-svn-id: svn://coreboot.org/openbios/openbios-devel@274 f158a5a8-5612-0410-a976-696ce0be7e32
2008-11-30 11:54:01 +00:00
Blue Swirl
a0cabb495a Fix most print format warnings
git-svn-id: svn://coreboot.org/openbios/openbios-devel@272 f158a5a8-5612-0410-a976-696ce0be7e32
2008-11-29 16:24:51 +00:00
Laurent Vivier
1442f36978 Yaboot needs to be able to open partition 0.
Add some traces.

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


git-svn-id: svn://coreboot.org/openbios/openbios-devel@265 f158a5a8-5612-0410-a976-696ce0be7e32
2008-11-25 19:54:01 +00:00
Blue Swirl
5340b2fa51 Add some debug macros and correct nvram_init() call for other PPC
architectures (Laurent Vivier).


git-svn-id: svn://coreboot.org/openbios/openbios-devel@264 f158a5a8-5612-0410-a976-696ce0be7e32
2008-11-25 19:50:53 +00:00
Blue Swirl
b210e52224 Rearrange nvram init
git-svn-id: svn://coreboot.org/openbios/openbios-devel@262 f158a5a8-5612-0410-a976-696ce0be7e32
2008-11-25 18:30:22 +00:00
Blue Swirl
df5359c81a Fix Sparc32 and Sparc64 build by reverting some of the previous patches
git-svn-id: svn://coreboot.org/openbios/openbios-devel@261 f158a5a8-5612-0410-a976-696ce0be7e32
2008-11-24 19:29:24 +00:00
Stefan Reinauer
34f110b694 Add Bochs VBE VGA support
git-svn-id: svn://coreboot.org/openbios/openbios-devel@258 f158a5a8-5612-0410-a976-696ce0be7e32
2008-11-24 12:38:23 +00:00
Laurent Vivier
bee6afbc60 Access to nvram must left shifted by 4.
Initialize device tree (used by PCI patch, to follow).

Signed-off-by: Laurent Vivier <Laurent@lvivier.info>
Acked-by: Stefan Reinauer <stepan@coresystems.de>




git-svn-id: svn://coreboot.org/openbios/openbios-devel@255 f158a5a8-5612-0410-a976-696ce0be7e32
2008-11-24 12:21:36 +00:00
Blue Swirl
a62aba86c6 Fix 8 byte alignment problems
git-svn-id: svn://coreboot.org/openbios/openbios-devel@171 f158a5a8-5612-0410-a976-696ce0be7e32
2007-10-16 20:59:36 +00:00
Blue Swirl
e18fb45c0c Make client interface 64 bits wide on Sparc64
git-svn-id: svn://coreboot.org/openbios/openbios-devel@164 f158a5a8-5612-0410-a976-696ce0be7e32
2007-07-11 19:46:26 +00:00
Blue Swirl
e3db406e09 Fix pop_fstr_copy memory leaks
- console one prevented Debian 3.1r1 from installing in console=prom mode
- fixing this also needed the real malloc/free



git-svn-id: svn://coreboot.org/openbios/openbios-devel@155 f158a5a8-5612-0410-a976-696ce0be7e32
2007-06-27 20:16:01 +00:00
Blue Swirl
9eb7f86202 Fix unaligned memory access
git-svn-id: svn://coreboot.org/openbios/openbios-devel@140 f158a5a8-5612-0410-a976-696ce0be7e32
2007-05-05 18:32:35 +00:00
Blue Swirl
320db5725b Improve escape sequence handling
git-svn-id: svn://coreboot.org/openbios/openbios-devel@135 f158a5a8-5612-0410-a976-696ce0be7e32
2007-04-30 19:08:37 +00:00
Stefan Reinauer
1a34b8a360 64bit fixes from blueswirl
git-svn-id: svn://coreboot.org/openbios/openbios-devel@83 f158a5a8-5612-0410-a976-696ce0be7e32
2006-09-14 15:06:38 +00:00