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 39AACC433EF for ; Mon, 28 Mar 2022 20:59:01 +0000 (UTC) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 3250283FCA; Mon, 28 Mar 2022 22:58:03 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=softathome.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=softathome1.onmicrosoft.com header.i=@softathome1.onmicrosoft.com header.b="i9iZFLom"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 453D283C7B; Mon, 28 Mar 2022 22:57:28 +0200 (CEST) Received: from FRA01-MR2-obe.outbound.protection.outlook.com (mail-mr2fra01on0607.outbound.protection.outlook.com [IPv6:2a01:111:f400:7e19::607]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id 1442683F88 for ; Mon, 28 Mar 2022 22:57:16 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=softathome.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=philippe.reynes@softathome.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XjFw38ibOx4UarGkNoEy82mLeC/LrMCeC7+Fapwx0ZAG79ehpwHhVLaoa89+xFfnHrqxwMzbH+lTXdCUBu2LQSTMBQPOKwS5RnFHKR9SqdzjUPZ+mii1egTB4SrzGRBJuZSsAf/Qdo4bXRh8QS5RMHG1+fDDmNqbjybKn5V6/Z7HwVsV/tABLB6E45Rgz3S9Lq7+EcNW0ooRQ/1jpX5LnH9fGRSJ612wcZ1rtZWJcvP+soOE1SXB1wf2KNxBLrzdPHVk6cB/FycP/3k1TDEkV1mPQ8qcWXyrhP2/AQGlBWrYSoYR8Hh5CKfLfxob8vUamDD52tonVas8ZSvWeehGsQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=1FBQCbGZzukiK1TwIlXX2afuaRdL22O5tOPemuHMCNI=; b=GVFsU3EXp0PTDBO9Jm3f7xmuE71uCYnyS+8BUJf/ZSGbxH4KnPbZfAVd3ihZ17zvZbrZeVo7tqJfUbbiKIFq7A9jNOc7ySg9wdsUwHLtaTjaDV836b70yD5EKMpl4HUH0KjrJh8r2K+cXafx65jFyNXMvrXJWIVxzmy+pKZI8KoFeaq0XzmY6f1IuwXwH9vkE2Vpjnl7aK1wIh4VHSrjAUywxviw0beR8AplQdDOiQmd6CQncb5CQlTIeVnf/odDmNBEPWNHmQm3Jd3XAkyDsHGKm0eVfplqGKy62ott607gm9oiwckNT65OibnaY5qLAu8CWQjLUDaXNIDFuP+bAA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 149.6.166.170) smtp.rcpttodomain=chromium.org smtp.mailfrom=softathome.com; dmarc=bestguesspass action=none header.from=softathome.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=softathome1.onmicrosoft.com; s=selector1-softathome1-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=1FBQCbGZzukiK1TwIlXX2afuaRdL22O5tOPemuHMCNI=; b=i9iZFLomPwAtvEcivIOE8/2ugNE9wNEvWLk+D2r6oj/4W/+1aERzUuHqYhhf8kVM/znBcZYQwfRMUZSDx6vnioSbQ9eSH8fLG90JkBRZEiWtt1CJx4aoyVcxBVFmVW7focOLFoaI5m6MP3XMQfEOfBRUdb4LwCX1lU+ABvZFDG9g2hx83QkUHQ/atYzINLTEzorcFAywOu8hVPSewhk7LESEpcoOqhi7HRhNN4ZPm6erL4mBdaqty5CheWkzn2TMMZLktfOMVlYduTIqXJuuUOrR06xSJlzRqQ+CmQBa9mRT873VfKF27/XjnXWJ/XN1izB6A8SY4QE5dsN0M8vX5g== Received: from AM5PR0601CA0028.eurprd06.prod.outlook.com (2603:10a6:203:68::14) by MR1P264MB2515.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:34::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5102.17; Mon, 28 Mar 2022 20:57:14 +0000 Received: from PR2FRA01FT003.eop-fra01.prod.protection.outlook.com (2603:10a6:203:68:cafe::88) by AM5PR0601CA0028.outlook.office365.com (2603:10a6:203:68::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5102.16 via Frontend Transport; Mon, 28 Mar 2022 20:57:14 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 149.6.166.170) smtp.mailfrom=softathome.com; dkim=none (message not signed) header.d=none;dmarc=bestguesspass action=none header.from=softathome.com; Received-SPF: Pass (protection.outlook.com: domain of softathome.com designates 149.6.166.170 as permitted sender) receiver=protection.outlook.com; client-ip=149.6.166.170; helo=proxy.softathome.com; Received: from proxy.softathome.com (149.6.166.170) by PR2FRA01FT003.mail.protection.outlook.com (10.152.48.96) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5102.17 via Frontend Transport; Mon, 28 Mar 2022 20:57:13 +0000 Received: from localhost.localdomain (unknown [192.168.72.32]) by proxy.softathome.com (Postfix) with ESMTPSA id 951C12015D; Mon, 28 Mar 2022 22:57:12 +0200 (CEST) From: Philippe Reynes To: sjg@chromium.org, rasmus.villemoes@prevas.dk Cc: u-boot@lists.denx.de, Philippe Reynes Subject: [PATCH v8 09/15] common: spl: fit_ram: allow to use image pre load Date: Mon, 28 Mar 2022 22:57:01 +0200 Message-Id: <20220328205707.348270-10-philippe.reynes@softathome.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220328205707.348270-1-philippe.reynes@softathome.com> References: <20220328205707.348270-1-philippe.reynes@softathome.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email Content-Type: text/plain X-MS-Office365-Filtering-Correlation-Id: f0a1ef1c-7cf1-44a5-86c8-08da10fd88ed X-MS-TrafficTypeDiagnostic: MR1P264MB2515:EE_ X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: XrdVNFxBDreZugXENGRmq+3roR3eEaskoMWGb0dpujf/cGFvvtOrW9OiEEExEmhhZjAKlEoP8xm9pGpctN6ZOtNcRLhfQDAJ8AXuYhDmagzra0lTuX1vGLh017cnyyFCoq5sUF9C46q28YLrN/6RQ7/Ybdv6edHldWWrZHYSihoWLpguukCThG9HBazQ1hImS94L385TVMkSkwuwZhkbLnL8iaxF5GynWNgGogs13JB7TNohFL8lpY6OFt+zbqw0AmtSbwuAgsX/ZkW0ydDn3ccfbScJfwoKB8nrg2L6G6v2x4PC2rndvhrMQ2Hwm1P3CdEaM1gY55soeEd9T2Ty9y7ZCDB35UnKagGdbZgfN15B1MKqFxWia3jg3cCTjPnuo4Oi+OujLKT65BNlxUl0l5Cr0cn/9p6H7XGZ4tMKauo1PMYiTT85ESYERcViYXwKePC32iJSBjzgaZ0lAOnqJ8/cFuSKs1ONflDEtA5Yo3QRd40RWoJw7g2//QsjpP5TKVrVUDX6NEkKlmq2DEAVYesCHEMr7yrEifmRyZrKm573ep8znEm0ix+cZX1Q1XHKQPpLIhlErckgO47R2S2MRA50aCPvG6+Q6yjB1WupIj+G8BDkjFmYhUKZAgJNuh1N4xMoKo7Lde9PxhgWY+dseJi5R1Y408xeHJT5QYILwecv33rxMt7cHJvlhN3ZgxZFvJ6N6Zm3/F+cz00kFvx7Cw== X-Forefront-Antispam-Report: CIP:149.6.166.170; CTRY:FR; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:proxy.softathome.com; PTR:InfoDomainNonexistent; CAT:NONE; SFS:(13230001)(4636009)(46966006)(36840700001)(40470700004)(82310400004)(83380400001)(1076003)(40460700003)(2906002)(5660300002)(426003)(336012)(86362001)(356005)(107886003)(508600001)(8676002)(36756003)(81166007)(2616005)(8936002)(70586007)(6966003)(82960400001)(6266002)(44832011)(70206006)(36860700001)(4326008)(47076005)(26005)(6666004)(186003)(316002)(36900700001); DIR:OUT; SFP:1101; X-OriginatorOrg: softathome.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Mar 2022 20:57:13.5916 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f0a1ef1c-7cf1-44a5-86c8-08da10fd88ed X-MS-Exchange-CrossTenant-Id: aa10e044-e405-4c10-8353-36b4d0cce511 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=aa10e044-e405-4c10-8353-36b4d0cce511; Ip=[149.6.166.170]; Helo=[proxy.softathome.com] X-MS-Exchange-CrossTenant-AuthSource: PR2FRA01FT003.eop-fra01.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MR1P264MB2515 X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.39 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.5 at phobos.denx.de X-Virus-Status: Clean Add the support of image pre load in spl or tpl when loading an image from ram. Reviewed-by: Simon Glass Signed-off-by: Philippe Reynes --- common/spl/spl_ram.c | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/common/spl/spl_ram.c b/common/spl/spl_ram.c index 3f7f7accc1..8296459257 100644 --- a/common/spl/spl_ram.c +++ b/common/spl/spl_ram.c @@ -24,9 +24,17 @@ static ulong spl_ram_load_read(struct spl_load_info *load, ulong sector, ulong count, void *buf) { + ulong addr; + debug("%s: sector %lx, count %lx, buf %lx\n", __func__, sector, count, (ulong)buf); - memcpy(buf, (void *)(CONFIG_SPL_LOAD_FIT_ADDRESS + sector), count); + + addr = (ulong)CONFIG_SPL_LOAD_FIT_ADDRESS + sector; + if (CONFIG_IS_ENABLED(IMAGE_PRE_LOAD)) + addr += image_load_offset; + + memcpy(buf, (void *)addr, count); + return count; } @@ -37,6 +45,17 @@ static int spl_ram_load_image(struct spl_image_info *spl_image, header = (struct image_header *)CONFIG_SPL_LOAD_FIT_ADDRESS; + if (CONFIG_IS_ENABLED(IMAGE_PRE_LOAD)) { + unsigned long addr = (unsigned long)header; + int ret = image_pre_load(addr); + + if (ret) + return ret; + + addr += image_load_offset; + header = (struct image_header *)addr; + } + #if CONFIG_IS_ENABLED(DFU) if (bootdev->boot_device == BOOT_DEVICE_DFU) spl_dfu_cmd(0, "dfu_alt_info_ram", "ram", "0"); -- 2.25.1