Commit Graph

67 Commits

Author SHA1 Message Date
Andre Richter
a5884321a7
Fix rustdoc warnings 2021-01-29 22:30:02 +01:00
Andre Richter
8324b1fdac
PL011: Use BUSY bit
Fixes #100
2021-01-28 23:25:57 +01:00
Andre Richter
e7cb61b389
Refactoring
- Don't wildcard-import from arch modules. Make it explicit.
- Put translation table code into its own module.
- Put boot code in boot.rs instead of cpu.rs
- Other minor changes, most memory subsystem.
2021-01-23 22:43:59 +01:00
Andre Richter
c35a30cd0b Bump UART to 921_600 baud + other bugfixes
Fixes #95
Fixes #98

Co-authored-by: Takumasa Sakao <sakataku7@gmail.com>
2021-01-04 17:11:48 +01:00
Andre Richter
ff382c3faf
Remove comment 2021-01-02 16:04:27 +01:00
Andre Richter
f2a891236e
Remove unused feature 2021-01-02 16:00:16 +01:00
Andre Richter
ee52e8e288
Bump UART to 576000 baud 2021-01-01 23:12:42 +01:00
Andre Richter
44bb3f8942
Update copyright year 2021-01-01 11:28:32 +01:00
Andre Richter
18c7259c60
Default to externally powered RPis
Addresses issues in #86
2020-12-27 00:06:43 +01:00
Andre Richter
d212348931
Bump compiler version.
We have to remove the `#[naked]` attribute from `_start` for now, since it emits
a warning now when used with non-asm statements in the function body. For now,
just hope for the compiler's mercy to not emit code using the stack pointer
before we've actually set up a stack.
2020-12-09 22:27:30 +01:00
Andre Richter
e8d30392d0
Add LTO 2020-11-23 22:44:31 +01:00
Andre Richter
2c3f705051
Update dependencies
register-rs 1.0.0 now uses UnsafeCell internally, which means we lost the Copy
derive on InMemoryRegister.

Therefore, a small set of changes was needed in the MMU driver to dance around
the static array init depending on a Copy type.
2020-11-23 22:34:20 +01:00
Andre Richter
5c193d5803
Change to a simpler mutex API 2020-11-20 22:05:14 +01:00
Andre Richter
02f9f34af3
More sound Phantom in MMIO deref wrapper 2020-11-19 22:53:43 +01:00
Andre Richter
163e2010ab
GPIO: Fix RPi4 driver init
The RPi4 GPIO pull-up/pull down sequence is done differently than on the
RPi3. Switch to using the correct way.

Also, configure pull-ups for both UART pins.

Fixes #81
2020-11-14 10:18:29 +01:00
Andre Richter
4b8f6a6980
Fix wrong phony 2020-11-08 23:44:12 +01:00
Andre Richter
e1473099ff
Use miniterm instead of screen 2020-11-08 23:37:17 +01:00
Andre Richter
9e6ef76aeb
Make cortex-a platform specific dep 2020-10-28 11:45:28 +01:00
Andre Richter
e7a13e81b8
Upgrade to cortex-a 4.x.x 2020-10-28 11:27:43 +01:00
Andre Richter
8fc250fc08
Streamline READMEs 2020-10-04 22:30:07 +02:00
Andre Richter
677b274a1f
Add a panic version of the GPIO to panic!() 2020-09-30 21:51:31 +02:00
Andre Richter
22faff5229
Various finetunings 2020-09-29 21:43:31 +02:00
Andre Richter
37b9d1435e
Move anything wrt linker symbols to bsp::memory
Also, some rewording of data types.
2020-09-28 21:45:38 +02:00
Andre Richter
a33f693e1c
Tutorial 6: README: Update config.txt instructions
Fixes #77
2020-09-17 22:10:43 +02:00
Andre Richter
b585f64e30
Shuffle constant to more fitting module 2020-07-30 22:59:24 +02:00
Andre Richter
dfbcd444dd
Update some readmes 2020-07-21 17:48:07 +02:00
Andre Richter
87e74f62cd
UART: Fix FBRD
Closes #70

Co-authored-by: Carl Fredrik Samson <cfsamson@users.noreply.github.com>
2020-07-13 21:55:37 +02:00
Andre Richter
519be514a5
Update README.md 2020-07-12 15:13:15 +02:00
Andre Richter
3a0b676402
Use MMIODerefWrapper everywhere 2020-07-12 12:44:03 +02:00
Andre Richter
681092829c
Bump to cortex-a 3.0.0 2020-04-16 22:54:08 +02:00
Andre Richter
834b226f4e
Update README 2020-04-11 22:10:26 +02:00
Andre Richter
9819b557fe
Add console symbol 2020-04-08 23:30:27 +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
1cba21bda1
Minor namespace adaptions 2020-03-31 23:45:17 +02:00
Andre Richter
474f58ced0
Add README diffs 2020-03-28 15:42:42 +01:00
Andre Richter
91575eaa2c
Refactor tutorial 06 2020-03-28 13:26:38 +01:00
Andre Richter
7d86a1d6ab Change note about start4.elf file naming. 2020-02-24 12:58:27 +01:00
Andreas Schmidt
ef571a75a7 fix start4.elf file naming to boot on Raspi 4 2020-02-24 12:58:27 +01:00
Andre Richter
72a4d28fc1
Bump to register 0.5.x 2020-01-16 22:06:43 +01:00
Andre Richter
840c72d11b
Bump UART to 230400 Baud 2020-01-14 21:53:28 +01:00
Andre Richter
e7bf7fab0e
Fix UART stats; Remove unneeded conversion. 2020-01-11 22:12:35 +01:00
Andre Richter
c64dd1197a
For educational purposes, use own zero_bss(). 2020-01-04 18:15:43 +01:00
Andre Richter
a41190e298
Ensure kernel panic starts on newline 2020-01-04 00:59:37 +01:00
Andre Richter
e690f8e7e4
Copyright bump to 2020 🎆 2020-01-02 00:41:03 +01:00
Andre Richter
582d539212
Add console chars_read implementation 2019-12-25 17:29:51 +01:00
Andre Richter
10090900cc
Add missing source comments 2019-12-17 13:42:20 +01:00
Andre Richter
54137e8b38
Relicense as dual MIT OR Apache-2.0 2019-11-25 19:54:05 +01:00
Andre Richter
d31c17d914
More idiomatic register-rs use 2019-11-16 00:01:52 +01:00
Andre Richter
1cc8152fa1
Use register 0.4.x register_structs macro 2019-11-14 08:44:21 +01:00
Andre Richter
8c2b18e8ce
More robust, self-contained UART printing in panic! 2019-11-06 22:45:29 +01:00