This repository has been archived on 2025-03-20. You can view files and clone it, but cannot push or open issues or pull requests.
sonic-buildimage/platform
Stepan Blyshchak f908dfe919
[Mellanox] Place FW binaries under platform directory instead of squashfs (#13837)
Fixes #13568

Upgrade from old image always requires squashfs mount to get the next image FW binary. This can be avoided if we put FW binary under platform directory which is easily accessible after installation:

admin@r-spider-05:~$ ls /host/image-fw-new-loc.0-dirty-20230208.193534/platform/fw-SPC.mfa
/host/image-fw-new-loc.0-dirty-20230208.193534/platform/fw-SPC.mfa
admin@r-spider-05:~$ ls -al /tmp/image-fw-new-loc.0-dirty-20230208.193534-fs/etc/mlnx/fw-SPC.mfa
lrwxrwxrwx 1 root root 66 Feb  8 17:57 /tmp/image-fw-new-loc.0-dirty-20230208.193534-fs/etc/mlnx/fw-SPC.mfa -> /host/image-fw-new-loc.0-dirty-20230208.193534/platform/fw-SPC.mfa

- Why I did it
202211 and above uses different squashfs compression type that 201911 kernel can not handle. Therefore, we avoid mounting squashfs altogether with this change.

- How I did it
Place FW binary under /host/image-/platform/mlnx/, soft links in /etc/mlnx are created to avoid breaking existing scripts/automation.
/etc/mlnx/fw-SPCX.mfa is a soft link always pointing to the FW that should be used in current image
mlnx-fw-upgrade.sh is updated to prefer /host/image-/platform/mlnx location and fallback to /etc/mlnx in squashfs in case new location does not exist. This is necessary to do image downgrade.

- How to verify it
Upgrade from 201911 to master
master to 201911 downgrade
master -> master reboot
ONIE -> master boot (First FW burn)
Which release branch to backport (provide reason below if selected)
2023-03-06 13:36:43 +02:00
..
barefoot [Arista] Update platform library submodules (#13870) 2023-02-17 13:51:17 -08:00
broadcom [Seastone] fix dx010 qsfp eeprom data write issue (#13930) 2023-03-01 14:35:53 +08:00
cavium [infra] Support syslog rate limit configuration (#12490) 2022-12-20 10:53:58 +02:00
centec [Centec] Upgrade Centec platform containers(syncd/saiserver/syncd-rpc) to bullseye (#13375) 2023-02-06 09:26:35 -08:00
centec-arm64 [Centec] Upgrade Centec platform containers(syncd/saiserver/syncd-rpc) to bullseye (#13375) 2023-02-06 09:26:35 -08:00
checkout Platform/cisco-8000 module for sonic-buildimage (#8172) 2021-08-06 09:11:54 +08:00
components [gearbox] use credo sai v0.8.2 (#13565) 2023-02-01 23:38:17 -08:00
generic [dockers] Rename 'docker-snmp-sv2' to 'docker-snmp' (#4699) 2020-06-11 16:04:23 -07:00
innovium [devices]: Update the Wistron platform support in master branch (#12110) 2023-02-23 09:08:13 -08:00
marvell [infra] Support syslog rate limit configuration (#12490) 2022-12-20 10:53:58 +02:00
marvell-arm64 [infra] Support syslog rate limit configuration (#12490) 2022-12-20 10:53:58 +02:00
marvell-armhf [armhf][Nokia-7215]High CPU caused by entropy.py (#13694) 2023-02-09 13:29:06 -08:00
mellanox [Mellanox] Place FW binaries under platform directory instead of squashfs (#13837) 2023-03-06 13:36:43 +02:00
nephos [infra] Support syslog rate limit configuration (#12490) 2022-12-20 10:53:58 +02:00
p4 [infra] Support syslog rate limit configuration (#12490) 2022-12-20 10:53:58 +02:00
pddf [pddf]: Adding support for FPGAPCIe in PDDF (#13476) 2023-02-06 13:48:31 -08:00
s3ip-sysfs The CPLD and FPGA driver framework module complies with s3ip sysfs specification (#12891) 2022-12-16 22:05:53 +08:00
template Mount directory warmboot in docker gbsyncd (#11852) 2022-08-26 22:00:45 +08:00
vs [FRR] Switch to dplane_fpm_nl plugin instead of fpm (#12852) 2023-02-06 09:38:39 -08:00