[PATCH master] fastboot: populate is-logical:$partition variable

Ahmad Fatoum a.fatoum at pengutronix.de
Tue Jul 22 07:05:34 PDT 2025


Uwe reports on IRC that fastboot tries to read some default variables
that barebox doesn't define, which triggers host-side error output:

  ERROR: fastboot: no such variable: is-logical:kernel

Flashing didn't seem impacted though.

Referring to the documentation[1], is-logical is related to a number of
commands that create/delete/resize logical partitions.

We have support for modifying partition tables in barebox, but we don't expose
it over Fastboot. Until we do, let's report all partitions as physical
partitions, which is the default value.

This issue has always existed, but only became apparent once we started
returning an error for non-existent variables.

[1]: https://android.googlesource.com/platform/system/core/+show/refs/heads/main/fastboot/README.md#237

Fixes: dd377c937f8b ("common: fastboot: send FAIL if variable does not exist")
Fixes: 3d5080aae90d ("USB: gadget: Add Android fastboot support")
Reported-by: Uwe Kleine-König <uwe at kleine-koenig.org>
Cc: Andrei Lalaev <andrey.lalaev at gmail.com>
Signed-off-by: Ahmad Fatoum <a.fatoum at pengutronix.de>
---
@Uwe, can you give this a test?
---
 common/fastboot.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/common/fastboot.c b/common/fastboot.c
index 4d16e3997279..603391de7739 100644
--- a/common/fastboot.c
+++ b/common/fastboot.c
@@ -178,6 +178,8 @@ static int fastboot_add_partition_variables(struct fastboot *fb, struct list_hea
 	fb_setvar(var, "%08zx", size);
 	var = fb_addvar(fb, list, "partition-type:%s", fentry->name);
 	fb_setvar(var, "%s", type);
+	var = fb_addvar(fb, list, "is-logical:%s", fentry->name);
+	fb_setvar(var, "%s", "no");
 
 	return ret;
 }
-- 
2.39.5




More information about the barebox mailing list