From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 91311C433F5 for ; Wed, 5 Jan 2022 16:06:43 +0000 (UTC) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 1585483742; Wed, 5 Jan 2022 17:06:41 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=chromium.org Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (1024-bit key; unprotected) header.d=chromium.org header.i=@chromium.org header.b="gi1NDGfQ"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 7CD6283740; Wed, 5 Jan 2022 17:06:39 +0100 (CET) Received: from mail-ua1-x936.google.com (mail-ua1-x936.google.com [IPv6:2607:f8b0:4864:20::936]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id 543E383742 for ; Wed, 5 Jan 2022 17:06:36 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=chromium.org Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=sjg@google.com Received: by mail-ua1-x936.google.com with SMTP id v12so58003996uar.7 for ; Wed, 05 Jan 2022 08:06:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=DbkAFTi5A7xnHmnMzGX/KdRErx9/Uvra2MYK3qUAbv0=; b=gi1NDGfQFIZLdZGgl6tSlHzSPnWWuWcaSxr+nEQ06/+ov0Jw5r9HDHkNanK58qeXU2 Ip/HL152mcYET35DIXfH73v1Zyy0DhjDbPMSBvjr8u6M4vqWQB0wnxux8TRTezXcgw5i mzU/rhRpBTDM6PWU2MeAO90LpOc8MiMIf1Imc= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=DbkAFTi5A7xnHmnMzGX/KdRErx9/Uvra2MYK3qUAbv0=; b=HW1tBkdLMEqO2woeCS8vogD/WBhc0kxfjtsZl4bxgFd88vv8pEw0iHpUNYFVi93ApY TRDbd0Ol0Uyz0M2Vf8wgBaOyDUZ8G6hC/QVEtn7Ar2TzOUvLJH1RgQ4FH6DBhyQ8BFOx BA9WSbiR0gXX3oChVSVn/oyeWxo3hNH5dWxIL9O4g/uxcq7sagzurjno5QMa8CX5DPBl TVOCrq/rsew7/9rSbv99ncRjgoZLy9BRBbMCBZLfBh4sBGPfzj3/3eectaovc01xq2ur 6xm2Prh3omoW2SpnGUgbvV339JoRVojyEu59ZUXIL/NBLHpknkH92W3FZJ52kK5NyRxJ S17A== X-Gm-Message-State: AOAM53395+Jb8zw9VUlAXLX59QxvuUXhLxIyoU/orN3TGUe6bOlVaQlN uUePy6DXeY9OQhgIiLm37/45X1G28XfgIWUY7YfSJQ== X-Google-Smtp-Source: ABdhPJzxR9wHOijgko2/zn+vZ7DAxclI0Xl4SX8uhs65pPSXH3cHlPa+hNcsMm2LKGHJQLxycREzSLMZA8IQYwe9/Wg= X-Received: by 2002:a67:e897:: with SMTP id x23mr16811716vsn.19.1641398794423; Wed, 05 Jan 2022 08:06:34 -0800 (PST) MIME-Version: 1.0 References: <20220105125816.197045-1-heiko.thiery@gmail.com> In-Reply-To: <20220105125816.197045-1-heiko.thiery@gmail.com> From: Simon Glass Date: Wed, 5 Jan 2022 09:06:23 -0700 Message-ID: Subject: Re: [RFC Patch v3] binman: add support for creating dummy files for external blobs To: Heiko Thiery Cc: U-Boot Mailing List , Stefano Babic , Fabio Estevam , Michael Walle , Tom Rini , Wolfgang Denk Content-Type: text/plain; charset="UTF-8" X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.38 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.103.2 at phobos.denx.de X-Virus-Status: Clean Hi Heiko, On Wed, 5 Jan 2022 at 05:58, Heiko Thiery wrote: > > While converting to binman for an imx8mq board, it has been found that > building in the u-boot CI fails. This is because an imx8mq requires an > external binary (signed_hdmi_imx8m.bin). If this file cannot be found > mkimage fails. > To be able to build this board in the u-boot CI a binman option > (--fake-ext-blobs) is introduced that can be switched on via the u-boot > makefile option BINMAN_FAKE_EXT_BLOBS. With that the needed dummy files are > created. > > Signed-off-by: Heiko Thiery > --- > v3: > - add CheckFakedBlobs() and print a list of faked files at the end > - add unittest > > v2: > - pass allow_fake_blobs to ProcessImage() > - set AllowAllowFakeBlob() to images/entries > - create fake blob in Entry_blot.ObtainContents() when file is missing and > creation is allowed > > still missing: > - unittest > - option to set BINMAN_FAKE_EXT_BLOBS in Makefile via environment > variable. With that we could simply set this env variable in the CI > (gitlab-ci.yml) with adding support to buildman. > > Makefile | 1 + > tools/binman/cmdline.py | 2 ++ > tools/binman/control.py | 26 +++++++++++++++++++------- > tools/binman/entry.py | 23 +++++++++++++++++++++++ > tools/binman/etype/blob.py | 18 ++++++++++++++++++ > tools/binman/etype/blob_ext.py | 8 ++++++++ > tools/binman/etype/mkimage.py | 20 ++++++++++++++++++++ > tools/binman/etype/section.py | 20 ++++++++++++++++++++ > tools/binman/ftest.py | 13 ++++++++++++- > tools/binman/test/203_fake_blob.dts | 14 ++++++++++++++ > 10 files changed, 137 insertions(+), 8 deletions(-) > create mode 100644 tools/binman/test/203_fake_blob.dts Please check that you keep to 80cols, except where it would split a string. This is missing a few holes in test coverage. Did you try 'binman test -T' ? If you are stuck I could fiddle with it a bit. Regards, Simon