You've already forked comprehensive-rust
mirror of
https://github.com/google/comprehensive-rust.git
synced 2025-07-05 06:00:30 +02:00
Update some speaker notes for bare metal Rust section (#2764)
This commit is contained in:
@ -12,6 +12,7 @@ Now let's use the new `Registers` struct in our driver.
|
|||||||
register. The caller of `UniqueMmioPointer::new` promises that it is valid and
|
register. The caller of `UniqueMmioPointer::new` promises that it is valid and
|
||||||
unique for the given lifetime, so it can provide safe methods to read and
|
unique for the given lifetime, so it can provide safe methods to read and
|
||||||
write fields.
|
write fields.
|
||||||
|
- Note that `Uart::new` is now safe; `UniqueMmioPointer::new` is unsafe instead.
|
||||||
- These MMIO accesses are generally a wrapper around `read_volatile` and
|
- These MMIO accesses are generally a wrapper around `read_volatile` and
|
||||||
`write_volatile`, though on aarch64 they are instead implemented in assembly
|
`write_volatile`, though on aarch64 they are instead implemented in assembly
|
||||||
to work around a bug where the compiler can emit instructions that prevent
|
to work around a bug where the compiler can emit instructions that prevent
|
||||||
|
@ -25,13 +25,11 @@ idmap.activate();
|
|||||||
|
|
||||||
<details>
|
<details>
|
||||||
|
|
||||||
- For now it only supports EL1, but support for other exception levels should be
|
|
||||||
straightforward to add.
|
|
||||||
- This is used in Android for the [Protected VM Firmware][2].
|
- This is used in Android for the [Protected VM Firmware][2].
|
||||||
- There's no easy way to run this example, as it needs to run on real hardware
|
- There's no easy way to run this example by itself, as it needs to run on real
|
||||||
or under QEMU.
|
hardware or under QEMU.
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
[1]: https://crates.io/crates/aarch64-paging
|
[1]: https://crates.io/crates/aarch64-paging
|
||||||
[2]: https://cs.android.com/android/platform/superproject/+/master:packages/modules/Virtualization/pvmfw/
|
[2]: https://cs.android.com/android/platform/superproject/main/+/main:packages/modules/Virtualization/guest/pvmfw/
|
||||||
|
Reference in New Issue
Block a user