Home | History | Annotate | Line # | Download | only in altboot
README.altboot revision 1.1
      1 /// notes about altboot ///
      2 
      3 $NetBSD: README.altboot,v 1.1 2011/01/23 01:05:30 nisimura Exp $
      4 
      5 Altboot is a functional bridge to fill the gap between a NAS product
      6 custom bootloader and the NetBSD kernel startup environment.  Altboot
      7 irons out and rectifies erroneously configured HW by product
      8 bootloaders and prepares a sane runtime better suited for booting
      9 NetBSD 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 
     20 Altboot is known working on two models.
     21 - KuroBox with a popular U-Boot as the replacement of vendor proprietary
     22 
     23    U-Boot 1.1.4 LiSt 2.1.0 (Sep 21 2006 - 00:22:56) LinkStation / KuroBox
     24 
     25 - Synology 101g+ with vendor custom PPCboot
     26 
     27    PPCBoot 2.0.0 (Mar  1 2005 - 15:31:41)
     28 
     29 The standard use of altboot is to invoke it with a short script from
     30 U-Boot/PPCboot, where the altboot image is stored in an unoccupied 128KB
     31 section of the target's HW NOR flash.  Combined with standard
     32 U-Boot/PPCboot functions, it is possible to boot a NetBSD kernel off
     33 it right after power-on, without the help of manual intervention.  Note
     34 that the original U-Boot/PPCboot still remains useful and altboot works
     35 as a functional extension for them.
     36 
     37 Altboot hands the following bootinfo records to the NetBSD/sandpoint
     38 kernel.
     39 - processor clock tick value driving MPC8241/8245.
     40 - serial console selection.
     41 - booted kernel filename and which device it was fetched from.
     42 - Ethernet MAC address, if target HW lacks SEEPROM to store a unit unique
     43   value.
     44 - product family indication.
     45 - preloaded kernel module names (under development).
     46 
     47                              ### ### ###
     48 
     49