From e815b346032ed70db95d611a1ee81c1f8c55e34b Mon Sep 17 00:00:00 2001 From: Andre Richter Date: Mon, 4 Jan 2021 22:13:40 +0100 Subject: [PATCH] Update READMEs --- 08_timestamps/README.md | 5 +++-- README.md | 11 ++++++----- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/08_timestamps/README.md b/08_timestamps/README.md index 111b1168..b79121c0 100644 --- a/08_timestamps/README.md +++ b/08_timestamps/README.md @@ -2,8 +2,9 @@ ## tl;dr -- We add abstractions for the architectural timer, implement it for `aarch64` and use it to annotate - prints with timestamps. +- We add abstractions for the architectural timer and implement them for `_arch/aarch64`. +- The new timer functions are used to annotate UART prints with timestamps, and to get rid of the + cycle-based delays in the `GPIO` and `UART` device drivers, which boosts accuracy. - A `warn!()` macro is added. ## Test it diff --git a/README.md b/README.md index 00cbe66e..daf3b7d7 100644 --- a/README.md +++ b/README.md @@ -92,15 +92,15 @@ other Unix flavors such as **macOS**, but this is only _experimental_. [docker group]: https://docs.docker.com/engine/install/linux-postinstall/ [Rust Analyzer extension]: https://marketplace.visualstudio.com/items?itemName=matklad.rust-analyzer -### 🧰 The Long Version: Eliminating Toolchain Hassle +### 🧰 More Details: Eliminating Toolchain Hassle This series tries to put a strong focus on user friendliness. Therefore, efforts were made to -eliminate the biggest painpoint in embedded development as much as possible: Toolchain hassle. +eliminate the biggest painpoint in embedded development as much as possible: `Toolchain hassle`. Rust itself is already helping a lot in that regard, because it has built-in support for cross-compilation. All that we need for cross-compiling from an `x86` host to the Raspberry Pi's -`AArch64` architecture is to install the respective target through `rustup`. However, besides the -Rust compiler, we will use some more tools. Among others: +`AArch64` architecture will be automatically installed by `rustup`. However, besides the Rust +compiler, we will use some more tools. Among others: - `QEMU` to emulate our kernel on the host system. - A self-made tool called `Minipush` to load a kernel onto the Raspberry Pi on-demand over `UART`. @@ -122,7 +122,8 @@ provided container, please refer to the repository's [docker](docker) folder. Since the kernel developed in the tutorials runs on the real hardware, it is highly recommended to get a USB serial cable to get the full experience. -- You can find USB-to-serial cables that should work right away at [\[1\]] [\[2\]]. +- You can find USB-to-serial cables that should work right away at [\[1\]] [\[2\]], but many others + will work too. Ideally, your cable is based on the `CP2102` chip. - You connect it to `GND` and GPIO pins `14/15` as shown below. - [Tutorial 6](06_drivers_gpio_uart) is the first where you can use it. Check it out for instructions on how to prepare the SD card to boot your self-made kernel from it.