README.altboot revision 1.3
1/// notes about altboot ///
2
3$NetBSD: README.altboot,v 1.3 2011/04/08 08:29:07 phx Exp $
4
5Altboot is a functional bridge to fill the gap between a NAS product
6custom bootloader and the NetBSD kernel startup environment.  Altboot
7irons out and rectifies erroneously configured HW by product
8bootloaders and prepares a sane runtime, better suited for booting
9NetBSD kernels.
10
11- provides the foundation of a fast NetBSD porting cycle with functionalities
12  product bootloaders don't have.
13- facilitates a flexible and clean NetBSD implementation tailoured
14  to target HW in detail, minimizing bumpy adjustments and hacks in
15  locore asm and machdeps in very early kernel startup stage.
16- levels out differences among similar-but-not-the-same porting
17  targets to make it possible having common NetBSD kernels for them.
18- builds and hands a bootinfo list to the NetBSD kernel.
19
20Altboot is known working on at least these models:
21
22- KuroBox or LinkStation with a popular U-Boot as the replacement of
23  vendor proprietary
24
25   U-Boot 1.1.4 LiSt 2.1.0 (Sep 21 2006 - 00:22:56) LinkStation / KuroBox
26
27- Synology 101g+ with vendor custom PPCboot
28
29   PPCBoot 2.0.0 (Mar  1 2005 - 15:31:41)
30
31- D-Link DSM-G600 with heavily restricted vendor custom U-Boot
32
33   U-Boot 0.2.0 (May 26 2005 - 19:38:32)
34
35- QNAP TS-101 (V200) with vendor custom U-Boot
36
37   U-Boot 1.1.2 (Aug 28 2005 - 13:37:25) QNAP System, Inc.
38
39The standard use of altboot is to invoke it with a short script from
40U-Boot/PPCboot, where the altboot.bin image is stored in an unoccupied 128KB
41section of the target's HW NOR flash.  Combined with standard
42U-Boot/PPCboot functions, it is possible to boot a NetBSD kernel off
43it right after power-on, without the help of manual intervention.  Note
44that the original U-Boot/PPCboot still remains useful and altboot works
45as a functional extension for them.
46
47In case the firmware was crippled by the vendor so that it only boots
48Linux U-Boot images (D-Link), you can still use altboot by uploading
49altboot.img instead of the Linux kernel.
50
51Altboot hands the following bootinfo records to the NetBSD/sandpoint
52kernel.
53- processor clock tick value driving MPC8241/8245.
54- serial console selection.
55- booted kernel filename and which device it was fetched from.
56- Ethernet MAC address, if target HW lacks SEEPROM to store a unit unique
57  value.
58- product family indication.
59- preloaded kernel module names (under development).
60
61                             ### ### ###
62