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
1844 6544 d 5 h jermar /trunk/kernel/ Add an option to compile the sparc64 kernel for Ultra 5 or Enterprise E6500.
Basic keyboard support (polling) based on ns16550 serial port (deployed on Ultra).
 
1843 6544 d 8 h jermar /trunk/kernel/genarch/ Move code duplicated in i8042.c and z8530.c to key.c.  
1842 6544 d 10 h jermar /trunk/kernel/ i8042 and z8530 separated, the tree compiles again.
Now there is some duplicated code in i8042.c and z8530.c,
but that can be eliminated in slower pace.
 
1841 6544 d 12 h jermar /trunk/kernel/ Start reorganization of different keyboard drivers.
What seemed like a screwed i8042 chip appears to be
Zilog 8530.

The repository won't compile now. To be fixed in next commits.
 
1838 6549 d 8 h jermar /trunk/kernel/ Add scan code map for Sun keyboard.  
1837 6549 d 16 h jermar /trunk/ Support 24bpp framebuffers with 4 pixelbytes (each pixel aligned on 32-bits).

At least on sparc64, the OpenFirmware linebytes property specifies the number
of pixels between consecutive scan lines of the display. Fix scanilne calculation,
including possible alignment.

Add note to 8bpp pixel functions pointing out drawbacks of that mode.
 
1790 6571 d 6 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 6573 d 6 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1784 6574 d 3 h jermar /kernel/trunk/ Sync OpenFirmware functionality with boot.
Random cleanup.
 
1780 6580 d 7 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1702 6601 d 9 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1474 6614 d 2 h palkovsky /kernel/trunk/ Added syscall that lets kernel regain access to keyboard.  
1423 6618 d 10 h jermar /kernel/trunk/ Update page fault handlers to distinguish between different access modes that had caused the page fault.  
1382 6625 d 3 h decky /kernel/trunk/ make hardware memory mapping more generic  
1380 6625 d 4 h jermar /kernel/trunk/ Turn address space lock, address space area lock and
page_ht_lock into mutexes.
 
1376 6626 d 11 h jermar /kernel/trunk/ Change the way the framebuffer is mapped so that sparc64 is usable again.  
1371 6627 d 2 h decky /kernel/trunk/ unify the framebuffer API
use physical address as the base address for the framebuffer
 
1327 6631 d 9 h decky /kernel/trunk/ split framebuffer initialization and sysinfo registration  
1313 6632 d 11 h jermar /kernel/trunk/ Do not report possible deadlock on fb_lock.
This issue was causing troubles in connection
with slow framebuffer in simulated environment
when false positives triggered an infinite
recursion of attempts to report deadlock on
fb_lock using printf() and fb_putchar().
 
1196 6659 d 11 h cejka /kernel/trunk/ Printf ported back from uspace to kernel.
Printf calls changed to match new conventions.
 
1135 6681 d 1 h decky /kernel/trunk/ framebuffer code cleanup, support for non-standard scanline sizes
ppc32: get framebuffer parameters from boot loader
 
1108 6684 d 1 h jermar /kernel/trunk/ Small PTE_* macros and SET_PTL0_ADDRESS macro changes.  
977 6692 d 10 h jermar /kernel/trunk/ Add sys_mremap() syscall.  
902 6705 d 11 h jermar /kernel/trunk/ ia64 work.
More capable TLB miss handlers.
The ia64 kernel now passes mm/mapping1 test.

Fix generic hash table to properly initialize lists.

Change page_ht() to properly initialize inserted PTE's.
Change format of generic page hash table PTE's.
 
895 6707 d 3 h jermar /kernel/trunk/ sparc64 work.
Very raw and fragile preliminary standalone keyboard support - polling mode only.
Because of a workaround in Simics, the scan codes are the same as on ia32.
 
894 6707 d 7 h jermar /kernel/trunk/ Move i8042 driver to genarch as it might be used by more architectures.  
867 6712 d 9 h jermar /kernel/trunk/ Move OFW functionality of ppc32 memory_init to genarch so that the code can also be used by sparc64.
sparc64 is now close to broken as it lacks functionality to provide identity mapping for the whole phyisical memory.
 
838 6720 d 13 h palkovsky /kernel/trunk/ Added untested support for 2 & 4-byte (15-bit & 24-bit depth) framebuffer.  
837 6720 d 14 h palkovsky /kernel/trunk/ Moved framebuffer to genarch.  
832 6724 d 1 h jermar /kernel/trunk/ Change pt_mapping_remove() to deallocate frames for empty PTL1, PTL2 and PTL3.  
811 6727 d 4 h jermar /kernel/trunk/ Fix number of steps in softint division.
Make ia64 port compile with softint.
 
810 6727 d 8 h cejka /kernel/trunk/genarch/ Added softint for emulation 32 and 64 bit division.
Not tested yet.
 
793 6728 d 9 h jermar /kernel/trunk/ Use hash_table_get_instance instead of list_get_instance.
Rename page_operations to page_mapping_operations.
Rename page_pt_operations to pt_mapping_operations.
Rename page_ht_operations to ht_mapping_operations.
 
792 6728 d 10 h jermar /kernel/trunk/ Page hash table architectures now use generic hash table to manage
mappings.
 
760 6732 d 11 h jermar /kernel/trunk/ mips32 is not supposed to allocate page table.
This is done by the generic code now.
Remove PTL0 pointer as it is not needed.

Remove GET_PTL0_ADDRESS from kernel.

Update sparc64 comments in barrier.h.
 
756 6734 d 0 h jermar /kernel/trunk/ Memory management work.
Remove the last (i.e. 'root') argument from page_mapping_insert() and page_mapping_find().
Page table address is now extracted from the first (i.e. 'as') argument.
Add a lot of infrastructure to make the above possible.
sparc64 is now broken, most likely because of insufficient identity mapping of physical memory.
 
755 6734 d 23 h jermar /kernel/trunk/ Change page_mapping_find/insert interfaces to take as_t * as first argument
and not asid_t as second argument. This change was necessitated by the
removal of mapping array from as_area_t and the fact that an address
space doesn't have an ASID when it is created.
 
746 6739 d 10 h jermar /kernel/trunk/ Page hash table modifications.  
730 6744 d 6 h jermar /kernel/trunk/ Finalize ASID management for sparc64 and mips32 by making use of FIFO queue of ASIDs.  
699 6755 d 11 h jermar /kernel/trunk/ Memory management work.
Proto-interface and dummy implementation of generic page hash table subsytem.