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 EE6D7C433EF for ; Mon, 14 Mar 2022 14:59:51 +0000 (UTC) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id C2ED983BC0; Mon, 14 Mar 2022 15:59:42 +0100 (CET) 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="JUN2H0xv"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 8D8A483BEB; Mon, 14 Mar 2022 15:58:28 +0100 (CET) Received: from FRA01-PR2-obe.outbound.protection.outlook.com (mail-pr2fra01on0610.outbound.protection.outlook.com [IPv6:2a01:111:f400:7e18::610]) (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 0B29C83B95 for ; Mon, 14 Mar 2022 15:58:03 +0100 (CET) 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=gC36TxJ+Zb2irUA8JQ2SRSZuomsw2T2CEcZn5R1UYOnXSMuh7O3W5Mcpm2Vr5TZ8gzLZ61ikaY4O+5he2oV+lSW9sLzGqYXffN90MTMJEI2ztQv7ExuEBbpkY7/37yvhv4Zmx1AJWleSDC42AfgoFT5xtNzmKZnzkPAsukOJW0/nkelH19aoqKYuYFw3MLhkFk4ETkLMNt2kYfKfgHlt0AAxv/iOFX5LGtaVSVekvFVPO3qpDKoPVM8FjBBHl8Rk44cwJdBbSqvgxwn2kke5ialDVakxmoBAUs/CqPCEYif2sxd8ncpNF5tfRWCrSaFaU0PUpHy5/mLXZjEvonEV8g== 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=2pEEYn7nnzZOZl+jy0l51f0ICxwClBxOskAf3YPTKbM=; b=dWXKue2sKMKnevsaIsTKB3y9lPtOhDx5iVyWE2J0lnhYLYKwLz55FurOqTKk0u6bn4Vl612ITlSRcyLMSn8ib1eUtsHS3g4Ug+1Dhmeq0i5fdJPDl+SI4CoscfECMnzthhXMLjZ6phLFZ7PFQ27E/z/PDucJ5wl4cU86sGgbxcXJrmYn+QPZ2QMqJejtB3NVTsjkRbJK/Qi269YV9uT3GlNyWSrJ1GHGZYns4GbdPiErzYODrs9QvcVc6TD6VXluuB7L6KEwlWpF33tDpqDhzY3YP0LHs6Wqg9wsNeCZSljgJEEOS/teoodwmf54wbnOQd/FeWlS+sgzEqi5h6Qalw== 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=2pEEYn7nnzZOZl+jy0l51f0ICxwClBxOskAf3YPTKbM=; b=JUN2H0xvv9631NJ+0eu4ZcPVNa6yVMo+YnLL+fpEBWVFR2KB8xGRuTmBUte10dDMcK2ahBpJrd7ozg0H29Nbo7NWIp1POW/YTWzHemO/G2tr5BnVuMp3LMxeNDKNXPaULw1nWcmd6t+IAX5sE4oWutqpAzWX9DjvrwUeI1ra8pcU6WoUM17Os8ehqvbCsZLWD1P7HsgxAaVudTELYpZ2daUA8d+hRNNj1yKUTCw/d8jxKacFrwdDyVNHcEEbs26apu0jKA/HhMH4AlL/XBnsfpCiHTSFMOU1z5dcOCOD8/ZRq3dn7ymPU5yELgZXLZ2S2/lS8KDdOunokB7aALDjCw== Received: from MR1P264CA0085.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:3f::16) by PR1P264MB4296.FRAP264.PROD.OUTLOOK.COM (2603:10a6:102:257::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5061.22; Mon, 14 Mar 2022 14:58:02 +0000 Received: from MR2FRA01FT001.eop-fra01.prod.protection.outlook.com (2603:10a6:501:3f:cafe::db) by MR1P264CA0085.outlook.office365.com (2603:10a6:501:3f::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5061.22 via Frontend Transport; Mon, 14 Mar 2022 14:58:02 +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 MR2FRA01FT001.mail.protection.outlook.com (10.152.50.149) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5061.22 via Frontend Transport; Mon, 14 Mar 2022 14:58:01 +0000 Received: from localhost.localdomain (unknown [192.168.72.32]) by proxy.softathome.com (Postfix) with ESMTPSA id 539FF200C2; Mon, 14 Mar 2022 15:58:01 +0100 (CET) From: Philippe Reynes To: sjg@chromium.org, rasmus.villemoes@prevas.dk Cc: u-boot@lists.denx.de, Philippe Reynes Subject: [PATCH v7 09/16] common: spl: fit_ram: allow to use image pre load Date: Mon, 14 Mar 2022 15:57:38 +0100 Message-Id: <20220314145745.15249-10-philippe.reynes@softathome.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20220314145745.15249-1-philippe.reynes@softathome.com> References: <20220314145745.15249-1-philippe.reynes@softathome.com> X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email MIME-Version: 1.0 Content-Type: text/plain X-MS-Office365-Filtering-Correlation-Id: 15a8110b-5666-4cf9-df7c-08da05cb0942 X-MS-TrafficTypeDiagnostic: PR1P264MB4296: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: fjFz3hISazE2NXpFpgi9xh/zyUlHbajAwOo4FJwI6ZHq1wQHGb1t3c8pF8fUnYUBnyjSFHdV1mlIMo4kK7TrGWjgGAp5yLsGd6q+NPPMiFYQX+qVaDAVbSykkacfQV1zrPKKgTMDX0Ofdg/CXS7l6jBXX2C2Pbwj6eisPbnHB1hFpld7TxO3gg71/Cx3ZSbXiI2b3ZYbnZtSv1q1/Lbrl4aSRuEZE4QlhEwxtj+mmYpdOZgSqu/D90dSVQgcv2YTnhRqW3gbh3kuU5jijxqZpyOIl8YuX2QYuLxbjt5uGlJrh+juoTPdH1WaQSZUzRtbcSmodhKaKLOT2625TM7dneswT/QyiR5jiF91vdpRs2L6OjxascOdbEpKGI8hCc8HdPbOj1x4VeGuxfPUoYScve0JMyuGNzMcjg3FmR8zhxzD6rqvEPkC7koZopupgtTC+LkRCfniniH/FVSlEbj9R3ZHb9ySIZv+QzNObYwmu/kzWWw+3wICnzFZZC3XuIt9YDMpKJW3AAdQmnTl+PYm3XJx1IH2QbXVZU4OAsiCSaK8ApXC0CydU07OvVAcaOR21zdhbz6KQ9jPCHasdGUZsdXbg6KKv0Qw+ckfI+boBukV/keCAbVZ8UZXq97wDWfra33+zC3CwIDTF3X3VkRUqvlqnFgb/WOd5o5Rom0aBwBy1ong35E2RnvGpJWpXgflDZD6BeMIAojx47h5Ld1rgw== 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)(36840700001)(46966006)(40470700004)(316002)(83380400001)(82310400004)(2906002)(86362001)(36860700001)(40460700003)(4326008)(47076005)(8676002)(1076003)(107886003)(70206006)(70586007)(508600001)(6666004)(8936002)(6966003)(2616005)(356005)(44832011)(36756003)(336012)(426003)(26005)(5660300002)(6266002)(82960400001)(186003)(81166007)(36900700001); DIR:OUT; SFP:1101; X-OriginatorOrg: softathome.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Mar 2022 14:58:01.7599 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 15a8110b-5666-4cf9-df7c-08da05cb0942 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: MR2FRA01FT001.eop-fra01.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR1P264MB4296 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.17.1