Berkus Decker
e8da38e04f
Add qemu-gdb target
...
Refactor QEMU runners.
2020-11-14 17:59:50 +02:00
Berkus Decker
91e8652abc
Merge pull-request #31 from metta-systems:fix/code-cleanup to develop
...
Fix/code cleanup
* Set stack pointer immediately upon entry
* Disable alignment checks before enabling MMU (rust core lib likes to do unaligned half-word accesses from its fmt_u64 routine, which we use a lot)
* Print more detailed reports in kernel exception handler
* Clean up makefiles
* Dry up boot code
* Move build-std flags to cargo config, as they apply to all of the cargo invocations
* Remove rlibc dependency, use compiler built-ins instead
[close #31 ]
2020-11-14 17:59:14 +02:00
Berkus Decker
7604f7c166
Add cargo expand task
2020-11-14 17:33:43 +02:00
Berkus Decker
f07f130132
Add comments to justfile commands
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
1776dac439
Increase CI build timeout even more
...
Delays are growing!
2020-11-04 22:24:30 +02:00
Berkus Decker
a5eeacf19b
Merge pull-request #29 from metta-systems:feature/jtag-debugging to develop
...
Feature/jtag debugging
Add JTAG setup docs and try running with probe.rs
[close #29 ]
2020-11-03 20:23:51 +02:00
Berkus Decker
d4356434a0
Increase CI build timeout
2020-11-03 19:49:39 +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
2a4eb20131
Add explicit noload flag to BSS section
2020-11-03 14:03:22 +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
1fedc95d42
Add JTAG documentation
...
This is old and tried docs from my RPi debugging setup with JTAG,
the next chapter with probe.rs is to be written.
2020-11-02 20:55:18 +02:00
Berkus Decker
ec27898830
Merge pull-request #28 from metta-systems:feature/add-mini-uart to develop
...
Feature/add mini uart
[close #28 ]
2020-10-29 01:13:37 +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
7adf3e1629
Merge pull-request #26 from metta-systems:feature/add-gpio to develop
...
Feature/add gpio
[close #26 ]
2020-10-26 01:01:58 +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
149245f411
Merge pull-request #24 from metta-systems:feature/add-fb-interface to develop
...
Feature/add fb interface
[close #24 ]
2020-10-25 20:43:04 +02:00
Berkus Decker
e19177da52
Add FrameBuffer configuration
2020-10-25 04:11:27 +03:00
Berkus Decker
082a1c29e7
Merge pull-request #25 from metta-systems:feature/deps.rs-badge to develop
...
Add deps.rs dependency status badge
[close #25 ]
2020-10-25 03:10:38 +02:00
Berkus Decker
1f9565b239
Add deps.rs dependency status badge
2020-10-25 03:46:13 +03:00
Berkus Decker
4da36b8d5e
Merge pull-request #23 from metta-systems:feature/add-rpi3-mailboxes to develop
...
Feature/add support for RPi3 mailbox interface
[close #23 ]
2020-10-25 03:38:45 +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