Provided by: upslug2_11-5_amd64 bug


       upslug2 - utility to upgrade the firmware of a NSLU2 via the network


       upslug2 [options]


       upslug2  is a command line program intended to allow the upgrade the firmware of a Linksys
       NSLU2 (Network Storage Link for USB 2.0 Disk Drives) to new or different versions.  When a
       NSLU2  in the local network is put in upgrade mode, upslug2 can connect to it and upload a
       new firmware.

       upslug2 will accept a full  firmware  image  but  it  can  also  upgrade  the  flash  from
       individual files holding the kernel, ramdisk and root filesystem.  upslug2 provides status
       information during the upgrade process and verifies the written image after the upgrade.


       -C, --Complete-reprogram
              Reprogram the complete flash, including the RedBoot boot  loader  and  the  SysConf
              partition  holding  configuration information.  Using this option may result in the
              NSLU2 becoming permanently unusable!  By default, upslug2 will not touch these  two
              partitions  since  this allows flashing a new firmware if an uploaded firmware does
              not work.  This is not possible if RedBoot itself is damaged.  Use with caution.

       -d, --device
              The network device on the host machine connected to the network on which the  NSLU2
              is located. (Default: eth0).

       -e, --endian
              The  endianness  of  the  files  to be uploaded.  upslug2 will usually detected the
              endianness automatically but this option can be used  to  force  byte  swapping  to
              occur.  This option accepts three values, separated by comma: endianness of kernel,
              data and RedBoot FIS directory.  Valid values are l (little endian), p (pdp endian)
              and b (big endian). (Default: ,b,b)

       -f, --from
              The MAC address of the host system.

       -h, --help
              Show summary of options.

       -i, --image
              The complete flash image to use.

       -j, --rootfs
              A root filesystem, usually of type jffs.

       -k, --kernel
              A compressed kernel zImage image.

       -n, --no-reboot
              Do not reboot after upgrade

       -p, --payload
              FIS  directory  payload.  There are about 140 Kb in the last block (between the FIS
              dir and the trailer at the end) which can be used for data.

       -r, --ramdisk
              A compressed ramdisk image.

       -R, --ram-payload
              A ram paylod (replaced ramdisk).  (FIXME: if it replaced the  ramdisk,  why  cannot
              you just use the -r option?  What's the difference)

       -t, --target
              The  MAC  address  of the NSLU2 to upgrade.  Without this option, upslug2 will only
              perform an upgrade if there is just one NSLU2 in upgrade mode.

       -U, --no-verify
              Do not verify the image, only upgrade.

       -v, --verify
              Do not write to flash, only verify the image.

   Options to specify firmware information
       The following options should be used when individual kernel, ramdisk and  root  filesystem
       files are specified rather than a complete firmware image.

       -E, --extra-version
              Extra version information, a 2 byte value. (Default: 0x90f7)

       -F, --firmware-version
              The firmware version, a 2 byte value. (Default: 0x2329)

       -P, --product-id
              The product ID, a 2 byte value. (Default: 1)

       -T, --protocol-id
              The protocol ID, a 2 byte value. (Default: 0)


       In order to use upslug2 the NSLU2 which is to be upgraded has to be put in upgrade mode:

       1. Disconnect any disks and/or devices from the USB ports.

       2. Power off the NSLU2

       3.  Press  and  hold  the reset button (accessible through the small hole on the back just
       above the power input).

       4. Press and release the power button to power on the NSLU2.

       5. Wait for 10 seconds watching the ready/status LED. After 10 seconds it will change from
       amber to red. Immediately release the reset button.

       6.  The NSLU2 ready/status LED will flash alternately red/green (there is a 1 second delay
       before the first green). The NSLU2 is now in upgrade mode.

       If you decide not to flash the image the NSLU2 can be rebooted by disconnecting the power.
       If the ready/status LED does not turn green after step four it will remain red for several
       seconds then flash amber. This happens if you do not release the reset button  in  time  -
       pull the power, reconnect it and repeat from the second step.

       Once  the  NSLU2 is in upgrade mode it will remain in this state until either the power is
       connected or a new image has been flashed. If the flash fails the NSLU2 will  (eventually)
       return to upgrade mode


       The most common use of upslug2 is the following:
              upslug2 --image NSLU2_V23R63.bin
       This specifies a complete firmware image which will be written to flash.

       Alternatively, kernel, ramdisk and root filesystem can be specified individually:
              upslug2 -k nslu2-zImage -r ramdisk -j root.jffs
       In this case, the options -E, -F, -P and -T should typically be specified as well.

       By  default,  upslug2  will  search  for  the  NSLU2  on  the network on your eth0 network
       interface.  If the network is on a different interface, you can easily specify it:
              upslug2 -d eth1 --image NSLU2_V23R63.bin

       If there are potentially more than one NSLU2 in your network which may be in upgrade mode,
       you can specify its MAC address:
              upslug2 -t 00:11:85:12:34:56 --image NSLU2_V23R63.bin




       John Bowler <>

                                           January 2006                                UPSLUG2(8)