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
Use int64_t for cell and uint64_t for ucell.
Define printf-style format macros to ease writing cell-type-independend
log traces.
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@515 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
This handles fixed-size ide model name string without trailing zero.
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@509 f158a5a8-5612-0410-a976-696ce0be7e32
QEMU commit b7ee1603c16c1feb0d439d2ddf6cf824119d0aab improved the PCI bridge
device handling. PCI bridges use different header format from ordinary PCI
devices, especially BAR registers do not exist. OpenBIOS tried to configure
the bridges based on the non-BAR data which was assumed to be BARs.
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@505 f158a5a8-5612-0410-a976-696ce0be7e32
This changes pocket index calculation to support more than two pockets.
As an example default number of pockets is set to 4.
This should ease nesting more than two levels using pockets as
temporary storage.
Signed-off-by: Igor Kovalenko <igor.v.kovalenko@gmail.com>
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@494 f158a5a8-5612-0410-a976-696ce0be7e32
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
struct ata_sector was meant to facilitate taking upper and lower byte of
the sector. However, the implementation is incorrect, as "struct" and
"union" are swapped in the definition. What's worse, it's an overkill
for that simple task. The code should be transparent without knowing
how struct ata_sector is defined.
[laurent: Original patch modified to remove useless "& 0xff"]
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@489 f158a5a8-5612-0410-a976-696ce0be7e32
This is needed on Fedora 11 (GNU ld 2.19.51.0.2). Otherwise, qemu
reports on statup:
invalid/unsupported opcode: 00 - 18 - 01 (00004070) 00000004 1
invalid/unsupported opcode: 00 - 04 - 17 (000095c8) 000095ec 0
I checked Linux sources (arch/powerpc/kernel/vmlinux.lds.S) and I see
that .sbss is put to the .bss section in front of .bss itself.
The problem is discussed at
https://bugzilla.redhat.com/show_bug.cgi?id=494075
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@488 f158a5a8-5612-0410-a976-696ce0be7e32