e8418fd2da
Why I did it Requirements from Microsoft for fwutil update all state that all firmwares which support this upgrade flow must support upgrade within a single boot cycle. This conflicted with a number of Mellanox upgrade flows which have been revised to safely meet this requirement. How I did it Added --no-power-cycle flags to SSD and ONIE firmware scripts Modified Platform API to call firmware upgrade flows with this new flag during fwutil update all Added a script to our reboot plugin to handle installing firmwares in the correct order with prior to reboot How to verify it Populate platform_components.json with firmware for CPLD / BIOS / ONIE / SSD Execute fwutil update all fw --boot cold CPLD will burn / ONIE and BIOS images will stage / SSD will schedule for reboot Reboot the switch SSD will install / CPLD will refresh / switch will power cycle into ONIE ONIE installer will upgrade ONIE and BIOS / switch will reboot back into SONiC In SONiC run fwutil show status to check that all firmware upgrades were successful |
||
---|---|---|
.. | ||
__init__.py | ||
conftest.py | ||
duplicate_action.json | ||
duplicate_condition.json | ||
empty_action.json | ||
empty_condition.json | ||
mock_eeprom_data | ||
mock_platform.py | ||
mock_psu_vpd | ||
policy_with_same_conditions.json | ||
test_chassis.py | ||
test_eeprom.py | ||
test_fan_api.py | ||
test_firmware.py | ||
test_led.py | ||
test_module.py | ||
test_psu.py | ||
test_sfp_event.py | ||
test_sfp.py | ||
test_thermal_policy.py | ||
test_thermal.py | ||
test_utils.py | ||
thermal_policy.json |