Update a Device

In some cases we want to replace the runtime firmware or runtime parameters stored in NVRAM. Program int6k can be used for this purpose when runtime firmware is running.

A device update may be necessary when new runtime firmware or new runtime parameters or both must be programmed into NVRAM. It is only possible when NVRAM is present and the runtime firmware is running.

int6k -i ${NIC1} -P ${PIB} -N ${NVM} -F
if [ ${?} != 0 ]; then
        exit 1
fi

The example above uses int6k to download a PIB file (-P) and NVM file (-N) then flash NVRAM (-F). Symbol NIC1 must be defined earlier in the script, perhaps in file hardware.sh. Symbols PIB and NVM must also be defined earlier in the script, perhaps in file firmware.sh.

Program int6k returns a non-zero value on error. We can check the return code and exit the script on error to avoid subsequent errors. We could, of course, suppress normal output (-q) and print our own error message using the Linux echo utility.

In some cases, you may want to preserve the current firmware on a device and update only the PIB. Program int6k can be used for this purpose, as well.

int6k -i ${NIC1} -P ${PIB} -C 2
if [ ${?} != 0 ]; then
        exit 1
fi

The example above downloads a PIB file (-P) and commits (-C) the PIB only to NVRAM. There are a variety of device flash scenarios and each requires some varation on one of the examples shown here.