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
1789 6572 d 3 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 6573 d 23 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1783 6574 d 21 h jermar /boot/trunk/ Some 32-bit vs. 64-bit fixes.

Make the call to OpenFirmware client interface architecture dependent.
For instance and contrary to my previous experience, the sparc64 version of
'translate' method would not work reliably unless the Address Mask bit in the
PSTATE register is cleared during duration of the call.

sparc64 and ppc32 OpenFirmware seem to differ in details, for example, the above
mentioned method 'translate' signals success by setting the first return value
to -1 on sparc64 while on ppc32 the value is/stays (???) zero.
 
1779 6581 d 1 h jermar /boot/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1771 6581 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).
 
1764 6589 d 20 h jermar /boot/trunk/ Cleanup boot infrastructure: ppc32 (and elsewhere).  
1755 6595 d 6 h decky /boot/trunk/arch/ppc32/loader/ read macio address from PCI OFW entry  
1739 6597 d 4 h decky /boot/trunk/ ppc32 debug messages  
1738 6597 d 5 h decky /boot/trunk/arch/ppc32/loader/ properly place PHT on top of physical memory  
1737 6597 d 6 h decky /boot/trunk/arch/ppc32/loader/ pick the best BAT mapping  
1732 6597 d 17 h decky /boot/trunk/ fix wrong segment register value
add CONFIG_BAT define
 
1728 6597 d 17 h decky /boot/trunk/ ppc32: BAT usage is now optional
better VSID support
Page Hash Table cleanup
boot API change
 
1725 6598 d 0 h decky /boot/trunk/arch/ppc32/loader/ allocate page hash table during boot
(preliminary code, will be fixed properly later)
 
1715 6598 d 22 h decky /boot/trunk/arch/ppc32/loader/ move ppc32 four pages up  
1679 6606 d 0 h decky /boot/trunk/arch/ppc32/loader/ remove redundant section  
1620 6609 d 1 h decky /boot/trunk/arch/ppc32/loader/ update boot loader API  
1607 6609 d 5 h decky /boot/trunk/arch/ppc32/loader/ ppc32 sync  
1602 6609 d 8 h decky /boot/trunk/arch/ppc32/loader/ add ipcc and klog to ppc32  
1479 6614 d 11 h decky /boot/trunk/arch/ppc32/loader/ more debugging  
1478 6614 d 12 h decky /boot/trunk/ ppc32 bootloader debugging facility  
1381 6625 d 22 h decky /boot/trunk/arch/ppc32/loader/ ensure TLB sync  
1373 6627 d 19 h decky /boot/trunk/arch/ppc32/loader/ fix forgotten bug  
1372 6627 d 20 h decky /boot/trunk/arch/ppc32/loader/ remove obsolete BAT framebuffer mapping  
1369 6627 d 22 h decky /boot/trunk/arch/ppc32/ support for arbitrary number of boot components for ppc32  
1275 6644 d 2 h decky /boot/trunk/arch/ppc32/loader/ ppc32: don't use FPU instructions in boot loader  
1219 6653 d 19 h decky /boot/trunk/arch/ppc32/ ppc32: support for loading init  
1216 6653 d 21 h decky /boot/trunk/arch/ppc32/loader/ prevent possible race by force disabling interrupts  
1214 6653 d 22 h decky /boot/trunk/arch/ppc32/loader/ initially fill segment registers  
1166 6667 d 1 h decky /boot/trunk/arch/ fix types, 64b arguments (breaks things yet)  
1157 6667 d 3 h decky /boot/trunk/ start ppc64 port  
1146 6674 d 3 h decky /boot/trunk/arch/ppc32/loader/ add instruction cache flush
align framebuffer on 128K boundary
change OFW calling method
make OFW code more compatible
 
1133 6682 d 21 h decky /boot/trunk/arch/ppc32/loader/ ofw uses \r\n as newline  
1131 6682 d 23 h decky /boot/trunk/arch/ppc32/loader/ kernel boot API change  
1130 6682 d 23 h decky /boot/trunk/arch/ppc32/loader/ extend boot info  
1075 6690 d 5 h decky /boot/trunk/arch/ppc32/loader/ relocate boot loader structures if needed
(allowing to boot on stupid OFW implementations)
 
1071 6690 d 7 h decky /boot/trunk/arch/ppc32/loader/ invalidate segment registers  
1068 6690 d 16 h decky /boot/trunk/arch/ppc32/loader/ proper ppc32 initial memory mapping  
1058 6690 d 23 h decky /boot/trunk/arch/ppc32/loader/ relocate kernel in real mode  
1022 6691 d 23 h decky /boot/trunk/arch/ppc32/loader/ ppc32: boot using real mode trampoline
setup segment registers so far
 
1003 6692 d 17 h decky /boot/trunk/arch/ppc32/loader/ simplify register names