Subversion Repositories HelenOS

Rev

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

Filtering Options

Rev Age Author Path Log message Diff
3863 6229 d 22 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 6317 d 11 h rimsky /branches/sparc/ Made changes making HelenOS run on US-IV CPUs. Minor refactoring of the SGCN driver.  
3549 6324 d 22 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 6361 d 7 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 6378 d 7 h rimsky /branches/sparc/ US used as a code for the UltraSPARC I-II subarchitecture instead of US2.  
3365 6395 d 23 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 6402 d 4 h decky /branches/sparc/ add sparc branch  
3274 6411 d 6 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 6467 d 10 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 6468 d 0 h jermar /trunk/boot/arch/sparc64/loader/ Issue a sparc64 write barrier before passing control from the loader to
the kernel.
 
2071 6982 d 0 h jermar /trunk/ (c) versus (C)  
1978 7043 d 1 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 7095 d 8 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 7170 d 1 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 7170 d 4 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 7172 d 3 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1783 7173 d 0 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 7179 d 6 h jermar /boot/trunk/arch/sparc64/ sparc64 is now booted by HelenOS boot loader.  
1773 7179 d 22 h jermar /boot/trunk/arch/sparc64/loader/ Work on sparc64 boot loader (still inactive).  
1771 7180 d 1 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