Aaron Lindsay
5f78e1f55d
Add tags generation/cleanup to Makefile
6 years ago
Aaron Lindsay
296433e09c
Update i386 disk image creation
6 years ago
Aaron Lindsay
884913b350
Fixup for latest Arch ARM toolchain
6 years ago
Aaron Lindsay
b51f8f8422
Consolidate physical page frame declaration from all archs
8 years ago
Aaron Lindsay
1c75a68815
config: add CONFIG_PAGE_SIZE and CONFIG_INIT_PAGE_SIZE
8 years ago
Aaron Lindsay
e69440c698
Add include/arch/properties.h files
Will include architecture-specific properties about the kernel.
Currently they mainly hold macros for calculating where the kernel
starts and ends in physical and virtual memory.
8 years ago
Aaron Lindsay
806d00f471
mm.c/h -> frames.c/h: Naming indicating dealing with physical not virtual memory
8 years ago
Aaron Lindsay
e279d83d7d
arch/arm: MMU comment spelling fixups
8 years ago
Aaron Lindsay
b98aa76334
arch/i386: Add multiboot support
8 years ago
Aaron Lindsay
62755b8f38
Move atags support to be ARM arch-specific
8 years ago
Aaron Lindsay
ed52a8af5c
arch/arm: Fixup formatting to match arch/i386
8 years ago
Aaron Lindsay
c51062ce87
arch/i386: Boot to kernel main() with proper initial segmentation/paging setup
8 years ago
Aaron Lindsay
cee0ac7dda
i386: Add new arch support! (woefully incomplete)
8 years ago
Aaron Lindsay
c76991b1b5
Makefile: Generalize flags and tools in preparation for i386 arch
8 years ago
Aaron Lindsay
ccd5a9025a
types.h: Add arch_uint_ptr to make comparing native pointer types easier
8 years ago
Aaron Lindsay
a1fb385d97
arch/arm: Separate out architecture-specifics
8 years ago
Aaron Lindsay
03dfa30b70
init.h: Protect against multiple includes
8 years ago
Aaron Lindsay
c90edb451d
init: Move all init into init.c from start_kernel.c
8 years ago
Aaron Lindsay
5f59e07432
print: Allow for more than one output for console messages
8 years ago
Aaron Lindsay
a64668b239
Store device's names and add more startup messages
8 years ago
Aaron Lindsay
d7f354221f
Remove device header files unneeded after initcall setup and generlization
8 years ago
Aaron Lindsay
c64bfea238
fb: Generalize framebuffer device initialization
8 years ago
Aaron Lindsay
0b7e14c69b
serial: Allow more than one serial device to be registered
8 years ago
Aaron Lindsay
828beb45bd
Raspberry Pi VideoCore: Wait for framebuffer address if not available
Sometimes the VideoCore does not immediately provide the framebuffer
address, even after it has returned success via a mailbox read.
8 years ago
Aaron Lindsay
8cb4100463
init: Initialize serial subsystem before init_earlyinitcalls()
Otherwise, the serial sybsystem isn't initialized before the serial
drivers attempt to register themselves.
8 years ago
Aaron Lindsay
9d86813d8c
initcalls: Add initial implementation
Create simple serial subsystem which makes use of initcalls, and convert
existing serial drivers to its use.
8 years ago
Aaron Lindsay
3f624153e7
devices -> drivers
8 years ago
Aaron Lindsay
9b66a78569
Makefile: Fixup config.h generation
Handle comments better, add comment to target
8 years ago
Aaron Lindsay
3876937ae9
Add simple config system for both #ifdef's and conditional compilation
8 years ago
Aaron Lindsay
736155ce99
console: Initial commit of simple framebuffer console output
8 years ago
Aaron Lindsay
53863654c3
pl11[01]: Dynamically allocate framebuffer instead of assuming 0x200000
8 years ago
Aaron Lindsay
5a836d0af5
math: add math library (currently only log_2)
8 years ago
Aaron Lindsay
9150109729
print: Add print_func() - output text w/ custom putc()
8 years ago
Aaron Lindsay
ea66b3dd3a
pl11[01]: use types.h instead of own uint32 typedef
8 years ago
Aaron Lindsay
af22b6fe46
Add BCM2835 (Raspberry Pi) framebuffer and mailbox implementations
8 years ago
Aaron Lindsay
925192fca1
start_kernel.c: Use Raspberry Pi's mini_UART for print()
8 years ago
Aaron Lindsay
787a46f2ca
mm: Never return page struct at 0x0, check for invalid number of pages
8 years ago
Aaron Lindsay
375ef2eddf
print: Add '\r' whenever '\n' appears for actual serial consoles
8 years ago
Aaron Lindsay
ba10785eb9
kmalloc: initialize initial page power
8 years ago
Aaron Lindsay
9efb28980c
Add Raspberry PI's mini-UART
8 years ago
Aaron Lindsay
e550deab5c
pl011: use types.h definition of uint32 instead of 'unsigned long'
8 years ago
Aaron Lindsay
fa96f9293b
mm: remove debug
8 years ago
Aaron Lindsay
ccbee1d142
kmalloc: initial implementation
8 years ago
Aaron Lindsay
d7292f1fe2
list: Don't leave out last element in for_each_list()
8 years ago
Aaron Lindsay
580ab1f584
Add GPLv2 license and source file headers
8 years ago
Aaron Lindsay
c84fd58ce4
Makefile: Add automatic dependency generation
8 years ago
Aaron Lindsay
c455b1eeb3
Makefile: refactor subdirectory makefiles
8 years ago
Aaron Lindsay
f9244836e1
Makefile: output formatting changes
8 years ago
Aaron Lindsay
afba079256
Properly detect memory using atags and add it to the memory-management subsystem
8 years ago
Aaron Lindsay
d6e3899fc1
Enable the MMU even if the kernel is not loaded in physical memory at
the same place it was linked against.
8 years ago