Commit Graph

335 Commits

Author SHA1 Message Date
Berkus Decker 1be3f9e2e0 fix: ๐Ÿ› Disable outdated test installers 2023-07-29 04:08:18 +03:00
Berkus Decker ebb73e5cb0 chore: โ™ป๏ธ Fix rustfmt and clippy complaints 2023-07-29 04:08:18 +03:00
Berkus Decker 7de1af043e fix: ๐Ÿ› Add RUST_STD to clippy invocation
Combine both parts of RUST_STD and RUST_STD_FEATURES into a single
option, easier to control, harder to miss.
2023-07-29 04:08:18 +03:00
Berkus Decker ce3b94e86e fix: ๐Ÿ› Fix 2/2 for objcopy unaligned sections bug
This one restores rust-objcopy but explicitly aligns
the beginning of each section. This avoids incorrect
binary output (.rodata section was offset 10-12 bytes
because of unaligned section start).
2023-07-29 04:08:18 +03:00
Berkus Decker d2ed7c21ac fix: ๐Ÿ› Fix 1/2 for objcopy unaligned sections bug
Due to a bug in llvm-objcopy sections
must be explicitly aligned, see
https://github.com/llvm/llvm-project/issues/58407
and
https://github.com/rust-lang/rust/issues/102983

This fix just replaces rust-objcopy with a GNU
binutils counterpart from `brew install
aarch64-elf-binutils`. Next commit will do a
less intrusive fix.
2023-07-29 04:08:18 +03:00
Berkus Decker 994ea39760 fix: ๐Ÿ› Update linker script w/ segment attributes.
Double the size of the kernel (by including all
the necessary sections).
2023-07-29 04:08:18 +03:00
Berkus Decker b8e9617b06 chore: โ™ป๏ธ Add source dividers template 2023-07-29 04:08:18 +03:00
Berkus Decker 13d6b2a037 chore: โ™ป๏ธ Add QEMU tracing options for aarch64
Disabled for now, need to try them out.
2023-07-29 04:08:18 +03:00
Berkus Decker 157604d7c9 chore: โ™ป๏ธ Drop bitcode embedding 2023-07-29 04:08:18 +03:00
Berkus Decker d37495bc01 fix: ๐Ÿ› Synchronise used features 2023-07-29 04:08:18 +03:00
Berkus Decker 9710866524 feat: โœจ Update panics, exit QEMU on exceptions 2023-07-29 04:08:18 +03:00
Berkus Decker 0e1c6669ac refactor: ๐Ÿ“ฆ Use better code structure
As inspired by andre-richter's tutorials.
2023-07-29 04:08:18 +03:00
Berkus Decker 46d0c4cffc fix: ๐Ÿ› Add missing exception vectors start symbol 2023-07-29 04:08:18 +03:00
Berkus Decker 5356de7cbb fix: ๐Ÿ› Disable some make tasks
Allows running gdb and hopper tasks.
Enable QEMU task.
2023-07-29 04:08:18 +03:00
Berkus Decker 45e18de842 refactor: ๐Ÿ“ฆ Rearrange kernel_main 2023-07-29 04:08:18 +03:00
Berkus Decker d78bc67d8f fix(build): ๐Ÿ› Allow building qemu-gdb target 2023-07-29 04:08:18 +03:00
Berkus Decker 1ca54d9ed6 fix(console): ๐Ÿ› Fix unicode character output
(At the expense of about 3kb code size.)
2023-07-29 04:08:18 +03:00
Berkus Decker 2c91e685bd fix(console): ๐Ÿ› Fix console I/O on the host side 2023-07-29 04:08:18 +03:00
Berkus Decker fa725c51cb fix: ๐Ÿ› Update cargo resolver to version 2 2023-07-29 04:08:18 +03:00
Berkus Decker e77c65632b chore: โ™ป๏ธ Omit wip commits from the changelog
Add sq commits type for "to squash".
2023-07-29 04:08:18 +03:00
Berkus Decker b1bbdf087a feat: โœจ Use gdbgui for debug 2023-07-29 04:08:18 +03:00
Berkus Decker dfbd424bde chore: โ™ป๏ธ Add sparkly magic 2023-07-29 04:08:18 +03:00
Berkus Decker 94d23a6a47 refactor: ๐Ÿ“ฆ kernel_main should be the main entry point 2023-07-29 04:08:18 +03:00
Berkus Decker d6887bccee refactor(build): ๐Ÿ“ฆ Use single gdb-config command 2023-07-29 04:08:18 +03:00
Berkus Decker 2313b0cf97 fix: ๐Ÿ› Make sdeject command more useful 2023-07-29 04:08:18 +03:00
Berkus Decker df135952e9 build(deps): ๐Ÿ›  Bump dependencies 2023-07-29 04:08:18 +03:00
Berkus Decker 1bcbe3271a refactor: ๐Ÿ“ฆ Replace cortex-a with aarch64-cpu 2023-07-29 04:08:18 +03:00
Berkus Decker b1bf9dc09d fix: ๐Ÿ› Restore libmachine tests
To make unit tests work we build libmachine as a
binary with test-runner.
2023-07-29 04:08:18 +03:00
Berkus Decker 78a864c433 refactor(linker): ๐Ÿ“ฆ Share exception handlers 2023-07-29 04:08:18 +03:00
Berkus Decker 4598330506 refactor: ๐Ÿ“ฆ Convert zellij config
Auto-close panes on quit.
2023-07-29 04:08:18 +03:00
Berkus Decker afbb317403 refactor: ๐Ÿ“ฆ Improve boot code structure
Rename sections to not conflict during link.
Update linker script docs to align on PAGE_SIZE.
2023-07-29 04:08:18 +03:00
Berkus Decker 12f51399df feat: โœจ Do a Rust-only chainloader! 2023-07-29 04:08:18 +03:00
Berkus Decker 0cc683a50f refactor: ๐Ÿ“ฆ Fix new clippy errors 2023-07-29 04:08:18 +03:00
Berkus Decker 227761c575 build(ci): ๐Ÿ›  Add new lint task 2023-07-29 04:08:18 +03:00
Berkus Decker a4fea833bb fix: ๐Ÿ› Fix zellij layout path argument 2023-07-29 04:08:18 +03:00
Berkus Decker e95b01104a refactor(console): ๐Ÿ“ฆ Improve console code 2023-07-29 04:08:18 +03:00
Berkus Decker e228a1cff4 chore: โ™ป๏ธ Fix typos 2023-07-29 04:08:18 +03:00
Berkus Decker 4d8048f3d0 refactor(gpio): ๐Ÿ“ฆ Refactor gpio code
Introduce changes to support new tock-registers
and rename the fields finally.
2023-07-29 04:08:18 +03:00
Berkus Decker 9660347688 docs: ๐Ÿ“š Update readme docs 2023-07-29 04:08:18 +03:00
Berkus Decker f964fea4c3 docs: ๐Ÿ“š Update safety docs 2023-07-29 04:08:18 +03:00
Berkus Decker 61762ccbf6 feat(qemu): โœจ Print QEMU run options 2023-07-29 04:08:18 +03:00
Berkus Decker 97ef3d355f build(deps): ๐Ÿ›  Upgrade clap 2023-07-29 04:08:18 +03:00
Berkus Decker 526d9fa46d build(deps): ๐Ÿ›  Bump dependencies 2023-07-29 04:08:18 +03:00
Berkus Decker dae26262bc feat(boot): โœจ Replace r0 dependency
Use pointer provenance to guarantee absence of UBs.
2023-07-29 04:08:18 +03:00
Berkus Decker 568fdcb649 build(deps): ๐Ÿ›  Bump dependencies 2023-07-29 04:08:18 +03:00
Berkus Decker 97fc7f6b3d feat(qemu): โœจ Generate QEMU logs 2023-07-29 04:08:18 +03:00
Berkus Decker 9b35283ca6 refactor(clippy): ๐Ÿ“ฆ Fix clippy error with matches!() 2023-07-29 04:08:18 +03:00
Berkus Decker 3fd8c16b16 Merge pull-request #137 from metta-systems:misc/updates-and-fixes to develop
Misc updates and fixes
None

[close #137]
2022-06-11 02:31:02 +03:00
Berkus Decker 9ac097c3cf fix: ๐Ÿ› Fix warnings on newer rust toolchain 2022-06-11 01:44:58 +03:00
Berkus Decker 5b0dbbfb8f build(ci): ๐Ÿ›  Depend test runs on clippy results 2022-06-11 01:42:03 +03:00