From patchwork Wed Jan 20 16:46:49 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Alex G." X-Patchwork-Id: 1429324 X-Patchwork-Delegate: trini@ti.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de (client-ip=2a01:238:438b:c500:173d:9f52:ddab:ee01; helo=phobos.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=VKXV77pS; dkim-atps=neutral Received: from phobos.denx.de (phobos.denx.de [IPv6:2a01:238:438b:c500:173d:9f52:ddab:ee01]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4DLWf35tX9z9sT6 for ; Thu, 21 Jan 2021 03:47:23 +1100 (AEDT) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id C3EEE8286C; Wed, 20 Jan 2021 17:47:13 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="VKXV77pS"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 08C7A827D9; Wed, 20 Jan 2021 17:47:05 +0100 (CET) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de X-Spam-Level: X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE autolearn=ham autolearn_force=no version=3.4.2 Received: from mail-oi1-x22c.google.com (mail-oi1-x22c.google.com [IPv6:2607:f8b0:4864:20::22c]) (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 2953E827D9 for ; Wed, 20 Jan 2021 17:47:01 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=mr.nuke.me@gmail.com Received: by mail-oi1-x22c.google.com with SMTP id w124so25710332oia.6 for ; Wed, 20 Jan 2021 08:47:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=a7u0rObOu7alag7aayOMnI623s5JYuFoH1xwonRBClc=; b=VKXV77pSFDsWc/VVjtvDVhx8XfdXnhKkoqDHSxXhCrK3E68pSV04mTQwu7j2m8vJ0r BwvZBmum0zYX4ClyrYRoLdvgEt3G9a958eJUcCEmpow6wgE2nNbSBllvF+7QAWRCNqKs 2n+454i7IDakjknDwzxGVaUAAWnfaoIH8DMV43ZQSoS5b5so3WofuUKxB6brq2eL9kk8 bFCJJQBxkOcNdJUARc4TNDSrV9LC/EtsJHSnuovlEwMgbQ4eMI540WkOL8VK55GLvPNb nfiKfZx6DZ6qvfT7pKpSbobZNoYrnU8psoJmB+BkcUELGQdNXwdMLr3Qmm2YVVIQV0H5 LXDA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=a7u0rObOu7alag7aayOMnI623s5JYuFoH1xwonRBClc=; b=Vm3uNxh9lX/FSrgnevfmOGhJA21xFHcPDL2Xy1q43tO1YYQRIrAY700bx4F0ykvbIa h778ueSeNqMdPkqOPri1cS6PCf7aPwmRtffqfZUBSVaHjhuEXlbft3wENGw53qx17yKn N/K/9yYxgHFa5FaOR1RktUQ8xI90CU0TGCkhmxjNvfFKmYX1/iNqxE3z1hAqEyZSLkbQ ElxnlKXFgLfoQJ5hvvj2z8PZxwEPAY/8n6Sl0jnGx7eb65g77lBtLuxgUAolE9pgnls+ 93TXvfv6PzGNA+NVJo3B9C8SvYc4AWs7gGqA8m2CGBUmcHYtwU7yOJAggwBovUV9m4Zg UzQA== X-Gm-Message-State: AOAM531JSbEInmph20whddgKlNEbScM2l29kGyHKyR+0QWdWMI77MVgW hGKh9LEgSCvWXzvjfyFWmkllLkXT5Gg= X-Google-Smtp-Source: ABdhPJwwfXX0l+12/J/wo9I/XDIL3nxxauAAMCBoBsIav3t31BlGLMpyphUETVUcwhnrmxFOALZwpQ== X-Received: by 2002:aca:5c44:: with SMTP id q65mr3306381oib.2.1611161219735; Wed, 20 Jan 2021 08:46:59 -0800 (PST) Received: from nuclearis2-1.lan (c-98-195-139-126.hsd1.tx.comcast.net. [98.195.139.126]) by smtp.gmail.com with ESMTPSA id i9sm462972oii.34.2021.01.20.08.46.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 20 Jan 2021 08:46:59 -0800 (PST) From: Alexandru Gagniuc To: u-boot@lists.denx.de Cc: Alexandru Gagniuc , trini@konsulko.com, marex@denx.de, sjg@chromium.org, Peng Fan , Matt Porter Subject: [PATCH v4 1/8] spl: fit: Drop 'length' argument to board_spl_fit_post_load() Date: Wed, 20 Jan 2021 10:46:49 -0600 Message-Id: <20210120164656.1396639-2-mr.nuke.me@gmail.com> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210120164656.1396639-1-mr.nuke.me@gmail.com> References: <20210120164656.1396639-1-mr.nuke.me@gmail.com> MIME-Version: 1.0 X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.34 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.102.3 at phobos.denx.de X-Virus-Status: Clean The size is derived from the FIT image itself. Any alignment requirements are machine-specific and known by the board code. Thus the total length can be derived from the FIT image and knowledge of the platform. The 'length' argument is redundant. Remove it. Signed-off-by: Alexandru Gagniuc Reviewed-by: Peng Fan Reviewed-by: Simon Glass CC: Matt Porter --- arch/arm/mach-imx/spl.c | 7 ++++--- common/spl/spl_fit.c | 4 ++-- include/spl.h | 4 ++-- 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/arch/arm/mach-imx/spl.c b/arch/arm/mach-imx/spl.c index aa2686bb92..f193be2e21 100644 --- a/arch/arm/mach-imx/spl.c +++ b/arch/arm/mach-imx/spl.c @@ -18,6 +18,7 @@ #include #include #include +#include DECLARE_GLOBAL_DATA_PTR; @@ -318,11 +319,11 @@ ulong board_spl_fit_size_align(ulong size) return size; } -void board_spl_fit_post_load(ulong load_addr, size_t length) +void board_spl_fit_post_load(const void *fit) { - u32 offset = length - CONFIG_CSF_SIZE; + u32 offset = ALIGN(fdt_totalsize(fit), 0x1000); - if (imx_hab_authenticate_image(load_addr, + if (imx_hab_authenticate_image((uintptr_t)fit, offset + IVT_SIZE + CSF_PAD_SIZE, offset)) { panic("spl: ERROR: image authentication unsuccessful\n"); diff --git a/common/spl/spl_fit.c b/common/spl/spl_fit.c index a6ad094e91..fc1b5f3e5e 100644 --- a/common/spl/spl_fit.c +++ b/common/spl/spl_fit.c @@ -26,7 +26,7 @@ DECLARE_GLOBAL_DATA_PTR; #define CONFIG_SYS_BOOTM_LEN (64 << 20) #endif -__weak void board_spl_fit_post_load(ulong load_addr, size_t length) +__weak void board_spl_fit_post_load(const void *fit) { } @@ -725,7 +725,7 @@ int spl_load_simple_fit(struct spl_image_info *spl_image, spl_image->flags |= SPL_FIT_FOUND; #ifdef CONFIG_IMX_HAB - board_spl_fit_post_load((ulong)fit, size); + board_spl_fit_post_load(fit); #endif return 0; diff --git a/include/spl.h b/include/spl.h index a7648787b7..5e3e0406c2 100644 --- a/include/spl.h +++ b/include/spl.h @@ -638,9 +638,9 @@ int board_return_to_bootrom(struct spl_image_info *spl_image, /** * board_spl_fit_post_load - allow process images after loading finished - * + * @fit: Pointer to a valid Flattened Image Tree blob */ -void board_spl_fit_post_load(ulong load_addr, size_t length); +void board_spl_fit_post_load(const void *fit); /** * board_spl_fit_size_align - specific size align before processing payload