Hi,
I sent the last patchset of Marvell Armada 70x0 support. It is v2 of the firmware update shell command (v1 was in the very first big patchset of basic support). After long discussions, executing external shell commands was removed, as it's not proper (nor supported) solution in EDK2.
Command's code was cleaned-up and massively reworked in order to be independent from tftp and sf commands. Now 'fupdate' command performs updating firmware from file placed on local filesystem. It consumes MARVELL_SPI_FLASH_PROTOCOL and MARVELL_SPI_MASTER_PROTOCOL in order to handle SPI transfer of the image. Command also verifies image data correctness before burning to flash.
The code can be also found in github: https://github.com/MarvellEmbeddedProcessors/edk2-open-platform/commits/opp-...
Any comments or remarks would be welcome.
Best regards, Marcin
Changelog: v1 -> v2
* Remove executing external shell commands from commandline - now only local files can be burnt to flash * Add MARVELL_SPI_FLASH_PROTOCOL and MARVELL_SPI_MASTER_PROTOCOL usage * In order to be standalone command, enable detecting and configuring SPI flash * Style cleanup and new comments
Jan Dąbroś (2): Applications/FirmwareUpdate: Add 'fupdate' comand to shell Platforms/Marvell: Enable 'fupdate' command on Armada70x0 platform
Applications/FirmwareUpdate/FUpdate.c | 430 ++++++++++++++++++++++++++++++++ Applications/FirmwareUpdate/FUpdate.inf | 75 ++++++ Applications/FirmwareUpdate/FUpdate.uni | Bin 0 -> 5838 bytes Platforms/Marvell/Armada/Armada.dsc.inc | 1 + Platforms/Marvell/Marvell.dec | 1 + 5 files changed, 507 insertions(+) create mode 100644 Applications/FirmwareUpdate/FUpdate.c create mode 100644 Applications/FirmwareUpdate/FUpdate.inf create mode 100644 Applications/FirmwareUpdate/FUpdate.uni