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 5F0C2C433EF for ; Fri, 1 Apr 2022 19:05:24 +0000 (UTC) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id E9EB38432B; Fri, 1 Apr 2022 21:04:40 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=reject dis=none) header.from=seco.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=seco.com header.i=@seco.com header.b="TI0tESiV"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 579B3842FD; Fri, 1 Apr 2022 21:04:34 +0200 (CEST) Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-ve1eur02on061c.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe06::61c]) (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 CB4F2842FD for ; Fri, 1 Apr 2022 21:04:23 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=reject dis=none) header.from=seco.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=sean.anderson@seco.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ECEL6/XuiN+QAYH39wWPL2DIm6nsT2LFBz864oI33xideMc9XsCv43EIhLuPTXIxjeL3DLRS/mc3ZdG38EvePFUnUFLAc62yhh7BCyGbdvizxAl/xtGw1lbsVF2bblvZyhENEb8/3Zy/gqH35Tw15/HoQbmqkPz4VCDaJAqum/59KDf5w+9FOedcvxxMM/jwB30MCkRHs1jm77dKYCwvCtY/YxmF/GjGUwr30BREHweenRtwF/x7XNpsSJGm9m0hiQ7s6n6doEUKL1gNujnZHvhGawCEbzfh0MB3zHN/EcSHaRZfz6A21BBnRFGd489QJh/4zemM+ROMjp3/B8kJaw== 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=JZvIFkm/+HDryLhr7UVi1gsdhZuJIDls4krWfF6nnMk=; b=egdFLU+wxHlokS5WNU4xtinC+WCiDRObchZqWs6PZaC9HTEO6fYiBlDnDTOaSgDqN0ylH1//PFQ3uX9SPiMrMPZTjRoP6e11qlE6y8zr6ATF3mQrIPeyC6SS0HuLKjd9d78S4oPbCsMvw5DUDlCXH52SNFiyGHX+pvfip5c9oJ+D+uKzZwR723rpsoTUW0wQqv1t2utgGqZcZl//jY6xJ+Up3tTpeeIlHOt6j+6QdfHEuN0TaRpHG9hg363sZPrdyjla2FckUbkcfbH1Rri9A/+a/s8lGVN6vwnnkGHjfrsTZ+xlbJ92NOcMBn9ZClbbTvRuZFGbK25vON7WzyRKRw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=seco.com; dmarc=pass action=none header.from=seco.com; dkim=pass header.d=seco.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=seco.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=JZvIFkm/+HDryLhr7UVi1gsdhZuJIDls4krWfF6nnMk=; b=TI0tESiVMP8QThSfAcVM+cd4FxOSMJXEdDGStZEpaXIpS5EmUCf7gU8d0QxkcjbE/IScKQF8+NjQE+KyFj7xu6menGnKSFB+y668Ntg/ak/upuGSBfQYR4eG9anKn7vW7vSeGVIZlkEWmeYuD3d1ocmOOSL0/d+3G5mGerE5B6ssXLd6k51bKbZ2ENmE859Lv5NE/ENrDe/jkJTm3jIDNQQBGu3RSQ0GFNdQ7+6xR4M0LggnvLUskT3G8ZvIrQE8L0brVazZJ2z8SFHhCoGlh6rFn5PtLMb8F7Ha9/u/N1k1cRwQ/6GLBEt5sWYn4AiF8ISSVKBOsbMa0LmpObyRjw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=seco.com; Received: from DB7PR03MB4972.eurprd03.prod.outlook.com (2603:10a6:10:7d::22) by VI1PR03MB6463.eurprd03.prod.outlook.com (2603:10a6:800:193::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5123.21; Fri, 1 Apr 2022 19:04:23 +0000 Received: from DB7PR03MB4972.eurprd03.prod.outlook.com ([fe80::356c:789f:d20f:92bc]) by DB7PR03MB4972.eurprd03.prod.outlook.com ([fe80::356c:789f:d20f:92bc%7]) with mapi id 15.20.5123.025; Fri, 1 Apr 2022 19:04:22 +0000 From: Sean Anderson To: Simon Glass Cc: =?UTF-8?q?Marek=20Beh=C3=BAn?= , u-boot@lists.denx.de, Stefan Roese , Marek Vasut , =?UTF-8?q?Pali=20Roh=C3=A1r?= , Sean Anderson Subject: [RFC PATCH 2/7] spl: Convert ext to use spl_load Date: Fri, 1 Apr 2022 15:04:00 -0400 Message-Id: <20220401190405.1932697-3-sean.anderson@seco.com> X-Mailer: git-send-email 2.35.1.1320.gc452695387.dirty In-Reply-To: <20220401190405.1932697-1-sean.anderson@seco.com> References: <20220401190405.1932697-1-sean.anderson@seco.com> Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: MN2PR13CA0001.namprd13.prod.outlook.com (2603:10b6:208:160::14) To DB7PR03MB4972.eurprd03.prod.outlook.com (2603:10a6:10:7d::22) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 156e73dd-060a-4f4b-05bd-08da14126ed7 X-MS-TrafficTypeDiagnostic: VI1PR03MB6463: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: kCPoxurCjwUtrxfYrNOALEgSIhmCcqmncZ4Wh6+55hYtq6PmIQTZ6T35yU1sReeNbaVNsxePexczt24j9geHAuzLj1gxV1n7LNUcDLrFa4h76D+EexQVA+PgIj+Wcjun24dT/FSlyw2+KZCcmqmYk6XUi25Mgt4yvqikIlXbUnXRssIfk84Nu0PegxgXdxFPlQxpYRUjGHu2qDTUDPMSFMXHiYyTYXqZfcdmBv/P5f3D1qI5AkZlbAbdrUf9hiLyzqdenvruNf7aUqn/4rJDmPpnbat7qklzkbH2SQtRPhHGW5xaUsZu74BP7QvkTjUXuYVoJz18fbHjdFa879DbFUSlNQ83EVn2RdROzKtY0BZOS6zMNDYuNzRKU9tDg8/CjT4TKXNmDhyvA5xpcrmwdireMzpBbA7zG7ZbvwHgCcDg6MLgFQNV9dybS6dMDkF/MSQTyibjrQUTOhAjIaYsj0QSskqIf7/UhITfRBxHT4gBFDsY868fFbJBNQA73wKcubrPsrW1hj3IXuQylYjzbVURPHgFRfwGnTC1+2EAi+nl0WsKamSRxkrKpKkQNvOIj78wxWVC9itEC1yYfTauGv1Mvp8BPoyGMv6wCeSDPLNdHUYuP16b7TL2TFVDyjGETuGdhDfMN2NKwXB2vfhwpHI2lOHg7agL33/FETWuuoa7KsHnHAGGh+3CeEEgRbsb9yBMb/R+xojJjsVqM5t/mg== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DB7PR03MB4972.eurprd03.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230001)(366004)(54906003)(6486002)(6666004)(8676002)(316002)(66946007)(6506007)(6916009)(66556008)(38350700002)(86362001)(83380400001)(66476007)(508600001)(38100700002)(6512007)(8936002)(52116002)(2616005)(4326008)(186003)(26005)(107886003)(44832011)(1076003)(5660300002)(36756003)(2906002); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?0k16l9+u4TT4Wr4NUJqcgnRG4HjRzXvpKY6ZGeP7worhTIHJ9KYW3u8Bc+z+?= =?us-ascii?Q?zdeZOhFzPg8ZyuV3zS2t7t7Vv5R+0Qy6hNGzqAEprKMVbuVt+12BV0mFY9W0?= =?us-ascii?Q?vdZWX2uW81Owe+ZupPkdDnG8vu8yUBtKGkMAUfto3FcsV68JtznKv9ikeqFS?= =?us-ascii?Q?xFrrHJ0TE8NC6yNZdQQuSFQ7cSXZjRyaIJWne9n8QoyMOBQYyO3gg17ylrSu?= =?us-ascii?Q?Bj0oh8iET8+sQMih4kcmd5CgGYcXlxWynFR4hBaTwIUpz8Ho4quhyyAjvT9d?= =?us-ascii?Q?73UgpwXiPsdt8BeTujnOr7ckDxw88Lbml8rSfKF+g7nyDRhnyZESyPT+Uv36?= =?us-ascii?Q?86Oq7iBrOvmByuiESgyzGRj/aSuOu+Q5mmskJdl9KZPFvSkuXddjVDD0Epoa?= =?us-ascii?Q?22BGosUGX/aGXUacTBPmqvW9dalqNg8w+SqeE2xy7P07slRIAJxgCd+tLMvV?= =?us-ascii?Q?/qKGHalUgTYuVf0tlfR4R+VnOkOozKNge6PJEi3wLQohVdM0C/wnhXTtmBCm?= =?us-ascii?Q?QCG7ruC6aYKfW6gHkQupwNFy7CjwYChY+9U7LAgy2gu77QHHExuvH9mmjZm7?= =?us-ascii?Q?g3hugO2sGouRlYPE2RkWtsEd2IBmQiEQbh0PcZErGsqRXNlGZc1lPRrSwBJI?= =?us-ascii?Q?zief+GSSLJx2/Z1REm0s0lZl9jntZYBzTkBJORfSJHE2MUS9JoMRieeEzGi/?= =?us-ascii?Q?QjhWmO/SVaTMgNv3VqSHeMlYO1OPNyRrg3cfxdiY8D+c+qrEXrWb+lLljAue?= =?us-ascii?Q?TgAWhaSxApiftgt/JA+KZ5SRY4vmaP0R5gdSvRQlwkLKJwzVqVhTQlMLyG4h?= =?us-ascii?Q?anu3h8uXSJt1PXfcgrXQ1L6m/fnZ0NC5F6vEywcSlSRzoEItK/Vl/+2mu4ov?= =?us-ascii?Q?gVt1bz9XP0Mt8sADAbjS19Q2dSZ7klZEMplGnNElKXw43oxYkW//irFdnYq/?= =?us-ascii?Q?Umy63h9SWx+C04vD4KydOnTCh9/+okqSX+xzjhVxeVbfklSL1ZGd1Wi1bBmT?= =?us-ascii?Q?2N5QtL00HxcLkPK+EPPHu3w0q8I6KgBDDT7Ukvk3wbwBBjkwOa5um472oHZC?= =?us-ascii?Q?00C4xBcWC4zI/HZ3axJJOsq6c4YfOgeVAUBseCpa338KoB0Dj20hkYDdzqYY?= =?us-ascii?Q?aoXdepSbtUooqTEFZPDWnO722FXFSsAhZr++sWkbSAB5/7XMZ1/gXieoERin?= =?us-ascii?Q?6tD2c8YuFSTNui2uMdRCRYqqj01YaHngwhXPHNVGXjb7VirNSgzrRmdM7kbJ?= =?us-ascii?Q?1rva2CmVMD9g3zyQsPMYZTMQbkhs6/FeWHt4RGZWPQROmxiXXEicXusAelP0?= =?us-ascii?Q?b6O3O5gpUj7b1CS2Pq/qisLATgj0eqKDux/EHJFomGXXYLwG9NxzE5Cgi2gQ?= =?us-ascii?Q?jYYIuro16V/JeOZhs6NdVMctk43sQKyPzlCbEJ4X8jB/8s4eWb1OM5PIPIDa?= =?us-ascii?Q?bg1S0gdHkwGoRjiz7sJqZ2NibccTHKqr627poWo46q8bMVm23C5Z3XamskyP?= =?us-ascii?Q?288YLjJ/ExEbs+JObua3Ea319ZJFUjUj8ZrF+rrXFSCvnV/i1crXigm1ABiz?= =?us-ascii?Q?MwuVWnSzphDitlrOO8vVfoj95nN2QPSBHBktPYtCVLdS99BG7Fx2z/ZVIcaS?= =?us-ascii?Q?s43ogf41gNrXwPrOy5djTlddChf1Z4gTyxe57TYePqD9c6LWGZ0w1TXn8TIc?= =?us-ascii?Q?hPL9CDfyUo/KLm8zynodkuncQHUjDZxcn+hK5oiMKHqDUclj7t6MGYo5fkFv?= =?us-ascii?Q?0+yNj3B8imFn29vIUo2VPGJdHJkmrOc=3D?= X-OriginatorOrg: seco.com X-MS-Exchange-CrossTenant-Network-Message-Id: 156e73dd-060a-4f4b-05bd-08da14126ed7 X-MS-Exchange-CrossTenant-AuthSource: DB7PR03MB4972.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2022 19:04:22.9148 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: bebe97c3-6438-442e-ade3-ff17aa50e733 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: MRYMc9wkLHp5zZXyTpNDyth9rHZnox8miHqJ3AwaegFHpPj89O7/z9uXeGoG1F7jfnbPv33yMzmLN3TnbvkBkQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR03MB6463 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 This converts the ext load method to use spl_load. As a consequence, it also adds support for FIT and IMX images. Signed-off-by: Sean Anderson --- common/spl/spl_ext.c | 24 +++++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/common/spl/spl_ext.c b/common/spl/spl_ext.c index ebd914c492..1384842776 100644 --- a/common/spl/spl_ext.c +++ b/common/spl/spl_ext.c @@ -9,6 +9,18 @@ #include #include +static ulong spl_fit_read(struct spl_load_info *load, ulong file_offset, + ulong size, void *buf) +{ + int ret; + loff_t actlen; + + ret = ext4fs_read(buf, file_offset, size, &actlen); + if (ret) + return ret; + return actlen; +} + int spl_load_image_ext(struct spl_image_info *spl_image, struct spl_boot_device *bootdev, struct blk_desc *block_dev, int partition, @@ -18,6 +30,10 @@ int spl_load_image_ext(struct spl_image_info *spl_image, struct image_header *header; loff_t filelen, actlen; struct disk_partition part_info = {}; + struct spl_load_info load = { + .read = spl_fit_read, + .bl_len = 1, + }; header = spl_get_load_buffer(-sizeof(*header), sizeof(*header)); @@ -47,13 +63,7 @@ int spl_load_image_ext(struct spl_image_info *spl_image, goto end; } - err = spl_parse_image_header(spl_image, bootdev, header); - if (err < 0) { - puts("spl: ext: failed to parse image header\n"); - goto end; - } - - err = ext4fs_read((char *)spl_image->load_addr, 0, filelen, &actlen); + err = spl_load(spl_image, bootdev, &load, header, filelen, 0); end: #ifdef CONFIG_SPL_LIBCOMMON_SUPPORT -- 2.35.1.1320.gc452695387.dirty