Every computer needs a bootloader. While on normal x86 platforms this is handled by the BIOS on other platforms like ARM/XScale a different bootloader has to be used; in case of the NA-1400 RedBoot is used. This page lists specific information regarding the use of RedBoot on the Newisys NA-1400.
The main responsiblity of the bootloader is to load, unpack and run the Linux kernel. It also provides means to boot from a remote computer (via e.g. a serial port or network connection) and, in case of a corrupted Linux installation, it allowes to update the flash contents.
Online documentation regarding RedBoot can be found here: RedBoot Users Guide.
Access to Redboot is gained by pressing control-C (^C) in a serial port terminal session when Redboot is about to execute the boot script (which will start the Linux kernel). Below is the boot process ending when commandline access is gained:
***###+DRAM: OK
+
***###+PIC: OK
***###+FLASH: OK
i82541er_init: RedBoot MAC Address = A0 83 00 00 48 BE
i82541er_init: read from config: ok
Can't get BOOTP info, using default IP address
Ethernet eth0: MAC address 00:09:3d:14:83:5f
IP: 127.0.0.0/255.255.255.0, Gateway: 0.0.0.0
Default server: 0.0.0.0, DNS server IP: 0.0.0.0
usb_ohci: Did not find device
***###+SATA: OK
RedBoot(tm) bootstrap and debug environment [ROM]
Intel IOP RedBoot modfied by AppianceWare for Sanmina release
version 2.1-IOP-RedBoot-ApplianceWare-Sanmina
built 19:07:50, Dec 14 2005
Platform: Sanmina (XScale)
Copyright (C) 2000, 2001, 2002, Red Hat, Inc.
RAM: 0x00000000-0x10000000, 0x00033168-0x0ffd1000 available
FLASH: 0xf0000000 - 0xf1000000, 128 blocks of 0x00020000 bytes each.
== Executing boot script in 3.000 seconds - enter ^C to abort
^C
RedBoot>
Below is the layout of the flash disk as seen by Redboot:
RedBoot> fis list Name FLASH addr Mem addr Length Entry point RedBoot 0xF0000000 0xF0000000 0x00040000 0x00000000 RedBoot config 0xF0FC0000 0xF0FC0000 0x00001000 0x00000000 FIS directory 0xF0FE0000 0xF0FE0000 0x00020000 0x00000000 initrd 0xF0040000 0x02000000 0x004E0000 0x02000000 kernel 0xF0520000 0x01008000 0x00180000 0x01008000