[PATCH v3 0/8] qcom: implement capsule updates
Sumit Garg
sumit.garg at linaro.org
Wed Jun 5 07:31:55 CEST 2024
Hi Caleb,
On Mon, 3 Jun 2024 at 18:19, Caleb Connolly <caleb.connolly at linaro.org> wrote:
>
> Hook up support for capsule updates loaded from disk on Qualcomm
> platforms.
>
> Most Qualcomm devices have an A/B partition layout, with most partitions
> duplicated. The metadata on which slot is active is stored in the GPT
> headers in the vendor-specific attribute bits of each partition.
It's good to see capsule updates support coming up for Qualcomm
platforms. AFAICS, with this series we only update U-Boot on the
current active partition. IOW, real A/B support is still not
supported. Do you think it is possible for U-Boot to update metadata
in GPT headers and for proprietary bootloaders to pick up the U-Boot
from the updated partition?
-Sumit
>
> Add support for reading this attributes via the disk_partition struct
> and using them to determine which boot partition U-Boot is flashed to
> and generate the appropriate DFU string.
>
> This logic is gated behind a check to ensure that U-Boot is actually
> being chainloaded and not run via some other mechanism.
>
> SCSI support for most Qualcomm platforms is not yet enabled upstream,
> but will follow in future patches.
>
> This series enables capsule updates on the RB2, however [1] is required
> for it to work properly (as otherwise MMC won't be available).
>
> [1]: https://lore.kernel.org/u-boot/20240527-b4-clk-stub-v2-0-29013855e343@linaro.org/
>
> To: Tom Rini <trini at konsulko.com>
> To: Simon Glass <sjg at chromium.org>
> To: Lukasz Majewski <lukma at denx.de>
> To: Mattijs Korpershoek <mkorpershoek at baylibre.com>
> To: Caleb Connolly <caleb.connolly at linaro.org>
> To: Neil Armstrong <neil.armstrong at linaro.org>
> To: Sumit Garg <sumit.garg at linaro.org>
> Cc: Ilias Apalodimas <ilias.apalodimas at linaro.org>
> Cc: u-boot at lists.denx.de
> Cc: u-boot-qcom at groups.io
>
> Changes in v3:
> - Address comments in scsi dfu support
> - enable CONFIG_DFU_SCSI for qcom
> - Link to v2: https://lore.kernel.org/r/20240527-b4-qcom-capsule-updates-v2-0-47583d7ad428@linaro.org
>
> Changes in v2:
> - Add qcom capsule update support patches
> - Link to v1: https://lore.kernel.org/r/20240409-b4-dfu-scsi-v1-0-3e1441a60376@linaro.org
>
> ---
> Caleb Connolly (8):
> dfu: add scsi backend
> disk: expose partition type flags
> mmc: msm_sdhci: work around a bug when writing
> mach-snapdragon: implement capsule update support
> qcom_defconfig: savedefconfig
> mach-snapdragon: use SYSRESET_PSCI
> mach-snapdragon: bump up heap size
> qcom_defconfig: enable capsule update support
>
> arch/arm/Kconfig | 2 +
> arch/arm/mach-snapdragon/Kconfig | 3 +
> arch/arm/mach-snapdragon/Makefile | 1 +
> arch/arm/mach-snapdragon/board.c | 8 +-
> arch/arm/mach-snapdragon/capsule_update.c | 147 ++++++++++
> arch/arm/mach-snapdragon/qcom-priv.h | 6 +
> configs/qcom_defconfig | 19 +-
> disk/part_efi.c | 1 +
> doc/usage/dfu.rst | 32 +++
> drivers/dfu/Kconfig | 7 +
> drivers/dfu/Makefile | 1 +
> drivers/dfu/dfu.c | 5 +-
> drivers/dfu/dfu_scsi.c | 435 ++++++++++++++++++++++++++++++
> drivers/mmc/msm_sdhci.c | 7 +
> include/configs/qcom.h | 5 +
> include/dfu.h | 26 ++
> include/part.h | 1 +
> 17 files changed, 695 insertions(+), 11 deletions(-)
> ---
> change-id: 20240523-b4-qcom-capsule-updates-ea2e4f8f0ff0
> base-commit: 5d8881a0801241d68701e8644d495f1d535506f0
>
> // Caleb (they/them)
>
More information about the U-Boot
mailing list