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
  • kernel/arch/ppc32/include/boot/boot.h

    ra11099f re731b0d  
    4141#define TEMP_STACK_SIZE  0x1000
    4242
    43 #define TASKMAP_MAX_RECORDS  32
    44 #define MEMMAP_MAX_RECORDS   32
     43#define TASKMAP_MAX_RECORDS        32
     44#define MEMMAP_MAX_RECORDS         32
     45#define BOOTINFO_TASK_NAME_BUFLEN  32
    4546
    4647#ifndef __ASM__
    4748
    48 #define BOOTINFO_TASK_NAME_BUFLEN 32
    49 
    5049#include <arch/types.h>
     50#include <config.h>
     51#include <genarch/ofw/ofw_tree.h>
    5152
    5253typedef struct {
     
    7374
    7475typedef struct {
    75         uintptr_t addr;
    76         unsigned int width;
    77         unsigned int height;
    78         unsigned int bpp;
    79         unsigned int scanline;
    80 } screen_t;
    81 
    82 typedef struct {
    83         uintptr_t addr;
    84         unsigned int size;
    85 } macio_t;
    86 
    87 typedef struct {
    8876        memmap_t memmap;
    8977        taskmap_t taskmap;
    90         screen_t screen;
    91         macio_t macio;
     78        ballocs_t ballocs;
     79        ofw_tree_node_t *ofw_root;
    9280} bootinfo_t;
    9381
Note: See TracChangeset for help on using the changeset viewer.