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 70e2ea1e87
[202205][Mellanox] Place FW binaries under platform directory instead of squashfs (#13838)
Fixes #13568
Backport of #13837

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 202205
202205 to 201911 downgrade
202205 -> 202205 reboot
ONIE -> 202205 boot (First FW burn)

Signed-off-by: Stepan Blyschak <stepanb@nvidia.com>
2023-02-22 17:40:50 +02:00
..
barefoot [202205][Arista] Update platform library submodules (#13871) 2023-02-17 13:52:14 -08:00
broadcom [Nokia][sonic-platform] Update Nokia sonic-platform submodule (#13522) (#13909) 2023-02-22 07:18:09 +08:00
cavium Parallel building of sonic dockers using native dockerd(dood). (#10352) 2022-04-28 08:39:37 +08:00
centec [202205] Update Linux kernel from 5.10.103 to 5.10.140 (#12660) #12874 2022-12-01 09:25:40 -08:00
centec-arm64 [centec][arm64] fix tsingma bsp compile error (#12774) 2022-12-06 18:35:30 +08:00
checkout update cisco 8000 tag: 202205-v0.6 (#12580) 2022-11-03 08:58:07 +08:00
components [gearbox] use credo sai v0.8.2 (#13565) (#13603) 2023-02-03 05:00:30 +08:00
generic [dockers] Rename 'docker-snmp-sv2' to 'docker-snmp' (#4699) 2020-06-11 16:04:23 -07:00
innovium [innovium]: Enable syncd container autorestart for Innovium platforms (#11497) 2022-09-21 21:10:23 +00:00
marvell [202205][BRCM_SAI] update Brcm SAI dependencies (#11173) 2022-06-17 05:02:00 -07:00
marvell-arm64 Support symcrypt fips config for aboot/uboot (#10729) 2022-06-05 15:20:20 +00:00
marvell-armhf add sfp get error description (#13275) (#13746) 2023-02-10 14:37:32 -08:00
mellanox [202205][Mellanox] Place FW binaries under platform directory instead of squashfs (#13838) 2023-02-22 17:40:50 +02:00
nephos Parallel building of sonic dockers using native dockerd(dood). (#10352) 2022-04-28 08:39:37 +08:00
p4 Parallel building of sonic dockers using native dockerd(dood). (#10352) 2022-04-28 08:39:37 +08:00
pddf Fix for Accton platform build failure when doing incremental build (#10541) 2022-05-09 12:17:38 -07:00
template Mount directory warmboot in docker gbsyncd (#11852) 2022-08-27 16:16:17 +00:00
vs [sai-ptf]Fix sai ptf issue (#12723) 2022-11-16 20:28:30 -08:00