sonic-buildimage/platform
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
..
barefoot [barefoot][platform] Chassis.get_reboot_cause (#7794) 2021-06-11 13:30:03 -07:00
broadcom [brcm sai] BRCM SAI 5.0.0.1 (#7753) 2021-06-13 17:00:58 -07:00
cavium [Monit] Deprecate the feature of monitoring the critical processes by Monit (#7676) 2021-06-04 10:16:53 -07:00
centec [Monit] Deprecate the feature of monitoring the critical processes by Monit (#7676) 2021-06-04 10:16:53 -07:00
centec-arm64 [Centec][arm64] support new board E530-48s4x and E530-24x2q (#7189) 2021-05-01 10:37:07 -07:00
generic [dockers] Rename 'docker-snmp-sv2' to 'docker-snmp' (#4699) 2020-06-11 16:04:23 -07:00
innovium [dockers] label SONiC Docker with manifest (#5939) 2021-04-26 13:51:50 -07:00
marvell [Monit] Deprecate the feature of monitoring the critical processes by Monit (#7676) 2021-06-04 10:16:53 -07:00
marvell-arm64 [Monit] Deprecate the feature of monitoring the critical processes by Monit (#7676) 2021-06-04 10:16:53 -07:00
marvell-armhf [Marvell] Updated Marvell armhf sai deb version to 1.8.1 (#7892) 2021-06-16 08:53:30 -07:00
mellanox [Mellanox] Implement auto_firmware_update platform API for to support fwutil auto-update (#7721) 2021-06-16 14:55:20 -07:00
nephos [Monit] Deprecate the feature of monitoring the critical processes by Monit (#7676) 2021-06-04 10:16:53 -07:00
p4 Add support to start fdbsyncd when orchagent docker starts (#5979) 2020-12-24 18:36:01 -08:00
pddf Invoking python3 installation for PDDF 2.0 PAI package (#7100) 2021-04-08 08:21:17 -07:00
template Add gearbox phy device files and a new physyncd docker to support VS gearbox phy feature (#4851) 2020-09-25 08:32:44 -07:00
vs Revert "Remove quagga related code (#7476)" (#7831) 2021-06-09 18:52:45 -07:00