Commit Graph

12 Commits

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.
2022-05-16 21:55:17 +02:00
Andre Richter
dabbf137f6
Add prettier for .json and .yml 2020-09-25 21:23:15 +02:00
Andre Richter
01bbf64c38
gitignore: Remove non-existing folder 2020-09-24 23:11:41 +02:00
Andre Richter
98d5d79acf
Don't check in binaries anymore 2020-04-16 22:47:19 +02:00
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.
2020-04-07 23:17:48 +02:00
Andre Richter
7f29ee84bd
Refactor utils 2020-01-09 22:11:56 +01:00
Andre Richter
8d6c58ad57
Add code for tutorial 09 2019-10-27 23:12:48 +01:00
Tianjiao Huang
42b9b293d8 Ignore cargo built files 2019-03-19 23:38:04 +01:00
Andre Richter
bc32b52f96
Add gitignore 2018-08-24 00:15:31 +02:00
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
2018-06-29 19:48:42 +02:00
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.
2018-04-08 13:28:57 +02:00
Andre Richter
857568009e Lazily generate dockcross runscript 2018-04-07 13:13:56 +02:00