Commit Graph

26 Commits

Author SHA1 Message Date
Berkus Decker 637304bdb3 feat: Add better nm output
Demangle and sort by symbol address.
2022-02-10 02:16:28 +02:00
Berkus Decker cfe4a230de feat: Add chainboot boot loader 2022-02-10 02:15:57 +02:00
Berkus Decker f76fab3fff chore: ♻️ Use different DTB files for rpi3 and rpi4 2022-02-10 02:14:07 +02:00
Berkus Decker 721af870bf build: 🛠 Make image prepare steps more verbose 2022-02-10 02:14:07 +02:00
Berkus Decker 40782ea7cc chore(debug): ♻️ Upgrade gdb version and update run scripts 2022-02-10 02:14:07 +02:00
Berkus Decker 4cdeeb8556 refactor: 📦 Split kernel into machine and nucleus
Move openocd task to upper level and remove kernel
build dependency - the qemu runner doesn't really
depend on it.
2022-02-10 02:14:07 +02:00
Berkus Decker b26d61cb67 build: 🛠 Improve Justfile help output
Enter `just` to see a list of available commands
with explanations.

Added `just ci` step.
Added `just fmt-check`.
Removed unnecessary kernel file removals.
Moved sdeject task and added `just device-eject`.
2022-01-23 16:03:03 +02:00
Berkus Decker 503f43d983 build(tools): Enable target board selection 2021-12-20 17:52:14 +02:00
Berkus Decker 5a304557a7 build(tools): Add RasPi4 target configuration for OpenOCD
Update and move rpi3 jtag configs.
Add rpi bringup doc - lists romtables for configuring.
2021-12-20 17:51:20 +02:00
Berkus Decker f6da27062f build(tools): Update OpenOCD version
RTT patch has been merged, so use the latest 0.11.0-rc2+dev-01576-g0d9e8bd52-dirty
2021-12-20 17:51:08 +02:00
Berkus Decker e6ddbb76e7 feat: Add zellij qemu runner with serial emulation 2021-11-17 17:19:39 +02:00
Berkus Decker 601cf7a784 Add documentation target
Type `just doc` to see documentation in browser.

Improve doc comments in code to support
rustdoc links format.
2021-01-27 19:22:48 +02:00
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 bfba78118f Move build-std flags to cargo config 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 9f06e2f1a5 Add clippy features matrix
Run clippy on all available feature combos.
2020-10-27 13:09:21 +02:00
Berkus Decker 504dcd1f65 Update copyrights 2020-10-15 23:04:01 +03:00
Berkus Decker 44037398d4 Add hopper make target
hopper is useful for inspecting kernel disassembly.
2020-10-07 21:23:23 +03:00
Berkus Decker 4cc5305dc8 Prepare scripts for windows CI runner 2020-10-06 19:27:50 +03:00
Berkus Decker af1cc83530 Add testing framework
Based on os.phil-opp.com ideas it includes running test framework in
qemu semihosting mode so that tests can indicate pass or fail to calling
process.

GitHub Actions are configured to run these tests and validate acceptance.

Add test-runner target to perform tests in qemu.

Add -nographic for qemu running tests.

Drop serial for qemu tests as well.
2020-10-06 19:27:50 +03:00
Berkus Decker a4a3289712 Add GH Actions build workflow 2020-08-10 00:34:49 +03:00
Berkus Decker 57fc6e5aa5 Add QEMU configuration 2020-08-09 19:40:57 +03:00
Berkus Decker cb814b353b Add Raspberry Pi target configuration
* Use rlibc for memset/memcpy
* Create linker script for raspberry pi 3
* Add aarch64 target file inspired by Robigalia
* Force bitcode embedding for LTO
2020-08-09 19:35:09 +03:00