From patchwork Thu May 5 20:16:48 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sean Anderson X-Patchwork-Id: 1627245 X-Patchwork-Delegate: trini@ti.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: bilbo.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=seco.com header.i=@seco.com header.a=rsa-sha256 header.s=selector1 header.b=jMWy11SP; dkim-atps=neutral Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de (client-ip=85.214.62.61; helo=phobos.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by bilbo.ozlabs.org (Postfix) with ESMTPS id 4KvQ3p545Rz9sBF for ; Fri, 6 May 2022 06:17:42 +1000 (AEST) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id AD202840DE; Thu, 5 May 2022 22:17:21 +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="jMWy11SP"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id B8539840B4; Thu, 5 May 2022 22:17:19 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de X-Spam-Level: X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_PASS,SPF_PASS, T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.2 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on0625.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe0c::625]) (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 6E47583FC3 for ; Thu, 5 May 2022 22:17:10 +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=LaME/6erfWWuUaLEB1MUZZS/RWTcnU5//jzdND5E21vMS8qXjGt4Vh7UtS6KFk+z5KmrDc598o0FigxO4Bn0G2SdQA5m4a1wg3mikOcm+z5DRRRBXr0loVrGvXOv5zalMMF2I2NRFcwIc/HS3MPhkSiyXXxbOoMKBDnugJl0H8RaxWm3wqLxnRG3YxybgEor0LcRTT9rpE2A+el7D/TOubnqCgBXori80UQ4Qc+vK3pFPuQV8XSnlFPAjYSwUw79d66jkoQyzlyDsqyRb696ocLh+H7ONhYbTZEFXXfAiL7piMIgkm4KVXhhTrLh7rZMXR99tqkyP6pNkmv7mVkcvA== 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=h9cF4CkkYaWNj1ecG1rYowqej50djIKW1qlRXi/y0fI=; b=kIRuRxu4UdlgL6vrWw+4vlfQmoTouTeuIE729PfQldbLoxwvBI6DDjsE51pUelkmvYC2e7DUn12OEoDomiZwZQveoJV7VxmWL9Px7vRP7rhoeh6MW2aXWFpdWP1KjAazGFn+lwhsfhyLerG0+WGa8heJ5KMgkBHHAtjx2rAfmwK9LArz7WKp9wQjJg4kHFoY/XLpJk1no8iHkL9ym5avK6W5lj2cErj0Rz2wkQaS0hDTusQ1myFnpd1bmpeZkRyA+3eT+GRHOb5IbG7YNebW+qpCy5fyMWvN+RkjbSyPpml0UTZbiGnoWt8IMPIY1dUWtLuAlkqkLGQaCdmSse1QBg== 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=h9cF4CkkYaWNj1ecG1rYowqej50djIKW1qlRXi/y0fI=; b=jMWy11SPU6lV0U32/gD/+ksaEl+bz5w2aGPxC6cGoBWxiaClSY33AQXERawXN/kGJ7ByvENd1DLk+WmDP5Kx/FU0rfo/ZBvTHAh4OHgebLGHkVS/CTklGpw3KBvQe8UkOJXczjc4TYnogq09BxDe10FR4QOgJ3PUh88PIargIc4bgSP3I/6UTGSH+u0/jjkF7EOJZga+ZqD/g8JVtnyV0MDeCZhCQGfuk290Sxn5fIqhbs+eHTEimsP7ep9iLY3yPx8kIEzkRFuYpIozcon29CEeW8Avdhz3lRiQ3gFVVFnDoJ0hzP8X4zu3wpbeFPnUEpvMjh9xQLHHsw67cH4HZg== 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 DB8PR03MB5676.eurprd03.prod.outlook.com (2603:10a6:10:10b::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5206.25; Thu, 5 May 2022 20:17:09 +0000 Received: from DB7PR03MB4972.eurprd03.prod.outlook.com ([fe80::a9d3:8abd:3f5e:a0c]) by DB7PR03MB4972.eurprd03.prod.outlook.com ([fe80::a9d3:8abd:3f5e:a0c%5]) with mapi id 15.20.5206.027; Thu, 5 May 2022 20:17:09 +0000 From: Sean Anderson To: Tom Rini , u-boot@lists.denx.de Cc: Stefan Roese , Marek Vasut , Simon Glass , =?utf-8?q?Pali_Roh=C3=A1r?= , =?utf-8?q?Marek_Beh=C3=BAn?= , Sean Anderson Subject: [PATCH v3 2/9] spl: Convert ext to use spl_load Date: Thu, 5 May 2022 16:16:48 -0400 Message-Id: <20220505201655.645692-3-sean.anderson@seco.com> X-Mailer: git-send-email 2.35.1.1320.gc452695387.dirty In-Reply-To: <20220505201655.645692-1-sean.anderson@seco.com> References: <20220505201655.645692-1-sean.anderson@seco.com> X-ClientProxiedBy: MN2PR20CA0047.namprd20.prod.outlook.com (2603:10b6:208:235::16) 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: 0d403e96-170c-428e-e70c-08da2ed43b63 X-MS-TrafficTypeDiagnostic: DB8PR03MB5676: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: NRVSPu/Z7ILdQQcPVQtkxmqwFHdreGac8ImhPKV/zYzlQXCytPawg8pkIRvEF18Tvneb0jee6jkia28gpLqUyCkIXRdHN6dwUdTbzkv4liOU5Cd0DSARL84c5ToTunr0HtVsICINAGo4XdNv3WJZvM7AupyCSD/lo9n/E09PVaxLBN03vPYRaVCpYrbQpKRF/LM9U/XQ4oKkDid/jtcrm55BdGHh1gbZ6cCQffc9amqGrbcoi3thsFq1TFcoMY2zz/potj5jPTQwieRQ5Y1SxRBDmEmywBU/fKXx01RaA4wUBYjV5RMUy7eUhbycn2C4MzX87vyJTmkSAmDo+axekJbYtq7wL33PxPmHamkFTm9T9WHiOd2Y3VlFIWv3AzX55hH0CX+DZYoCpJZWuT0NTfz396KsQEJzK96KSYeAzuwrv38pR5PS4QyWg/y5yUzwzfRtgK2S+PjurREX3oLpr5/xjsHzlnoV2W4YpWlasHPnV51kobIa8hzo7ciEtjOXgW66bnZW6AY0KFqCJ8iuEpkra2ScEnGVMa35CqnI4ak25cGrTXuBnQnhpURhVzeGGipYi4gxAG43OC91vihsxhqlMuwU8/zww6DI0uMdN8vIY5ovSnOQmgGhzyP5FOWj1NCbJ5RcjYcN2/rJapX3ViwOWNvfQ1FPdMdcXGDQH+/Cjv8zlUW52drFybjcY3F/oA/8kmpQ9eYmoyn4RnMIhA== 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)(86362001)(1076003)(4326008)(6512007)(54906003)(26005)(186003)(2616005)(44832011)(8676002)(83380400001)(66946007)(107886003)(66556008)(66476007)(316002)(5660300002)(38350700002)(36756003)(6486002)(38100700002)(6506007)(8936002)(508600001)(2906002)(52116002)(6666004); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: yZ7335bDaZkH4LqBHTekp39m0owNlU5RCME58F3SMvimPa2JRBLCHS394yvedGnk/Tq09oOA/KbHh7TLu3rREexQGDIeIPbkd9wpfgYs6zMOy1mi9GWKZiak0irsUK8auMIsQsSWjxagfBatFWj+8EbDqTaevw01q8SXvjNtWXyQWir52FnWZ7iUWxTeQ7ebDPh8wZe7TUu/aGrb1NcE9IfHxDFaM0JOqUj/St4YOUSuBwuINxC8PQGQjXA+TtBIeVAkwoM2I6R4G5LKV2YAkdB59wlEsk0OmA28D8lNoE8XWXOjzvX8sdFwZjlS6ulmcPdhze021H7Bo5XFrEwO0d6oYNrfc/eONCiMoTnREXWS0c4u3T5/TUvwIfWCcEhCutSnOLSu4Bq8yhUVAn0vuso65y7eO2j23KxaOMp12U1g1oed6dCPW9bAwM3bd51YEn/GokzRvqpC3FnrEhWKPqJiSOXE8ALFar+jaAHjR2yJSJPEPLlE7Y+tt1c5pM5MNKlpVUo6MLIt8UnpYKoP2nVgrs7DrAc2IyCtO+y1ePXSJ+E92D5dtF0AYrSrcM1kgzilmsljNvaevDSO8I6oeRivGY2X0LH+wPmUNoUJp06mXAqpOLcUTe3vZXGV4jx5TAS/3il20VjWQdViwBC4UOWdFpFA+oojhBoMFJyGgKY71T2XT3DyYwp4x7Yng7PAQoZEyeVbOlGlVjlUqqXuXH1a2KZ+Max4wodenJJdQqWsJteYb7wVnEqfPPWRUV+lVgL0SvzOTsJzJOV3qEHfT/71rENhkQSjS3T+PuWs7jXU7FekJhf3zooIaHM7+telYq1ej6Gzld8K3Cu8qYE33drKHJcqNBg5gMFjxmH8aTh3tvrehFSFtFQAH5PrGGumNEIQMOwVRja47WfvOlcpy2vFCyOq+wx1wEpLDsJYzlmE0GqE+mZidoSfdi7Cp2iSzuoowkF2o/aOqqgoLnP641FHUiFdsNTVEh3ZPyUFbt0LjhPoQGHqsNo3VHjYcnodrU0uhbmFhWflkIUcVREfB62Q+43ICBbqJw0CRNIw/cTAuckTKHmf7eShQzMcFeSkDFZ9dENfDc+kN1eWDaE8RzMnVI1DfGT5SML2uotI+ZgwkHHWkQzdmfEUBIfguLXNEf0/ezSIANlgmBTZ6en4ISC8j5YTClk4Lc0x7brMfEcEPSucmss1bTgOir/eRalaKQeiT+w0Di1xCy2xMn/MPW7IJv4OzxjzvFynWgonpM19piml8eDibx7ADETFi23M8yEqD+DECoZnklm7eYhGseqOX8RPsfHqTJpa8A6yD+eyRbmOUc5yHUE/b+/kqKtrvGxz9e+LMv5QekCTsT0ft2QOcYCDZqsXE+RDDMtqnp9Tg6ijzXZZjvJkUmHEf+5NG3OHI1HyOn0cHSpl5HfVEENbl3fFSZRcyia9YbuXSPOVC3oAHUOxxTMZZppbNrKVg8jaTcSbFJfKMhUtLRenUafjFwgGzkRVYk6NcWc/U7v24TyqryU2NVVBvYjQyTQhgmo7K3or7AbhI7M20P2PZKyOQLL3VASUDG59wyS9MMtjbc8g0xUad8+lIsuN5F4a6Y29Iiize/4su1dEiSEIOCE8XerDFVAPpotlWS+kwLVGxusUsjsoyTAW0g1Nsf7hS6t444kBOEFdaTA40GscuDvvDU0KH46tOD1IQX5epCKYQPDHSvdNbNzc/JtwQH4t8qUTeatkFsj1pkjj37K/BdgZF+ljVmOUUWXnFMkxzKE= X-OriginatorOrg: seco.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0d403e96-170c-428e-e70c-08da2ed43b63 X-MS-Exchange-CrossTenant-AuthSource: DB7PR03MB4972.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 May 2022 20:17:09.2100 (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: 2e96fIJvhQKQo5Vb4bz15md51mJm6Cjmfy09ASit/4ekN9szHLfAboHMDMS8srqaCj7eUK3lmDNbdfuHuiNYTQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR03MB5676 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 Reviewed-by: Stefan Roese --- (no changes since v1) 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