diff options
Diffstat (limited to 'doc/md/SPECIFICATION_FIRMWARE.md')
| -rw-r--r-- | doc/md/SPECIFICATION_FIRMWARE.md | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/doc/md/SPECIFICATION_FIRMWARE.md b/doc/md/SPECIFICATION_FIRMWARE.md new file mode 100644 index 0000000..bfb3134 --- /dev/null +++ b/doc/md/SPECIFICATION_FIRMWARE.md @@ -0,0 +1,39 @@ +================================================================== + + Multi Platform Firmware + +================================================================== + +================================================================== +0. Objective: +================================================================== + +- Optimized for each target. +- EPM/GPT compilant. +- AMD64, PowerPC, RISC-V, 64x0, 32x0 support. +- SMP support. + +================================================================== +1. Solutions: +================================================================== + +- Abstract Memory and I/O. (pci-tree) +- Platform Independent Device Tree. (pci-tree) +- Common Starting point for each core (smp) + +================================================================== +2. Memory Layout: +================================================================== + +- 0x80000000/0x00FF/0x0000: Firmware Startup Code +- 0x90000000/0x7c00: Linear Header or EPM partition. + +================================================================== +3. Error Codes: +================================================================== + +- CB0001: Not bootable to Stage2 (or bootloader). +- CB0003: Bad arch. +- CB0002: Context returned early. + + |
