public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Mattijs Korpershoek <mkorpershoek@kernel.org>
To: Heiko Schocher <hs@nabladev.com>,
	U-Boot Mailing List <u-boot@lists.denx.de>
Cc: Heiko Schocher <hs@nabladev.com>,
	Adrian Freihofer <adrian.freihofer@siemens.com>,
	Dmitrii Merkurev <dimorinny@google.com>,
	Fabio Estevam <festevam@gmail.com>,
	Marek Vasut <marek.vasut+renesas@mailbox.org>,
	"NXP i.MX U-Boot Team" <uboot-imx@nxp.com>,
	Neil Armstrong <neil.armstrong@linaro.org>,
	Stefano Babic <sbabic@nabladev.com>,
	Tom Rini <trini@konsulko.com>
Subject: Re: [PATCH v1 0/2] fastboot: mmc: fix bootloader offset
Date: Mon, 26 Jan 2026 10:48:06 +0100	[thread overview]
Message-ID: <87y0lkogbt.fsf@kernel.org> (raw)
In-Reply-To: <20260124054712.7939-1-hs@nabladev.com>

Hi Heiko,

Thank you for the patch.

On Sat, Jan 24, 2026 at 06:47, Heiko Schocher <hs@nabladev.com> wrote:

> Not for all SoCs the bootloader start at offset 0x0,
> in a hardware partition of an emmc. So we need the possibility to
> set the correct offset, where bootloader starts.
>
> Example:
>
> imx8qxp revision C0 emmc Partition layout
>
> | eMMC block / partition | Offset     | Size  | Purpose                        |
> | ---------------------- | ---------- | ----- | ------------------------------ |
> | /dev/mmcblk0boot0      | 0x0        | 2MB   | imx-boot-container A           |
> |                        | 0x00220000 | 128kB | secure boot signature rootfs A |
> | /dev/mmcblk0boot1      | 0x0        | 2MB   | imx-boot-container B           |
> |                        | 0x00200000 | 8kB   | U-Boot env 0                   |
> |                        | 0x00202000 | 8kB   | U-Boot env 1                   |
> |                        | 0x00220000 | 128kB | secure boot signature rootfs B |
>
> imx8qxp rev B0 emmc Partition layout
>
> | eMMC block / partition | Offset     | Size  | Purpose                        |
> | ---------------------- | ---------- | ----- | ------------------------------ |
> | /dev/mmcblk0boot0      | 0x00008000 | 2MB   | imx-boot-container A           |
> |                        | 0x00220000 | 128kB | secure boot signature rootfs A |
> | /dev/mmcblk0boot1      | 0x0        | 8kB   | U-Boot env 0                   |
> |                        | 0x00002000 | 8kB   | U-Boot env 1                   |
> |                        | 0x00008000 | 2MB   | imx-boot-container B           |
>

Why can't we use raw partition descriptors for this?

See:
https://docs.u-boot.org/en/latest/android/fastboot.html#raw-partition-descriptors

> If we flash now the bootloader image flash.bin on a B0 revision with
>
> uuu FB: flash bootloader flash.bin
>
> we overwrite the environment and board does not boot at all, as offset
> is wrong.
>
> To prevent any API change in the above command we propose
> the following implementation from this series:
>
> We add a new weak function fb_mmc_get_boot_offset() in drivers/fastboot/fb_block.c
> which returns 0 and call this function instead of passing 0 for
> the offset where offset is used/passed.
>
> In SoC specific code (currently for IMX8QXP only) we implement this function
> that it returns on B0 SoCs the 32k offset and on other SoC revisions the
> offset 0.
>
> This is tested on B0 and C0 based boards from siemens.
>
> This patch should have no effect for other SoCs.
>
>
> Adrian Freihofer (2):
>   fastboot: mmc: make boot partition offset configurable
>   arch: imx8qxp: Override weak fb_mmc_get_boot_offset function
>
>  arch/arm/mach-imx/imx8/cpu.c | 21 +++++++++++++++++++++
>  drivers/fastboot/fb_block.c  | 15 +++++++++++----
>  2 files changed, 32 insertions(+), 4 deletions(-)
>
> Azure build (series is in a bunch of siemens patches sending
> now to mainline):
> https://dev.azure.com/hs0298/hs/_build/results?buildId=202&view=results
>
>
> -- 
> 2.20.1
>
> base-commit: 547e4ff610d72169a2a8c72ffe9741046abd1b2e

  parent reply	other threads:[~2026-01-26  9:48 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-01-24  5:47 [PATCH v1 0/2] fastboot: mmc: fix bootloader offset Heiko Schocher
2026-01-24  5:47 ` [PATCH v1 1/2] fastboot: mmc: make boot partition offset configurable Heiko Schocher
2026-01-26  1:41   ` Peng Fan
2026-02-06 10:20   ` Mattijs Korpershoek
2026-01-24  5:47 ` [PATCH v1 2/2] arch: imx8qxp: Override weak fb_mmc_get_boot_offset function Heiko Schocher
2026-01-26  1:44   ` Peng Fan
2026-02-06 10:24   ` Mattijs Korpershoek
2026-01-26  9:48 ` Mattijs Korpershoek [this message]
2026-01-26 15:46   ` [PATCH v1 0/2] fastboot: mmc: fix bootloader offset Heiko Schocher
2026-01-29 10:09     ` Mattijs Korpershoek
2026-01-29 10:41       ` Heiko Schocher
2026-01-29 14:09         ` Mattijs Korpershoek
2026-01-30 16:35           ` Mattijs Korpershoek
2026-02-02  5:12             ` Heiko Schocher
2026-02-02  9:34               ` Mattijs Korpershoek

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87y0lkogbt.fsf@kernel.org \
    --to=mkorpershoek@kernel.org \
    --cc=adrian.freihofer@siemens.com \
    --cc=dimorinny@google.com \
    --cc=festevam@gmail.com \
    --cc=hs@nabladev.com \
    --cc=marek.vasut+renesas@mailbox.org \
    --cc=neil.armstrong@linaro.org \
    --cc=sbabic@nabladev.com \
    --cc=trini@konsulko.com \
    --cc=u-boot@lists.denx.de \
    --cc=uboot-imx@nxp.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox