Firmware update
Updating firmware via system resources
To update the firmware, use any of the following servers: TFTP, FTP, SCP. Router firmware files obtained from the manufacturer should be allocated on the server.
The router stores two copies of the firmware. To ensure the reliability of the firmware update procedure, only the copy that was not used for the last device startup is available for the update.
When update the firmware, the router configuration is converted according to a new version.
When loading a router with an older software version than the previously loaded configuration, the configuration is not converted and is subsequently deleted.
Firmware from earlier versions can be updated using instructions in the Updating firmware via bootloader section.
To update the firmware for the device running the operating system, follow procedure described below.
- Prepare the selected server for operation. The server address must be known; also firmware distributive file should be loaded onto the server.
- The router should be prepared for operation according to the documentary requirements. Router configuration should allow for data exchange with the server via TFTP/FTP/SCP and ICMP protocols. Server's belonging to the security zones of the router must be taken into account.
- Connect to the router locally via Console port or remotely via Telnet or SSH.
Check the server availability for the router using ping command on the router. If the server is not available, check the router settings and the status of the server network interfaces. - To update the router firmware, enter the following command. Specify IP address of the server being used as <server> For updates that utilize FTP or SCP server, enter a username (<user> parameter) and a password (<password> parameter). Specify the name of the firmware file loaded onto the server as <file_name> parameter (when using SCP, the full path must be as <folder> parameter). When the command is executed, router will copy the file into its internal memory, perform data integrity check and save it into non-volatile memory.
TFTP:
esr# copy tftp://<server>:/<file_name> system:firmware
CODEFTP:
esr# copy ftp://[<user>[:<password>]@]<server>:/<file_name> system:firmware
CODESCP:
esr# copy scp://[<user>[:<password>]@]<server>://<folder>/<file_name>system:firmware
CODESFTP:
esr# copy sftp://[<user>[:<password>]@]<server>:/<file_name> system:firmware
CODEExample of updating main firmware via SCP:
esr# copy scp://adm:password123@192.168.16.168://home/tftp/firmware system:firmware
CODE To start the device with the new firmware version, switch the active image. With show bootvar command, locate the image number, containing updated firmware.
esr# show bootvar Image Version Date Status After reboot ----- -------------- -------------------- ------------ ------------ 1 1.0.7 build 141[f812808] date 18/02/2015 time Active * 16:12:54 2 1.0.7 build 141[f812808] date 18/02/2015 time Not Active 16:12:54
CODEUse the following command to select the image:
esr# boot system image-[1|2]
CODETo update the secondary bootloader (U-Boot), enter the following command: Specify IP address of the server being used as <server> parameter. For updates that utilize FTP or SCP server, enter a username (<user> parameter) and a password (<password> parameter). Specify the name of the secondary bootloader onto the server as <file_name> parameter (when using SCP, the full path must be as <folder> parameter). When the command is executed, router will copy the file into its internal memory, perform data integrity check and save it into non-volatile memory.
TFTP:
esr# copy tftp://<server>:/<file_name> system:boot-2
CODEFTP:
esr# copy ftp://<server>:/<file_name> system:boot-2
CODESCP:
esr# copy scp://[<user>[:<password>]@]<server>://<folder>/<file_name>system:boot-2
CODESFTP:
esr# copy sftp://<server>:/<file_name> system:boot-2
CODE
Updating firmware via bootloader
Router firmware may be updated via the bootloader as follows:
When U-Boot finishes the router initialization, break the device startup with the <Esc> key.
Configuring PoE... distribution 1 dest_threshold 0xa drop_timer 0x0 Configuring POE in bypass mode NAE configuration done! initializing port 0, type 2. initializing port 1, type 2. SMC Endian Test:b81fb81f nae-0, nae-1 =======Skip: Load SYS UCORE for old 8xxB1/3xxB0 revision on default. Hit any key to stop autoboot: 2
CODESpecify TFTP server address:
BRCM.XLP316Lite Rev B0.u-boot# serverip 10.100.100.1
CODEFor version 1.5 and newer:
BRCM.XLP316Lite Rev B0.u-boot# serverip 10.100.100.1
CODESpecify router IP address:
BRCM.XLP316Lite Rev B0.u-boot# ipaddr 10.100.100.2
CODEFor version 1.5 and newer:
BRCM.XLP316Lite Rev B0.u-boot# ipaddr 10.100.100.2
CODESpecify the name of the firmware file on the TFTP server:
BRCM.XLP316Lite Rev B0.u-boot# firmware_file firmware
CODEFor version 1.5 and newer:
BRCM.XLP316Lite Rev B0.u-boot# firmware_file firmware
CODEThe environment can be saved using 'saveenv' command for future updates.
Launch firmware update procedure:
BRCM.XLP316Lite Rev B0.u-boot# run tftp_update_image1 Using nae-0-3 device TFTP from server 10.100.100.1; our IP address is 10.100.100.2 Filename 'esr1000/firmware'. Load address: 0xa800000060000000 Loading: TftpStart:TftpTimeoutMsecs = 10000, TftpTimeoutCountMax = 6 ################################################################# ################################################################# ################################################################# ######################### #################################### done Bytes transferred = 64453909 (3d77d15 hex) Device 0: MT29F8G08ABBCAH4 ... is now current device NAND erase: device 0 offset 0x1440000, size 0x6400000 Bad block table found at page 262080, version 0x01 Bad block table found at page 262016, version 0x01 Erasing at 0x7800000 -- 1895825408% complete.. OK NAND write: device 0 offset 0x1440000, size 0x6400000 104857600 bytes written: OK
CODESet the downloaded firmware as an image to start the system and reboot the router:
BRCM.XLP316Lite Rev B0.u-boot# run set_bootpart_1
CODEFor version 1.5 and newer:
BRCM.XLP316Lite Rev B0.u-boot# boot_system image1 BRCM.XLP316Lite Rev B0.u-boot# reset
CODE
Secondary bootloader update (U-Boot)
Secondary bootloader initializes NAND and the router. During the update, a new file of the secondary bootloader is saved to the flash
To view the current version of the load file operating on the device, execute 'version' command in U-Boot CLI. Also, the version is displayed during the router startup:
BRCM.XLP316Lite Rev B0.u-boot# version
BRCM.XLP.U-Boot:1.1.0.47 (29/11/2016 – 19:00:24)
Firmware update procedure:
When U-Boot finishes the router initialization, break the device startup with the <Esc> key.
Configuring PoE... distribution 1 dest_threshold 0xa drop_timer 0x0 Configuring POE in bypass mode NAE configuration done! initializing port 0, type 2. initializing port 1, type 2. SMC Endian Test:b81fb81f nae-0, nae-1 =======Skip: Load SYS UCORE for old 8xxB1/3xxB0 revision on default. Hit any key to stop autoboot: 2
CODESpecify TFTP server address:
BRCM.XLP316Lite Rev B0.u-boot# setenv serverip 10.100.100.1
CODEFor version 1.5 and newer:
BRCM.XLP316Lite Rev B0.u-boot# serverip10.100.100.2
CODESpecify router IP address:
BRCM.XLP316Lite Rev B0.u-boot# setenv ipaddr 10.100.100.2
CODEFor version 1.5 and newer:
BRCM.XLP316Lite Rev B0.u-boot# ipaddr 10.100.100.2
CODESpecify the name of the bootloader file on the TFTP server:
BRCM.XLP316Lite Rev B0.u-boot# uboot_file u-boot.bin
CODEFor version 1.5 and newer:
BRCM.XLP316Lite Rev B0.u-boot# uboot_file u-boot.bin
CODEThe environment can be saved using 'saveenv' command for future updates.
Launch firmware update procedure:
BRCM.XLP316Lite Rev B0.u-boot# run upd_uboot
CODEFor version 1.5 and newer:
BRCM.XLP316LiteRevB0.u-boot# run tftp_update_uboot Using nae-1 device TFTP from server 10.100.100.1; our IP address is 10.100.100.2 Filename 'esr1000/u-boot.bin'. Load address: 0xa800000078020000 Loading: ########################################################### done Bytes transferred = 852648 (d02a8 hex) SF: Detected MX25L12805D with page size 256, total 16777216 bytes 16384 KiB MX25L12805D at 0:0 is now current device
CODEReboot the router:
BRCM.XLP316Lite Rev B0.u-boot# reset
CODE