12 Commits (fec4f9b6f284e55f5b0d96e57eccbdaf358cc447)

Author SHA1 Message Date
Andre Richter fec4f9b6f2
Rework driver subsystem
- Remove the panic version of the GPIO and UART driver. While they were a neat
  idea, it proved tedious to drag them along different tutorials where the
  virtual memory situation kept on changing. Actually, not much is lost, since
  the benefit was only of theoretical nature until now, since everything is
  still single-threaded with NullLocks. It is still possible to re-introduce
  them later.

- Refactor driver bringup starting with tutorial 14. Instantiating the drivers
  only when we are already capable of using the remapped MMIO address makes the
  kernel a lot more robust, and the drivers need not care whether their MMIO
  addresses are good to use already or not.

- Use console and irq_manager references from the generic kernel code. This
  improves decoupling from the BSP, and is needed as a basis for tutorial 14.
2 years ago
Andre Richter dabbf137f6
Add prettier for .json and .yml 4 years ago
Andre Richter 01bbf64c38
gitignore: Remove non-existing folder 4 years ago
Andre Richter 98d5d79acf
Don't check in binaries anymore 4 years ago
Andre Richter c4f9432e13
Remove xbuild. Use upstream aarch64 rust-std 🎉 🦀
`rustup target add aarch64-unknown-none-softfloat` is now a thing.
It is no longer required to build rust-std on-demand with `xbuild`.

This reduces compile-times significantly.
4 years ago
Andre Richter 7f29ee84bd
Refactor utils 4 years ago
Andre Richter 8d6c58ad57
Add code for tutorial 09 5 years ago
Tianjiao Huang 42b9b293d8 Ignore cargo built files 5 years ago
Andre Richter bc32b52f96
Add gitignore 6 years ago
Andre Richter 323a346b07
Use llvm objcopy from rust toolchain 🎉
Its the last missing util we needed to be a rust-toolchain-only project.

https://github.com/rust-lang/rust/pull/50336
https://github.com/japaric/cargo-binutils
6 years ago
Andre Richter 32ef64b36e compiler_builtins are now mandatory; Add them.
In rust-lang/rust@679657b863 a breaking
change was introduced that now requires compiler_builtins. Add them,
and use the opportunity to kick out rlibc, since memset() et al. can
be provided by compiler intrinsics.
6 years ago
Andre Richter 857568009e Lazily generate dockcross runscript 6 years ago