From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sebastian Reichel Date: Mon, 4 Jan 2021 20:27:22 +0100 Subject: [PATCHv2 3/5] image: support board_fit_config_name_match In-Reply-To: <753713d6-db85-5a33-4b73-2d2c7075e327@denx.de> References: <20201214234157.202120-1-sebastian.reichel@collabora.com> <20201214234157.202120-4-sebastian.reichel@collabora.com> <753713d6-db85-5a33-4b73-2d2c7075e327@denx.de> Message-ID: <20210104192722.65ktgalkowbzfryr@earth.universe> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi, On Mon, Dec 28, 2020 at 12:39:57PM +0100, Stefano Babic wrote: > On 15.12.20 00:41, Sebastian Reichel wrote: > > Support reusing board_fit_config_name_match() to automatically > > select a sensible default configuration for booting fitImages > > using 'bootm'. > > > > For reasons I have not understood, this patch breaks "sometimes" the build : > > +common/image-fit.c: In function 'boot_get_fdt_fit': > +common/image-fit.c:2279:10: error: implicit declaration of function > 'fdt_overlay_apply_verbose'; did you mean 'fdt_overlay_apply_node'? > [-Werror=implicit-function-declaration] > + 2279 | err = fdt_overlay_apply_verbose(base, ov); > + | ^~~~~~~~~~~~~~~~~~~~~~~~~ > + | fdt_overlay_apply_node > +cc1: all warnings being treated as errors > > https://gitlab.denx.de/u-boot/custodians/u-boot-imx/-/jobs/193967 > > And it looks to me that fdt_support.h is included. > > This happens if I run buildman locally, too. But it is not > deterministic, sometimes it succeed. > > snapper9g20 and snapper9260 seem to trigger more frequently the issues > (but they are not the ones). I found the root cause. It's not this patch, but the previous one. fdt_support.h is included, but in it all declartions only happen if OF_LIBFDT is defined. My previous patch changes the code block calling fdt_overlay_apply_verbose() from ifdef OF_LIBFDT_OVERLAY to IS_ENABLED(OF_LIBFDT_OVERLAY). Note, that OF_LIBFDT_OVERLAY requires OF_LIBFDT. I'm about to send PATCHv3 dropping the OF_LIBFDT_OVERLAY related cleanup. > So I applied the patches related to the board, but I left this > out. Not applying this patch results in GE Bx50v3 boards no longer booting properly with the default config :( -- Sebastian > Best regards, > Stefano Babic > > > Signed-off-by: Sebastian Reichel > > --- > > common/image-fit.c | 19 +++++++++++++------ > > 1 file changed, 13 insertions(+), 6 deletions(-) > > > > diff --git a/common/image-fit.c b/common/image-fit.c > > index 1f382d87e207..b3aeff8c5e4a 100644 > > --- a/common/image-fit.c > > +++ b/common/image-fit.c > > @@ -1738,12 +1738,19 @@ int fit_conf_get_node(const void *fit, const char *conf_uname) > > if (conf_uname == NULL) { > > /* get configuration unit name from the default property */ > > debug("No configuration specified, trying default...\n"); > > - conf_uname = (char *)fdt_getprop(fit, confs_noffset, > > - FIT_DEFAULT_PROP, &len); > > - if (conf_uname == NULL) { > > - fit_get_debug(fit, confs_noffset, FIT_DEFAULT_PROP, > > - len); > > - return len; > > + if (!host_build() && IS_ENABLED(CONFIG_MULTI_DTB_FIT)) { > > + noffset = fit_find_config_node(fit); > > + if (noffset < 0) > > + return noffset; > > + conf_uname = fdt_get_name(fit, noffset, NULL); > > + } else { > > + conf_uname = (char *)fdt_getprop(fit, confs_noffset, > > + FIT_DEFAULT_PROP, &len); > > + if (conf_uname == NULL) { > > + fit_get_debug(fit, confs_noffset, FIT_DEFAULT_PROP, > > + len); > > + return len; > > + } > > } > > debug("Found default configuration: '%s'\n", conf_uname); > > } > > > > > -- > ===================================================================== > DENX Software Engineering GmbH, Managing Director: Wolfgang Denk > HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany > Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de > ===================================================================== -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 833 bytes Desc: not available URL: