https://bugzilla.redhat.com/show_bug.cgi?id=1835452
--- Comment #9 from Alaa Hleihel (Mellanox) ahleihel@redhat.com --- I ran some tests, it seems OK:
[root@dhcp19-243-132 ~]# rpm -qf `which mlxbf-bootctl` mlxbf-bootctl-1.1-5.el8.aarch64 [root@dhcp19-243-132 ~]# [root@dhcp19-243-132 ~]# mlxbf-bootctl --help syntax: mlxbf-bootctl [--help|-h] [--swap|-s] [--device|-d MMCFILE] [--output|-o OUTPUT] [--read|-r INPUT] [--bootstream|-b BFBFILE] [--overwrite-current] [--watchdog-swap interval | --nowatchdog-swap]
[root@dhcp19-243-132 ~]# modprobe -rv mlxbf_bootctl rmmod mlxbf_bootctl [root@dhcp19-243-132 ~]# mlxbf-bootctl primary: /dev/mmcblk0boot0 backup: /dev/mmcblk0boot1 boot-bus-width: x8 reset to x1 after reboot: FALSE post_reset_wdog: No such file or directory [root@dhcp19-243-132 ~]# echo $? 1 [root@dhcp19-243-132 ~]# modprobe -v mlxbf_bootctl insmod /lib/modules/4.18.0-215.el8.aarch64/kernel/drivers/platform/mellanox/mlxbf-bootctl.ko.xz [root@dhcp19-243-132 ~]# mlxbf-bootctl primary: /dev/mmcblk0boot0 backup: /dev/mmcblk0boot1 boot-bus-width: x8 reset to x1 after reboot: FALSE watchdog-swap: disabled lifecycle state: GA Non-Secured secure boot key free slots: 4 [root@dhcp19-243-132 ~]# echo $? 0 [root@dhcp19-243-132 ~]#
Reading and writing boot partitions:
[root@dhcp19-243-132 ~]# mlxbf-bootctl -r /dev/mmcblk0boot0 -b boot0.bfb Copy bootstream from /dev/mmcblk0boot0 to boot0.bfb [root@dhcp19-243-132 ~]# ls -lh boot0.bfb -rw-r--r--. 1 root root 2.1M Jun 18 10:49 boot0.bfb [root@dhcp19-243-132 ~]# [root@dhcp19-243-132 ~]# mlxbf-bootctl -r /dev/mmcblk0boot1 -b boot1.bfb Copy bootstream from /dev/mmcblk0boot1 to boot1.bfb [root@dhcp19-243-132 ~]# ls -lh boot1.bfb -rw-r--r--. 1 root root 1.6M Jun 18 10:59 boot1.bfb [root@dhcp19-243-132 ~]# [root@dhcp19-243-132 ~]# mlxbf-bootctl --bootstream boot0.bfb --swap --watchdog-swap 60 [root@dhcp19-243-132 ~]# reboot
enable disable watchdog-swap:
[root@dhcp19-243-132 ~]# mlxbf-bootctl primary: /dev/mmcblk0boot1 backup: /dev/mmcblk0boot0 boot-bus-width: x8 reset to x1 after reboot: FALSE watchdog-swap: disabled lifecycle state: GA Non-Secured secure boot key free slots: 4 [root@dhcp19-243-132 ~]# mlxbf-bootctl --watchdog-swap 60 [root@dhcp19-243-132 ~]# mlxbf-bootctl primary: /dev/mmcblk0boot1 backup: /dev/mmcblk0boot0 boot-bus-width: x8 reset to x1 after reboot: FALSE watchdog-swap: 60 lifecycle state: GA Non-Secured secure boot key free slots: 4 [root@dhcp19-243-132 ~]# mlxbf-bootctl --nowatchdog-swap [root@dhcp19-243-132 ~]# mlxbf-bootctl primary: /dev/mmcblk0boot1 backup: /dev/mmcblk0boot0 boot-bus-width: x8 reset to x1 after reboot: FALSE watchdog-swap: disabled lifecycle state: GA Non-Secured secure boot key free slots: 4 [root@dhcp19-243-132 ~]#