Bootstrapping over the network

This section describes a bootstrapping procedure to get the Linux bootstrap loader and kernel programmed into the flash.  It requires you to have a dial-up internet connection.

  1. Set up the webpal parameters to match those of your ISP.    I had to set up the phone number, the user name, password, and DNS settings.  The DNS settings are on the Advanced page.

  2. Connect to the internet.    Since the default home page is now owned by some DNS name holder, it takes a while to load that page, so try and abort it before it gets done downloading it.    It will finally display, but it takes a long time.

  3. Use the GOTO option to connect to:  http://webpal.bigbrd.com/linuxpgm.erx.     Follow the instructions as it proceeds -- you'll get asked a couple of times to confirm.   One of the confirms is a little tricky since the display gets garbled, but I think just hitting carriage return will work.    The following steps will occur:

    1. The erx file is downloaded into the memory of the Webpal.

    2. After a confirm, the Webpal will program the ERX file into flash.

    3. After a confirm, the Webpal will restart running the new image.  It will copy itself to memory and reprogram the flash with the bootstrap, params file, and a Linux kernel image.   The erasing step takes some time, so be patient.

    4. The system will ask you to power cycle.    After you do, you should see the bootstrap loader messages, followed by Linux loading.   Since there is no root partition, the Linux booting process will abort when it gets to the point where it needs a root file system.    You'll have to supply one: either on a hard disk or compact flash or on the root partition of the flash.    The main page discusses the options.

Using the flash programmer in the bootstrap loader

Now that you have bootp programmed in the flash, you will use it's programmer.    By default, it assumes that you will be using a parallel port via a parallel Laplink cable.    You'll need the "ppdev" driver installed on your development Linux system.    If it isn't already loaded, typing the following will get it loaded:

modprobe ppdev

Then run wpflash as follows:
wpflash -p <read/write/erase> <partition-name> <filename>
After you run the command, reboot or power cycle your system.    Sometimes, synchronization using the parallel port will fail.   If this happens to you, hold down the reset button, run the wpflash command, and then release the reset button.

If you'd rather use the serial port for programming, then run the wpflash flash command without the -p or -nowait flags:
wpflash <read/write/erase> <partition-name> <filename>
After you run the command, hold down the SW2 switch and the reboot the system.    Holding down SW2 tells the system to use alternate device, in this case, the serial port, for booting messages and programming.    If you want to the serial port to be the default device for booting messages and programming, add the following line to your parameters file:
serialbootp=1    

Updated: March 4 2005