Subversion Repositories HelenOS

Rev

Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
3863 5759 d 8 h rimsky /branches/sparc/ Simics machine: modifications needed to run userspace (the next step will be to implement the trap handler for uspace); real machine: small fixes, after them the machine passes some parts of the initialization, but fails to determine CPU frequency (probably due to a different format of Machine Description).  
3582 5846 d 21 h rimsky /branches/sparc/ Made changes making HelenOS run on US-IV CPUs. Minor refactoring of the SGCN driver.  
3549 5854 d 8 h rimsky /branches/sparc/ Implemented uspace Serengeti drivers for kbd and fb. Integrated with other parts of HelenOS. Now it is possible to play Tetris on a simulated Serengeti machine (usiii.simics).  
3479 5890 d 17 h rimsky /branches/sparc/ Names containing 'UPA' replaced with strings containing more general 'ICBUS'. SMART_FIRMWARE option replaced with CPU autodetection + new option CONFIG_A_OUT_ISOFS_B.  
3398 5907 d 17 h rimsky /branches/sparc/ US used as a code for the UltraSPARC I-II subarchitecture instead of US2.  
3365 5925 d 9 h rimsky /branches/sparc/ Integrated US-III port into the build process; added script for downloading and patching SILO; added patched SILO binaries; modified sources of the Sparc64 port up to the beginning of the main_bsp_separated_stack function: phys. address size not hardwired but configurable (41 bits on US-II, 43 bits on US-III), WSTATE register implicitly written 0 on startup.  
3343 5931 d 14 h decky /branches/sparc/ add sparc branch  
3274 5940 d 16 h jermar /trunk/ memcpy(), memmove() and similar functions return dst instead of src.
Fix all implementations, including those in assembly. ppc32 assembly
version didn't seem to be affected by this.
 
3146 5996 d 20 h jermar /trunk/boot/arch/sparc64/loader/ Don't make any assumptions about the contents of the I-cache in sparc64
loader and before passing control to the kernel, invalidate the I-cache.
 
3144 5997 d 10 h jermar /trunk/boot/arch/sparc64/loader/ Issue a sparc64 write barrier before passing control from the loader to
the kernel.
 
2071 6511 d 10 h jermar /trunk/ (c) versus (C)  
1978 6572 d 11 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 6624 d 18 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
 
1791 6699 d 11 h jermar /trunk/boot/arch/sparc64/loader/ Switch to identically mapped stack during boot.
Put stack related and register related macros to dedicated
header files.
 
1790 6699 d 13 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.
 
1787 6701 d 13 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1783 6702 d 10 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.
 
1778 6708 d 16 h jermar /boot/trunk/arch/sparc64/ sparc64 is now booted by HelenOS boot loader.  
1773 6709 d 8 h jermar /boot/trunk/arch/sparc64/loader/ Work on sparc64 boot loader (still inactive).  
1771 6709 d 11 h jermar /boot/trunk/ Cleanup OpenFirmware driver and prepare it for integration with sparc64 bootloader.
Start sparc64 boot loader (now inactive and unfunctional).
 

Show All