sonic-buildimage/platform/mellanox
Alexander Allen 29601366ee
[Mellanox] Implement auto_firmware_update platform API for to support fwutil auto-update (#7721)
Why I did it
The Mellanox platform is required to support the fwutil auto-update feature defined here

This is to allow switches, when performing SONiC upgrades to choose whether to perform firmware upgrades that may interrupt the data plane through a cold boot.

How I did it
Two methods were added to the component implementations for mellanox.

In the base Component class we add a default function that chooses to skip the installation of any firmware unless the cold boot option is provided. This is because the Mellanox platform, by default, does not support installing firmware on ONIE, the CPLD, or the BIOS "on-the-fly".

In the ComponentSSD class we add a function that behaves similarly but uses the Mellanox specific SSD firmware upgrade tool to check if the current SSD supports being upgraded on the fly in order to decide whether to skip or perform the installation.

How to verify it
Unit tests are included with this PR. These test will run on build of target sonic-mellanox.bin

You may also perform fwutil auto-update ... commands after Azure/sonic-utilities#1242 is merged in.
2021-06-16 14:55:20 -07:00
..
docker-saiserver-mlnx [supervisord]: use abspath as supervisord entrypoint (#5995) 2020-11-22 21:18:44 -08:00
docker-syncd-mlnx [Monit] Deprecate the feature of monitoring the critical processes by Monit (#7676) 2021-06-04 10:16:53 -07:00
docker-syncd-mlnx-rpc [syncd-rpc] Install Libboost Atomic 1.71, Libqtcore And Libqtnetwork (#6689) 2021-02-10 02:26:31 -08:00
hw-management [Mellanox] Add support for MSN4600 A1 system (#7732) 2021-05-27 09:52:45 -07:00
issu-version [mellanox|ffb] ISSU version check (#2437) 2019-01-17 14:41:32 -08:00
mft [Mellanox] Add MFT DKMS build support. (#5088) 2020-08-03 13:52:40 +03:00
mlnx-platform-api [Mellanox] Implement auto_firmware_update platform API for to support fwutil auto-update (#7721) 2021-06-16 14:55:20 -07:00
mlnx-sai [Mellanox] Update SAI ver. 1.19.0, SDK\FW ver. 4.4.3106\2008.3110 (#7820) 2021-06-10 14:15:55 +03:00
sdk-src [Mellanox] Adjust Makefile for SDK/python-sdk-api to support both python2 and python3 (#7848) 2021-06-15 17:54:14 +03:00
.gitignore [mellanox] build SDK driver from open source (#3580) 2019-10-08 07:57:12 -07:00
asic_table.j2 Bug fix: Support dynamic buffer calculation on ACS-MSN3420 and ACS-MSN4410 (#7113) 2021-04-07 20:33:15 +03:00
docker-saiserver-mlnx.dep [mellanox]: Add DPKG local caching support. (#4441) 2020-04-20 19:02:46 -07:00
docker-saiserver-mlnx.mk [build]: add docker-saiserver-* as stretch docker targets 2020-05-06 10:23:38 +00:00
docker-syncd-mlnx-rpc.dep [mellanox]: Add DPKG local caching support. (#4441) 2020-04-20 19:02:46 -07:00
docker-syncd-mlnx-rpc.mk [dockers] label SONiC Docker with manifest (#5939) 2021-04-26 13:51:50 -07:00
docker-syncd-mlnx.dep [build]: Fix syncd dpkg cache dependency issue (#6680) 2021-02-04 09:03:14 -08:00
docker-syncd-mlnx.mk [Mellanox] Install MFT packages on Syncd container (#7844) 2021-06-14 08:25:58 -07:00
fw.dep [mellanox]: Add DPKG local caching support. (#4441) 2020-04-20 19:02:46 -07:00
fw.mk [Mellanox] Update SAI ver. 1.19.0, SDK\FW ver. 4.4.3106\2008.3110 (#7820) 2021-06-10 14:15:55 +03:00
hw-management.dep [mellanox]: Add DPKG local caching support. (#4441) 2020-04-20 19:02:46 -07:00
hw-management.mk update hw-mgmt version to 2304 (#7725) 2021-05-27 14:17:23 +03:00
issu-version.dep [mellanox]: Add DPKG local caching support. (#4441) 2020-04-20 19:02:46 -07:00
issu-version.mk [mellanox]: Add SSD FW update tool (#4351) 2020-04-13 18:13:19 +03:00
libsaithrift-dev.dep [mellanox]: Add DPKG local caching support. (#4441) 2020-04-20 19:02:46 -07:00
libsaithrift-dev.mk [sai and sairedis] advance sairedis sub-module and upgrade to matching Broadcom SAI build (#2488) 2019-02-16 10:14:18 -08:00
mft.dep [mellanox]: Add DPKG local caching support. (#4441) 2020-04-20 19:02:46 -07:00
mft.mk [Mellanox] Update MFT to 4.16.0-105 (#7007) 2021-03-10 22:03:43 +02:00
mlnx-ffb.dep [mellanox]: Add DPKG local caching support. (#4441) 2020-04-20 19:02:46 -07:00
mlnx-ffb.mk [mellanox]: Add DPKG local caching support. (#4441) 2020-04-20 19:02:46 -07:00
mlnx-ffb.sh Update all references to new 'sonic-installer' name (#5119) 2020-08-07 08:49:39 -07:00
mlnx-fw-upgrade.j2 [Mellanox] Add hw-mgmt patch for SimX platform adaptation (#6782) 2021-02-25 12:41:29 +02:00
mlnx-onie-fw-update.dep [mellanox]: Add DPKG local caching support. (#4441) 2020-04-20 19:02:46 -07:00
mlnx-onie-fw-update.mk [mellanox]: Add DPKG local caching support. (#4441) 2020-04-20 19:02:46 -07:00
mlnx-onie-fw-update.sh [sonic-utilities] Build and install as a Python wheel package (#5409) 2020-09-20 20:16:42 -07:00
mlnx-platform-api.dep [Mellanox] Add python3 support for Mellanox platform API (#6175) 2020-12-11 10:51:31 -08:00
mlnx-platform-api.mk [Mellanox] Add python3 support for Mellanox platform API (#6175) 2020-12-11 10:51:31 -08:00
mlnx-sai.dep [mellanox]: Add DPKG local caching support. (#4441) 2020-04-20 19:02:46 -07:00
mlnx-sai.mk [Mellanox] Update SAI ver. 1.19.0, SDK\FW ver. 4.4.3106\2008.3110 (#7820) 2021-06-10 14:15:55 +03:00
mlnx-ssd-fw-update.dep [mellanox]: Add DPKG local caching support. (#4441) 2020-04-20 19:02:46 -07:00
mlnx-ssd-fw-update.mk [mellanox]: Add DPKG local caching support. (#4441) 2020-04-20 19:02:46 -07:00
mlnx-ssd-fw-update.sh [Mellanox] Add ONIE and SSD platform components. (#4758) 2020-06-15 14:25:49 +03:00
one-image.dep [mellanox]: Add DPKG local caching support. (#4441) 2020-04-20 19:02:46 -07:00
one-image.mk [mellanox]: Add SSD FW update tool (#4351) 2020-04-13 18:13:19 +03:00
peripheral_table.j2 [Dynamic buffer calc] Support dynamic buffer calculation (#6194) 2020-12-13 11:35:39 -08:00
platform.conf one image implementation (#215) 2017-01-29 11:33:33 -08:00
rules.dep [docker-ptf]: build docker ptf 2021-01-27 08:28:21 -08:00
rules.mk [docker-ptf]: build docker ptf 2021-01-27 08:28:21 -08:00
sdk.dep [nvidia/mellanox] add MLNX_SDK_DEB_VERSION to SDK packages flags list. (#7747) 2021-06-08 09:38:00 -07:00
sdk.mk [Mellanox] Update SAI ver. 1.19.0, SDK\FW ver. 4.4.3106\2008.3110 (#7820) 2021-06-10 14:15:55 +03:00