Subversion Repositories HelenOS

Rev

Go to most recent revision | Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
2071 6309 d 21 h jermar /trunk/ (c) versus (C)  
1978 6370 d 21 h jermar /trunk/ sparc64 code to support physical memory that starts on non-zero addresses.
Still needs to be tested on systems with such setup.
 
1899 6423 d 4 h jermar /trunk/ sparc64 work:
- Loader now starts all processors.
- Kernel halts all but the bootstrup processor for now.
- Read clock-frequency from the respective processor node in the device tree
 
1897 6426 d 4 h jermar /trunk/ Convert sparc64 framebuffer code to configure from the OpenFirmware device tree memory representation.  
1896 6426 d 20 h jermar /trunk/ Convert sparc64 to detect keyboard and determine
its physical address by walking the memory representation
of the OpenFirmware device tree.

Add bus-specific functions that know how to apply the
"ranges" property to one component of the "reg" property.
Buses supported so far include FHC, EBUS and PCI.
 
1894 6429 d 19 h jermar /trunk/ Add balloc() (a.k.a boot allocator):
- balloc() only needs to know how to allocate memory.
- Memory allocated via balloc() is supposed to be passed to kernel and never freed by boot itself.
- make kernel aware of boot allocations

More work on OFW device tree:
- use balloc() to efficiently and safely allocate memory for the canonical copy of the device tree

sparc64 boot:
- pass OFW device tree root node pointer to kernel
 
1881 6437 d 4 h jermar /trunk/ sparc64 work:
- find a CPU node and read its clock_frequency attribute
- implement asm_delay_loop()
- set TICK_COMPARE register according to processor frequency
- small improvements at random places

OpenFirmware work:
- two new functions for walking the device tree

Generic boot loader work:
- added basic string functions

Usual pile of indentation and formatting fixes.
 
1790 6498 d 0 h jermar /trunk/ Remove OpenFirmware calls from kernel/ entirely.

Switch the sparc64 port to use bootinfo.

Copy memcpy from boot/ to sparc64 kernel/ and
adjust it for memcpy_from/to_uspace.
 
1789 6498 d 2 h jermar /trunk/ Fix ofw_memmap() in boot infrastructure.
The cell size is 32-bit and not equal sizeof(ofw_arg_t).
Define architecture dependant #address-cells and #size-cells for cases
the respective properties are missing in the OpenFirmware device tree.
The algorithm now works both for ppc32 and sparc64.

Add memmap_t, screen_t and keyboard_t to sparc64 bootinfo structure.
Be more verbose during sparc64 boot.

Move ALIGN_UP to generic part of boot/.

Change header guards in several places so that they don't contain double underscore.
 
1787 6499 d 23 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1771 6507 d 22 h jermar /boot/trunk/ Cleanup OpenFirmware driver and prepare it for integration with sparc64 bootloader.
Start sparc64 boot loader (now inactive and unfunctional).
 
1685 6531 d 6 h decky /boot/trunk/arch/mips32/ mips piggybacker  
1018 6618 d 2 h decky /boot/trunk/ boot loader for msim