
Enable on disk capsule updates, which includes defining the firmware components (tiboot3, spl, u-boot) and enabling processing of raw capsule updates.
This is enabled for several TI SoC based platforms: AM64, AM62, AM62p, AM69, BeaglePlay, J7, and BeagleboneAI. The configs to enable this are in a single base config file. This will make it more scalable to add additional EFI capsule features (like authentication) across all TI boards that have capsules enabled.
This series also includes enabling serial flash DFU for AM62 and MMC DFU for beagleplay.
Changes from v1: - Added sysfw.itb capsule definition to beagleboneai64 - removed extra commas in structure definitions
Changes from v2: - Added documentation on OSPI flash layouts - Improved comments for capsule GUIDs definitions - Defined board unique capsule GUIDs and put definitions in board specific files - Added a Capsule Update porting section to the documentation
Changes from v3: - Added better commit messages based upon checkpatch warnings. - Remove conditional inclusion of capsule update firmware info - Converted OSPI layout diagram to svg format Link to v3: https://lore.kernel.org/r/20240419205701.163821-1-j-humphreys@ti.com
Changes from v4: - Added am69 SK board - Corrected a few spelling mistakes and clarity improvements in k3 docs section - Added CONFIG_SET_DFU_ALT_INFO guard around set_dfu_alt_info() Link to v4: https://lore.kernel.org/r/20240509164123.1753050-1-j-humphreys@ti.com
Changes from v5: - Created an EFI capsule base config for TI boards, making adding additional capsule features on TI boards more scalable. Link to v5: https://lore.kernel.org/r/20240531222118.2618041-1-j-humphreys@ti.com
Changes from v6: - Rebased on latest -next - added tags Link to v6: https://lore.kernel.org/r/20240607223858.1971290-1-j-humphreys@ti.com
Jonathan Humphreys (24): doc: uefi: capsules: Add Capsule Update porting section doc: ti: k3: Correct spelling mistakes and improve clarity configs: ti: Create base EFI capsule configs for TI K3 devices board: am64x: Define capsule update firmware info configs: am64x: Enable EFI capsule update doc: board: ti: am64x: document OSPI layout board: j721e: Define capsule update firmware info configs: j721e: Enable EFI capsule update doc: board: ti: j721e: document OSPI layout board: beagleplay: Define capsule update firmware info configs: beagleplay: Enable DFU for MMC configs: beagleplay: Enable EFI capsule update board: am62x: Define capsule update firmware info configs: am62x: Enable EFI capsule update doc: board: ti: am62x: document OSPI layout board: am62px: Define capsule update firmware info configs: am62px: Enable EFI capsule update doc: board: ti: am62px: document OSPI layout board: beagleboneai64: Define capsule update firmware info configs: beagleboneai64: Enable EFI capsule update configs: j784s4_evm: Enable serial flash DFU support board: sk-am69: Define capsule update firmware info configs: j784s4: Enable EFI capsule update doc: board: ti: j784s4: document OSPI NOR layout
board/beagle/beagleboneai64/Kconfig | 4 +- board/beagle/beagleboneai64/beagleboneai64.c | 39 + board/beagle/beagleplay/Kconfig | 4 +- board/beagle/beagleplay/beagleplay.c | 34 + board/ti/am62px/evm.c | 34 + board/ti/am62x/evm.c | 34 + board/ti/am64x/evm.c | 34 + board/ti/j721e/evm.c | 40 + board/ti/j784s4/evm.c | 34 + configs/am62px_evm_a53_defconfig | 2 + configs/am62x_beagleplay_a53_defconfig | 4 + configs/am62x_evm_a53_defconfig | 1 + configs/am64x_evm_a53_defconfig | 2 + configs/j721e_beagleboneai64_a72_defconfig | 2 + configs/j721e_evm_a72_defconfig | 2 + configs/j784s4_evm_a72_defconfig | 5 + configs/k3_efi_capsule.config | 2 + doc/board/ti/am62px_sk.rst | 24 + doc/board/ti/am62x_sk.rst | 24 + doc/board/ti/am64x_evm.rst | 24 + doc/board/ti/img/ospi_sysfw-am64.svg | 802 ++++++++++ doc/board/ti/img/ospi_sysfw.svg | 1464 ++++++++++-------- doc/board/ti/img/ospi_sysfw2.svg | 802 ++++++++++ doc/board/ti/img/ospi_sysfw3.svg | 802 ++++++++++ doc/board/ti/j721e_evm.rst | 58 +- doc/board/ti/j784s4_evm.rst | 28 + doc/board/ti/k3.rst | 10 +- doc/develop/uefi/uefi.rst | 12 + include/configs/am62px_evm.h | 24 + include/configs/am62x_evm.h | 24 + include/configs/am64x_evm.h | 24 + include/configs/beagleboneai64.h | 55 + include/configs/beagleplay.h | 41 + include/configs/j721e_evm.h | 29 + include/configs/j784s4_evm.h | 24 + 35 files changed, 3864 insertions(+), 684 deletions(-) create mode 100644 configs/k3_efi_capsule.config create mode 100644 doc/board/ti/img/ospi_sysfw-am64.svg create mode 100644 doc/board/ti/img/ospi_sysfw2.svg create mode 100644 doc/board/ti/img/ospi_sysfw3.svg create mode 100644 include/configs/beagleboneai64.h create mode 100644 include/configs/beagleplay.h