summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md28
1 files changed, 28 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..34fdf32
--- /dev/null
+++ b/README.md
@@ -0,0 +1,28 @@
+# tashaboot
+
+Small multi stage bootloader for powerpc and arm64. The goal is a
+bootloader you can read in an afternoon. Every knob is a #define in one
+obvious place, each board is a board.h, and the flasher takes an
+editable boot.conf.
+
+Scope, plainly: tashaboot lives in the loaded payload slot, the one
+device firmware hands off to. On qcom that is the ABL / BOOT partition
+slot, on open firmware boxes it is whatever that stage loads. It loads
+a kernel, or chainloads another bootloader, lk2nd style. The boot ROM
+is upstream of all of that, it decides whether tashaboot ever runs, and
+tashaboot does not touch it.
+
+Targets:
+- powerpc: qemu pseries and the OSUOSL LPAR it runs on
+- arm64: qemu virt first, real boards after
+
+Design rules:
+- small enough to read in one sitting, no mini libc, no driver zoo
+- board.h per board, one config header per arch
+- boot.conf parsed at flash time, not boot time
+- fail loud: if a load fails you see it on the console, not a hang
+
+Status: skeleton. No code yet. C base first (OSU senior project
+candidate), asm and bringup after.
+
+License: GPL-2.0