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
4021 5605 d 6 h jermar /trunk/kernel/ There is no need to define ioport{8,16,32}_t types for each architecture separately.  
4018 5605 d 10 h decky /trunk/kernel/arch/arm32/ better inline assembler readability using the new symbolic syntax  
3973 5609 d 15 h decky /trunk/kernel/ kernel memory management revisited (phase 2): map physical memory according to zones
- ia32: register reserved and ACPI zones
- pareas are now used only for mapping of present physical memory (hw_area() is gone)
- firmware zones and physical addresses outside any zones are allowed to be mapped generally
- fix nasty antient bug in zones_insert_zone()
 
3952 5615 d 6 h jermar /trunk/kernel/arch/arm32/ Remove unnecessary stuff from arm32.  
3951 5615 d 7 h jermar /trunk/ Unreak arm32 (as far as breakage introduced by 3947 goes) and
adapt the uspace GXemul kbd IRQ driver to use the new pseudo code.
 
3949 5615 d 7 h jermar /trunk/kernel/arch/arm32/include/ PIO functions for arm32.  
3941 5616 d 6 h jermar /trunk/kernel/ Let IRQ claim methods take irq_t * instead of the instance argument.  
3940 5616 d 9 h decky /trunk/kernel/ make hw_area API more generic
this allows mapping of EGA VRAM on ia32/amd64
 
3929 5617 d 5 h jermar /trunk/kernel/arch/ Introduce ioport8_t, ioport16_t and ioport32_t. These types are to be used with
pio_read_n() and pio_write_n() functions. This breaks everything.
 
3922 5619 d 4 h decky /trunk/ make arch_pre_main optional, don't force any specific prototype
simplify boot process
mips32: detect number of configured CPUs in msim
 
3917 5619 d 5 h decky /trunk/ remove non-standard define  
3908 5620 d 8 h decky /trunk/ overhaul pareas: use one single physical area for the physical address space not belonging to physical memory  
3906 5621 d 3 h jermar /trunk/kernel/ IRQ handlers are using one superfluous argument and an unused elipsis.
On the other hand, IRQ claim functions would need to be passed the instance
argument.
 
3902 5621 d 11 h jermar /trunk/kernel/ Introduce a more platform-neutral name for programmed I/O.

The new API looks like pio_read_n() or pio_write_n(), where n is 8, 16 or 32.
The old API (i.e. inb(), inw(), inl(), outb() outw(), outl()) may have made
some people think that the interface is only to be used with the separate I/O
space. That's not the case. This API is to be implemented on all platforms
so that we can finally have really generic kernel device drivers.
 
3880 5624 d 7 h decky /trunk/kernel/arch/ simplify configuration
introduce arch_construct_function and inb/outb (sometimes empty) on all platforms
various code cleanup
 
3879 5624 d 7 h decky /trunk/kernel/arch/ simplify configuration in Makefiles  
3878 5624 d 7 h decky /trunk/kernel/arch/ introduce fncptr_t and ioport_t on all platforms  
3868 5626 d 10 h jermar /trunk/kernel/arch/arm32/src/drivers/ Fix arm32 build when not configured with framebuffer.  
3844 5636 d 5 h decky /trunk/ silent kernel console output when user space console is active  
3790 5659 d 15 h svoboda /trunk/kernel/ Make newlines in panic messages consistent. Add periods at end of messages so that it is obvious whether they are printed entirely.  
3789 5660 d 4 h svoboda /trunk/kernel/arch/arm32/src/ Also redraw kernel console on arm32.  
3788 5660 d 4 h svoboda /trunk/kernel/ Unify newlines in fault_if_from_uspace() format strings. (Remove them and print newline automatically). Also start messages with caps.  
3705 5682 d 8 h decky /trunk/kernel/arch/arm32/src/mm/ add unused attribute  
3672 5693 d 7 h jermar /trunk/ Merge sparc branch to trunk.  
3416 5775 d 10 h svoboda /trunk/kernel/arch/arm32/include/ Merge changeset 3122 from tracing to trunk. (Add missing include)  
3369 5793 d 10 h decky /trunk/ configurable cross-compiler prefix (using CROSS_PREFIX)  
3274 5810 d 11 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.
 
3233 5824 d 11 h decky /trunk/ remove dummy page coloring facility, which is currenty not used  
3222 5843 d 11 h svoboda /trunk/ Merge program-loader related stuff from dynload branch to trunk. (huge)  
3135 5867 d 15 h jermar /trunk/kernel/arch/arm32/src/ Maintain cache coherence after arm32 installs exception handlers.  
3134 5867 d 16 h jermar /trunk/kernel/arch/ Add smc_coherence_block().  
3133 5868 d 6 h jermar /trunk/kernel/arch/ Add smc_coherence() macro to all architectures.
So far, only amd64, ia32, ia64 and sparc64 are implemented.
 
3104 5875 d 19 h svoboda /trunk/kernel/ Declare arguments for memstr.h operations as pointers instead of uintptr_t.  
3094 5877 d 8 h svoboda /trunk/ Make arm32 compile again.  
3070 5878 d 12 h decky /trunk/kernel/arch/ introduce portable formatting directives
remove common types
 
2797 5939 d 7 h jermar /trunk/kernel/ Each architecture should only announce its endianity.
The conversion macros should be defined only once.
 
2794 5940 d 7 h jermar /trunk/kernel/ Add macros for byte swapping of uint16_t's.  
2772 5961 d 7 h jermar /trunk/kernel/arch/arm32/src/mm/ Fix breakage in arm32 non-debug build.  
2745 5975 d 15 h decky /trunk/ code cleanup (mostly signed/unsigned)
allow extra compiler warnings
 
2725 5996 d 12 h decky /trunk/kernel/ remove config.memory_size, get_memory_size() and memory_init.{c|d}
the amount of available memory can be calculated from the sizes of the zones
add FRAMES2SIZE, SIZE2KB and SIZE2MB functions/macros (code readability)