Changeset e731b0d in mainline for boot/genarch/balloc.h


Ignore:
Timestamp:
2009-08-20T16:58:55Z (15 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
b9c7425
Parents:
a11099f
Message:

make ppc32 OFW usage on par with sparc64, make appropriate modifications elsewhere

  • introduce ofw_tree_walk_by_device_type() to gather all OFW devices of a given type
  • ppc32 uses canonized OFW tree, mac-io and display devices are detected in kernel (not by the boot loader) by means of device type
  • various busses (PCI, EBUS, etc.) stay sparc64 specific for now
  • boot memcpy() is defined in a common way
  • BALLOC_MAX_SIZE is platform-dependent
  • ppc32 and sparc64 boot loaders cleanup (removal of obsolete stuff, data is not passed by global variables if not necessary, etc.)
  • balloc and OFW tree canonizer have now a provision to support different mapping of the data during boot time and kernel run-time
  • OFW tree canonizer uses balloc_rebase() to store pointers suitable for access during kernel run-time (with potentially different memory mapping than during boot time)
File:
1 edited

Legend:

Unmodified
Added
Removed
  • boot/genarch/balloc.h

    ra11099f re731b0d  
    3232#include <types.h>
    3333
    34 #define BALLOC_MAX_SIZE         (128 * 1024)
    35 
    3634typedef struct {
    3735        uintptr_t base;
     
    3937} ballocs_t;
    4038
    41 extern void balloc_init(ballocs_t *b, uintptr_t base);
     39extern void balloc_init(ballocs_t *ball, uintptr_t base, uintptr_t kernel_base);
    4240extern void *balloc(size_t size, size_t alignment);
     41extern void *balloc_rebase(void *ptr);
    4342
    4443#endif
Note: See TracChangeset for help on using the changeset viewer.