Berkus Decker
|
e8da38e04f
|
Add qemu-gdb target
Refactor QEMU runners.
|
2020-11-14 17:59:50 +02:00 |
Berkus Decker
|
7604f7c166
|
Add cargo expand task
|
2020-11-14 17:33:43 +02:00 |
Berkus Decker
|
09003a7da2
|
Traps: print more detailed exception report
|
2020-11-14 17:33:43 +02:00 |
Berkus Decker
|
373f4753dc
|
Disable alignment checks right on boot
Specifically, before we print any numbers - rust
core fmt_u64 uses a little optimisation that
ldrh/strh to unaligned addresses.
|
2020-11-14 17:33:43 +02:00 |
Berkus Decker
|
482c62d341
|
Change mmu detail printer formatting
Print mmu features before and after init.
|
2020-11-14 17:33:43 +02:00 |
Berkus Decker
|
df0510266e
|
Fix formatting
|
2020-11-14 17:33:43 +02:00 |
Berkus Decker
|
dc2a73f6c6
|
Provide memory intrinsics via compiler builtins
Use unstable feature to remove rlibc crate dependency.
|
2020-11-14 17:33:43 +02:00 |
Berkus Decker
|
bfba78118f
|
Move build-std flags to cargo config
|
2020-11-14 17:33:43 +02:00 |
Berkus Decker
|
aac05a8776
|
Increase stack print buffer size to print test panics
Tests may write pretty long messages in panic output.
|
2020-11-14 17:33:43 +02:00 |
Berkus Decker
|
50d9caa5f6
|
Set stack pointer immediately upon boot
|
2020-11-14 17:33:43 +02:00 |
Berkus Decker
|
20c7c8bd7e
|
Refactor non-DRY boot code
|
2020-11-14 17:33:43 +02:00 |
Berkus Decker
|
79028dba96
|
Add nm helper target
|
2020-11-04 22:24:39 +02:00 |
Berkus Decker
|
6da44a69ac
|
Improve gdb runner
|
2020-11-04 22:24:34 +02:00 |
Berkus Decker
|
d38661b63f
|
Add openocd/gdb targets to makefile
Refactor build system scripts a bit.
|
2020-11-03 19:29:43 +02:00 |
Berkus Decker
|
3415ccd68c
|
Add JTAG helpers
|
2020-11-03 14:03:22 +02:00 |
Berkus Decker
|
c378250aba
|
Init serial before the rest
So we could see output from all modules.
|
2020-11-02 20:55:18 +02:00 |
Berkus Decker
|
d342031331
|
Add kernel global CONSOLE
Init it with mini_uart - nothing else is implemented yet.
|
2020-10-28 21:38:53 +02:00 |
Berkus Decker
|
ab696eca8e
|
Implement Error type for traps module
Recommended by the clippy lint
https://rust-lang.github.io/rust-clippy/master/index.html#result_unit_err
Using snafu because it already has a no_std feature
unlike thiserror.
|
2020-10-28 21:38:53 +02:00 |
Berkus Decker
|
fef66a0191
|
Bump cortex-a dependency to released version
|
2020-10-28 21:38:53 +02:00 |
Berkus Decker
|
cecddea41e
|
Add mini_uart implementation
|
2020-10-27 19:33:23 +02:00 |
Berkus Decker
|
7a46d7d993
|
Add a dummy Console device
|
2020-10-27 19:32:54 +02:00 |
Berkus Decker
|
9f06e2f1a5
|
Add clippy features matrix
Run clippy on all available feature combos.
|
2020-10-27 13:09:21 +02:00 |
Berkus Decker
|
201cf1e4af
|
Add noserial feature flag
|
2020-10-27 11:34:56 +02:00 |
Berkus Decker
|
ea75413df0
|
Add looping/delay helpers
|
2020-10-27 11:34:36 +02:00 |
Berkus Decker
|
41eed8e412
|
Add GPIO support
|
2020-10-25 22:57:38 +02:00 |
Berkus Decker
|
0def5a4687
|
Split test failure printing in two parts
Due to static buffer size the panic info might not fit. We still
want to print [failed] message in this case though.
|
2020-10-25 22:21:42 +02:00 |
Berkus Decker
|
79baa20eb6
|
Adjust indentation in debug output
|
2020-10-25 22:21:40 +02:00 |
Berkus Decker
|
e19177da52
|
Add FrameBuffer configuration
|
2020-10-25 04:11:27 +03:00 |
Berkus Decker
|
c3d8424a46
|
Update cortex-a dependency
While we wait for merge of master repository PRs.
|
2020-10-24 18:08:20 +03:00 |
Berkus Decker
|
6ae59124a6
|
Add MailboxOps trait
|
2020-10-21 16:28:08 +03:00 |
Berkus Decker
|
e6d4bf6095
|
Improve test runner
|
2020-10-21 14:25:31 +03:00 |
Berkus Decker
|
d572b2c297
|
Move panics to separate module
Add special panic code for QEMU tests.
|
2020-10-21 14:25:31 +03:00 |
Berkus Decker
|
6c5d7a13fc
|
Add more information to READMEs
https://scarfolk.blogspot.com/
|
2020-10-21 05:52:08 +03:00 |
Berkus Decker
|
fb7f86abf0
|
Add DMA_ALLOCATOR
|
2020-10-21 05:52:08 +03:00 |
Berkus Decker
|
e48316cc4b
|
Add mailbox module
|
2020-10-21 05:52:08 +03:00 |
Berkus Decker
|
97e2c09871
|
Add bump_allocator for obtaining memory without freeing it
|
2020-10-21 05:51:10 +03:00 |
Berkus Decker
|
4672ddace6
|
Add mm module and move memory alignment functions there
|
2020-10-20 05:40:26 +03:00 |
Berkus Decker
|
4083e955d4
|
Add dummy synchronisation primitive
It is used yet on single-core single-thread system.
Once more threads and more cores are active, better
synchronisation primitives will be introduced.
|
2020-10-20 05:40:25 +03:00 |
Berkus Decker
|
88b0af44cb
|
Add Board Support for RPi3
|
2020-10-20 05:39:50 +03:00 |
Berkus Decker
|
c823b42447
|
Update license identification
|
2020-10-17 22:32:16 +03:00 |
Berkus Decker
|
0692c324af
|
Add trap handling and test
|
2020-10-15 23:42:01 +03:00 |
Berkus Decker
|
504dcd1f65
|
Update copyrights
|
2020-10-15 23:04:01 +03:00 |
Berkus Decker
|
458aba6652
|
Gate QEMU functions behind testing features
At least for now, it's not used anywhere else.
|
2020-10-15 22:49:31 +03:00 |
Berkus Decker
|
408857fcb6
|
Add documentation
|
2020-10-15 22:49:31 +03:00 |
Berkus Decker
|
4898ad3139
|
Move global options to main.rs
|
2020-10-15 22:36:52 +03:00 |
Berkus Decker
|
2f663f61de
|
Move stack start constant to linker script
|
2020-10-15 22:36:52 +03:00 |
Berkus Decker
|
ded53c16a7
|
Add MMU init code
Switch to cortex-a git version temporarily
(waiting for PR to be merged) with support
for all necessary registers.
|
2020-10-15 22:36:52 +03:00 |
Berkus Decker
|
2ef8999daf
|
Remove not necessary inline attributes
Now with the bug fixed we can optimise this code for size.
|
2020-10-13 22:16:19 +03:00 |
Berkus Decker
|
44ef31ff77
|
Add missed clobbered registers in asm block
Fixes mis-compilation described in rust-lang/rust#68812.
|
2020-10-13 22:14:32 +03:00 |
Berkus Decker
|
44037398d4
|
Add hopper make target
hopper is useful for inspecting kernel disassembly.
|
2020-10-07 21:23:23 +03:00 |