First version of how to support both updates of the bmc and the cec in NVIDIA Bluefields.
get_fw_facts now returns a dictionary of facts, rather than individual get_xxxx facts
in bmc_fw_update, no need to get original fw (not used anywhere?), and passing the target fw as a string, rather than using filename. There's no real mapping between filenames and versions returned by the bmc
allow call multiple times in meta/main.yml
a sample update_fw.yml at the top shows how the bmc_fw_update can be called twice, and which vars to pass in each instance. There's a sample cmd line invocation at the top
this file also shows how to check the update was successful after doing a power cycle of the server. Checks immediately after the update might be meaningless.
This update_fw.yml is Bluefield specific. It can be removed, but I am not sure how to document/explain the whole flow to the customers without it. It can also be adapted to fit customers needs. I see it more as part of documentation on how to use, rather than a strong role dependency.
First version of how to support both updates of the bmc and the cec in NVIDIA Bluefields.