On 6/27/24 10:37 AM, Simon Glass wrote: Hi,
/* Make room in FDT for changes from the overlay */ ret = fdt_increase_size(spl_image->fdt_addr, - image_info.size); + image_info.size + strlen(str));You may also need space for the string terminator (i.e. add 1 more byte).
Fixed in V2 with expanded comment, thanks.
if (ret < 0) break; @@ -464,6 +465,26 @@ static int spl_fit_append_fdt(struct spl_image_info *spl_image, debug("%s: DT overlay %s applied\n", __func__, fit_get_name(ctx->fit, node, NULL)); + + /* + * Insert /u-boot,<dto-name> = <index> property into + * the U-Boot control DT. This can be used by user + * to inspect which DTOs got applied by the SPL from + * a running U-Boot. + */ + snprintf(dtoname, sizeof(dtoname), "u-boot,%s", str); + ret = fdt_setprop_u32(spl_image->fdt_addr, 0, dtoname, + index); + if (!ret) {This means there was no error, right?
Yes, this should be inverted, thanks.
+ /* + * The DTO itself was applied, do not treat the + * insertion of /u-boot,<dto-name> as an error + * so the system can possibly boot somehow. + */ + debug("%s: DT overlay %s name not inserted into / node (%d)\n", + __func__, + fit_get_name(ctx->fit, node, NULL), ret); + }log_debug()
The whole file uses debug(), so let's keep it consistent. Thanks !

