You may find it necessary to update the CPLD firmware on your Cumulus Linux switch. Follow these steps to do so.
{{table_of_contents}}
Prerequisites
- The CPLD firmware updater file. Your switch vendor can provide this file. If you are using a Cumulus Express switch, open a support ticket to get this file from Cumulus Networks.
- ONIE version 2016.08 or later, since this is the first version to include the
onie-fwpkg
utility. If your switch is running an older version, you must upgrade ONIE.
You can determine the ONIE version by running/usr/lib/cumulus/onie/onie-version
:cumulus@switch:~$ sudo /usr/lib/cumulus/onie/onie-version ONIE version : 2018.08 ONIE vendor_id : 674 ONIE build_machine : dell_s6000_s1220 ONIE machine_rev : 0 ONIE arch : x86_64 ONIE build_platform : x86_64-dell_s6000_s1220-r0 ONIE config_version : 1 ONIE build_date : 2018-08-13T23:25-0700 ONIE partition_type : gpt ONIE kernel_version : 3.2.69 ONIE firmware : bios ONIE switch_asic : bcm ONIE skip_ethmgmt_macs: no
Upgrading the CPLD Firmware
To upgrade the switch CPLD firmware, use the onie-fwpkg
command in Cumulus Linux. Follow these steps:
- Initialize the CPLD firmware upgrade using
onie-fwpkg
; you need to explicitly specify the full path to the command:
cumulus@switch:~$ sudo /usr/lib/cumulus/onie/onie-fwpkg add <filename.updater>
- Validate that the CPLD updater was staged:
cumulus@switch:~$ sudo /usr/lib/cumulus/onie/onie-fwpkg show
- Update ONIE using self update mode. The update occurs when the switch is rebooted:
cumulus@switch:~$ sudo onie-select -pf
- Reboot the switch to initiate the upgrade:
cumulus@switch:~$ sudo reboot
For example:
cumulus@switch:~$ sudo /usr/lib/cumulus/onie/onie-fwpkg add AS5x12-54X_ES5654BT_V966_20180125.jbc.updater
Staging firmware update: AS5x12-54X_ES5654BT_V966_20180125.jbc.updater
cumulus@switch:~$ sudo /usr/lib/cumulus/onie/onie-fwpkg show
** Pending firmware update information:
Name | Version | Attempts |Size (Bytes) | Date
==============================================+===============+==========+==============+====================
AS5x12-54X_ES5654BT_V966_20180125.jbc.updater | "01.26.15.03" | 0 | 647824 | 2018-10-03 10:12:14
==============================================+===============+==========+==============+====================
For more detailed information run: onie-fwpkg show-pending <update_name>
** Firmware update results information:
Name | Version | Result | Date
======================================+===============+==========+====================
onie-updater | 2018.02.00.02 | Success | 2001-01-01 19:22:42
onie-updater-x86_64-accton_as5812_54x | "07.16.11.54" | Success | 2001-02-01 16:38:57
======================================+===============+==========+====================
For more detailed information run: onie-fwpkg show-results <update_name>
cumulus@switch:~$ sudo onie-select -pf
Enabling ONIE self-update mode at next reboot...done.
Reboot required to take effect.
ONIE enters updater mode and applies the waterfall search for common ONIE updater filenames on the connected filesystems. Then it executes the staged updates, which onie-fwpkg
copied to the update directory.
The example continues:
Please press Enter to activate this console. Info: eth0: Checking link... up.
Info: Trying DHCPv4 on interface: eth0
ONIE: Using DHCPv4 addr: eth0: 10.50.22.110 / 255.255.255.0
ONIE: Starting ONIE Service Discovery
Info: Attempting file://dev/sda4/onie-updater-x86_64-accton_as5812_54x-r0 ...
Info: Attempting file://dev/sda4/onie-updater-x86_64-accton_as5812_54x-r0.bin ...
Info: Attempting file://dev/sda4/onie-updater-x86_64-accton_as5812_54x ...
Info: Attempting file://dev/sda4/onie-updater-x86_64-accton_as5812_54x.bin ...
Info: Attempting file://dev/sda4/onie-updater-accton_as5812_54x ...
Info: Attempting file://dev/sda4/onie-updater-accton_as5812_54x.bin ...
Info: Attempting file://dev/sda4/onie-updater-x86_64-bcm ...
Info: Attempting file://dev/sda4/onie-updater-x86_64-bcm.bin ...
Info: Attempting file://dev/sda4/onie-updater-x86_64 ...
Info: Attempting file://dev/sda4/onie-updater-x86_64.bin ...
Info: Attempting file://dev/sda4/onie-updater ...
Info: Attempting file://dev/sda4/onie-updater.bin ...
EXT4-fs (sda3): couldn't mount as ext3 due to feature incompatibilities
Info: Attempting file://dev/sda3/onie-updater-x86_64-accton_as5812_54x-r0 ...
Info: Attempting file://dev/sda3/onie-updater-x86_64-accton_as5812_54x-r0.bin ...
Info: Attempting file://dev/sda3/onie-updater-x86_64-accton_as5812_54x ...
Info: Attempting file://dev/sda3/onie-updater-x86_64-accton_as5812_54x.bin ...
Info: Attempting file://dev/sda3/onie-updater-accton_as5812_54x ...
Info: Attempting file://dev/sda3/onie-updater-accton_as5812_54x.bin ...
Info: Attempting file://dev/sda3/onie-updater-x86_64-bcm ...
Info: Attempting file://dev/sda3/onie-updater-x86_64-bcm.bin ...
Info: Attempting file://dev/sda3/onie-updater-x86_64 ...
Info: Attempting file://dev/sda3/onie-updater-x86_64.bin ...
Info: Attempting file://dev/sda3/onie-updater ...
Info: Attempting file://dev/sda3/onie-updater.bin ...
ONIE: Executing installer: /mnt/onie-boot/onie/update/pending/AS5x12-54X_ES5654BT_V966_20180125.jbc.updater
Verifying image checksum ... OK.
Preparing image archive ... OK.
Firmware: Architecture : x86_64
Firmware: Machine : accton_as5712_54x
Firmware: Machine Rev : 0
Firmware: Type : CPLD
Firmware: Version : 01.26.15.03
Firmware: Build Date : 2018-01-26T15:03+0800
Updating CPLD firmware ...
cpld_updates: loading out-of-tree module taints kernel.
Start to cpld update
argc:5,cpld_update,-aPROGRAM,-dDO_BYPASS_UFM=1,-dDO_REAL_TIME_ISP=0Jam STAPL ByteCode Player Version 2.2
Copyright (C) 1998-2001 Altera Corporation
filename:firmware.bin, action:PROGRAM, init:DO_BYPASS_UFM=1
Initial GPIO
(main:1400) file length:92071
Device #3 Silicon ID is ALTERA04(01)
Device #2 Silicon ID is ALTERA04(01)
Device #1 Silicon ID is ALTERA04(00)
erasing MAXII device(s)...
erasing MAXII CFM block...
programming CFM block...
Comments