diff mbox series

[U-Boot,v2] omap: Correct the fastboot product var

Message ID 20190725171153.11534-1-semen.protsenko@linaro.org
State Accepted
Commit 4347b0b0b26e41376640872650e5558fc07aea76
Delegated to: Tom Rini
Headers show
Series [U-Boot,v2] omap: Correct the fastboot product var | expand

Commit Message

Sam Protsenko July 25, 2019, 5:11 p.m. UTC
"fastboot flashall" expects "fastboot getvar product" value to be one of
values provided in android-info.txt file (in AOSP), from "require
board=" list. Before this patch, "am57xx" is returned for all AM57xx
based boards, as it's set in $board env var from SYS_BOARD in
board/ti/am57xx/Kconfig file, which is used for default implementation
of "fastboot getvar product".

In order to fix that inconsistency, let's do next:
  1. In U-Boot: override fastboot.product, reusing the value from
     $board_name
  2. In AOSP: provide values for all AM57xx boards we can use to
     device/ti/beagle_x15/board-info.txt file

This way requirements check in "fastboot flashall" will work as
expected, verifying that user tries to flash images to the board which
those images were built for.

Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org>
---
Changes in v2:
  - reuse the value from $board_name instead of hard-coding it to
    "beagle_x15board" (corresponding changes will be done in AOSP)

 arch/arm/mach-omap2/utils.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

Comments

Andrew Davis July 25, 2019, 5:17 p.m. UTC | #1
On 7/25/19 1:11 PM, Sam Protsenko wrote:
> "fastboot flashall" expects "fastboot getvar product" value to be one of
> values provided in android-info.txt file (in AOSP), from "require
> board=" list. Before this patch, "am57xx" is returned for all AM57xx
> based boards, as it's set in $board env var from SYS_BOARD in
> board/ti/am57xx/Kconfig file, which is used for default implementation
> of "fastboot getvar product".
> 
> In order to fix that inconsistency, let's do next:
>   1. In U-Boot: override fastboot.product, reusing the value from
>      $board_name
>   2. In AOSP: provide values for all AM57xx boards we can use to
>      device/ti/beagle_x15/board-info.txt file
> 
> This way requirements check in "fastboot flashall" will work as
> expected, verifying that user tries to flash images to the board which
> those images were built for.
> 
> Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org>
> ---

Much cleaner like this, thanks,

Acked-by: Andrew F. Davis <afd@ti.com>

> Changes in v2:
>   - reuse the value from $board_name instead of hard-coding it to
>     "beagle_x15board" (corresponding changes will be done in AOSP)
> 
>  arch/arm/mach-omap2/utils.c | 13 +++++++++++++
>  1 file changed, 13 insertions(+)
> 
> diff --git a/arch/arm/mach-omap2/utils.c b/arch/arm/mach-omap2/utils.c
> index edf5edcb68..7d01446940 100644
> --- a/arch/arm/mach-omap2/utils.c
> +++ b/arch/arm/mach-omap2/utils.c
> @@ -129,12 +129,25 @@ static inline void omap_set_fastboot_userdata_size(void)
>  {
>  }
>  #endif /* CONFIG_FASTBOOT_FLASH_MMC */
> +
> +static void omap_set_fastboot_product(void)
> +{
> +	const char *board_name;
> +
> +	board_name = env_get("board_name");
> +	if (board_name == NULL)
> +		printf("Warning: fastboot.product: unknown board\n");
> +
> +	env_set("fastboot.product", board_name);
> +}
> +
>  void omap_set_fastboot_vars(void)
>  {
>  	omap_set_fastboot_cpu();
>  	omap_set_fastboot_secure();
>  	omap_set_fastboot_board_rev();
>  	omap_set_fastboot_userdata_size();
> +	omap_set_fastboot_product();
>  }
>  #endif /* CONFIG_FASTBOOT_FLASH */
>  
>
Tom Rini Aug. 1, 2019, 3:35 a.m. UTC | #2
On Thu, Jul 25, 2019 at 08:11:53PM +0300, Sam Protsenko wrote:

> "fastboot flashall" expects "fastboot getvar product" value to be one of
> values provided in android-info.txt file (in AOSP), from "require
> board=" list. Before this patch, "am57xx" is returned for all AM57xx
> based boards, as it's set in $board env var from SYS_BOARD in
> board/ti/am57xx/Kconfig file, which is used for default implementation
> of "fastboot getvar product".
> 
> In order to fix that inconsistency, let's do next:
>   1. In U-Boot: override fastboot.product, reusing the value from
>      $board_name
>   2. In AOSP: provide values for all AM57xx boards we can use to
>      device/ti/beagle_x15/board-info.txt file
> 
> This way requirements check in "fastboot flashall" will work as
> expected, verifying that user tries to flash images to the board which
> those images were built for.
> 
> Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org>
> Acked-by: Andrew F. Davis <afd@ti.com>

Applied to u-boot/master, thanks!
diff mbox series

Patch

diff --git a/arch/arm/mach-omap2/utils.c b/arch/arm/mach-omap2/utils.c
index edf5edcb68..7d01446940 100644
--- a/arch/arm/mach-omap2/utils.c
+++ b/arch/arm/mach-omap2/utils.c
@@ -129,12 +129,25 @@  static inline void omap_set_fastboot_userdata_size(void)
 {
 }
 #endif /* CONFIG_FASTBOOT_FLASH_MMC */
+
+static void omap_set_fastboot_product(void)
+{
+	const char *board_name;
+
+	board_name = env_get("board_name");
+	if (board_name == NULL)
+		printf("Warning: fastboot.product: unknown board\n");
+
+	env_set("fastboot.product", board_name);
+}
+
 void omap_set_fastboot_vars(void)
 {
 	omap_set_fastboot_cpu();
 	omap_set_fastboot_secure();
 	omap_set_fastboot_board_rev();
 	omap_set_fastboot_userdata_size();
+	omap_set_fastboot_product();
 }
 #endif /* CONFIG_FASTBOOT_FLASH */