README.altboot revision 1.1
11.1Snisimura/// notes about altboot /// 21.1Snisimura 31.1Snisimura$NetBSD: README.altboot,v 1.1 2011/01/23 01:05:30 nisimura Exp $ 41.1Snisimura 51.1SnisimuraAltboot is a functional bridge to fill the gap between a NAS product 61.1Snisimuracustom bootloader and the NetBSD kernel startup environment. Altboot 71.1Snisimurairons out and rectifies erroneously configured HW by product 81.1Snisimurabootloaders and prepares a sane runtime better suited for booting 91.1SnisimuraNetBSD kernels. 101.1Snisimura 111.1Snisimura- provides the foundation of a fast NetBSD porting cycle with functionalities 121.1Snisimura product bootloaders don't have. 131.1Snisimura- facilitates a flexible and clean NetBSD implementation tailoured 141.1Snisimura to target HW in detail, minimizing bumpy adjustments and hacks in 151.1Snisimura locore asm and machdeps in very early kernel startup stage. 161.1Snisimura- levels out differences among similar-but-not-the-same porting 171.1Snisimura targets to make it possible having common NetBSD kernels for them. 181.1Snisimura- builds and hands a bootinfo list to the NetBSD kernel. 191.1Snisimura 201.1SnisimuraAltboot is known working on two models. 211.1Snisimura- KuroBox with a popular U-Boot as the replacement of vendor proprietary 221.1Snisimura 231.1Snisimura U-Boot 1.1.4 LiSt 2.1.0 (Sep 21 2006 - 00:22:56) LinkStation / KuroBox 241.1Snisimura 251.1Snisimura- Synology 101g+ with vendor custom PPCboot 261.1Snisimura 271.1Snisimura PPCBoot 2.0.0 (Mar 1 2005 - 15:31:41) 281.1Snisimura 291.1SnisimuraThe standard use of altboot is to invoke it with a short script from 301.1SnisimuraU-Boot/PPCboot, where the altboot image is stored in an unoccupied 128KB 311.1Snisimurasection of the target's HW NOR flash. Combined with standard 321.1SnisimuraU-Boot/PPCboot functions, it is possible to boot a NetBSD kernel off 331.1Snisimurait right after power-on, without the help of manual intervention. Note 341.1Snisimurathat the original U-Boot/PPCboot still remains useful and altboot works 351.1Snisimuraas a functional extension for them. 361.1Snisimura 371.1SnisimuraAltboot hands the following bootinfo records to the NetBSD/sandpoint 381.1Snisimurakernel. 391.1Snisimura- processor clock tick value driving MPC8241/8245. 401.1Snisimura- serial console selection. 411.1Snisimura- booted kernel filename and which device it was fetched from. 421.1Snisimura- Ethernet MAC address, if target HW lacks SEEPROM to store a unit unique 431.1Snisimura value. 441.1Snisimura- product family indication. 451.1Snisimura- preloaded kernel module names (under development). 461.1Snisimura 471.1Snisimura ### ### ### 481.1Snisimura 49