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 1A475C433EF for ; Fri, 1 Apr 2022 19:04:49 +0000 (UTC) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 146608431F; Fri, 1 Apr 2022 21:04:34 +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="vIHk0VUO"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id D09AA842F1; Fri, 1 Apr 2022 21:04:28 +0200 (CEST) Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-ve1eur02on0614.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe06::614]) (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 0068A842EA for ; Fri, 1 Apr 2022 21:04:22 +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=DmmMd1P68QaARMq0pK+Adgsh/krlqlPZ6rtATXc35UoQnBfhab+SlXOJPamoQ1BZCMpK8fT7hAMsuSdR4a/Xjiuf00pS8N0/AVqelX5w6MDwZ7rprVxQ9XnUVX/BoS1LL3lWkfnGzAzDIlZS2rGK8bJ2MMzT6R53N7pFqUxoTPVQJ0Kb1dKN8KF3vRC33wUbl4AC6+OK2UXycuUkEqEMLPvxoJUioxzQzQijAjj/qwuZbhrUjkFpaO1LDQ3ovwIlPeDHBk8lZdIlJkiC1cTxX1o+jaefkmK6fD3LCgUpvIILQAiZ2tLO49oTNtEoaObu5EuJDxZ75V2BM7UMKSJk0g== 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=npGwQyO+VDeBnTMXiKxLIWkM7HpWupW+6ZncA1ewBmo=; b=VrO64Dvj2IVIBvAIY7u47A94McPCU6ffPIccV1BbrY7Tb4NzQ5cDSCXCAslG/oaIQ+Bd4d4oIuonXiEB4IjNDikbn6lm89+N+ncgpR0LdaqAbSNB7rPFlZK1YHSqSP5YlM6m+R/X/Ox9wotMpvmHGMGcl/+/TDotIGs/H3cYVJVAiex4p6UmuhzRUacoeAMJMTF2lNZl9k5TrBDX3tnCQDGRMHpM4kNIXAHksp2nhMp+GLdy2trOKtOYjhxQRFN6z1Mmfs22l2bKvP7TmrMmun048CWoS2PWZkCrtNT99oOL/yc2py2FIgNLwASS8B4LCdqeSWzC9aTLIVDgulfHMg== 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=npGwQyO+VDeBnTMXiKxLIWkM7HpWupW+6ZncA1ewBmo=; b=vIHk0VUO08Va4yNUAzjQEwI5kEsE9k9mzCYzrUzEL9VMHgfbezizK13DfsI/1VZ0EpgEWm7LRQryhP9Mv0mGgKQx5Gsth5ihHxueLTuN6+D3VuvmBHDme9+AKcnHU6nijVSEdbwxC0/rQuP1XnRzuO8zIrXh+IykY1HND+vLbHXXmcziqhIQ+Lj87cTua478AUidW8t3l+bNc+GzF2I7gklN6WZvIFDORlB+XptDlE2Kf0B6c/X5m3aTJfH9VgyG9R4Ou9T/f+M4muyMmQ0Npk56zWb+lNmxzN9YY8+bwDT1eZuC2yLI7aTUKQB30mlLE2oHMiaiZ9cQH25HFsYntw== 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:20 +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:20 +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 0/7] spl: Use common function for loading/parsing images Date: Fri, 1 Apr 2022 15:03:58 -0400 Message-Id: <20220401190405.1932697-1-sean.anderson@seco.com> X-Mailer: git-send-email 2.35.1.1320.gc452695387.dirty Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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: 2b73f379-5026-4dda-31cc-08da14126d57 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: Iuwo26rN/0fbjWMAjSRgWgPhjdKs6uEll/hwwTkuQ/3IyCEG+dOLFjCihJYeqWlql1WCbn5g60mlT8nT9BMaXP4L6xp1b9dOtzEuXtnudOgHB4mKf7ZwG4/+52smuHyaTk8f5T3WkjoC3XxGSIfsgvSfrls1nTv/mcyOqBQV1bn2fmkbfEX4TMU9L0+argS39WMbOyRH0sLRFZmJVyxbhb1+QchS+bc46KddxQFXHsGpV3kbRdSwwW3JckEvhLC6AKhzAgPJwAPyvW6FPUhT0rfnk8wwFO+Q1i0fvmxXKQNxDhekZRnYlUhKumh8EN7rE30hm/YyJbfLU3ne23TvZNd2bto1ji2JrrYrfGqULje2NpmJDcriFEacd/bOynuwLerwtlkSp4NDtYQuHTyZQJweRy5NINV7/HfE/terZN6EWrG+dOrVRPffHHkUQLvj9IUdaEMA9gGrt2AVxopbdoLZPk/8hb47HZdaKVbOfQzyWZ4RevJY4rylumwZgXoAJlm2PMVzevod9D6wctsxsgFs6dB9lCERba1W6HdeTx/StM9AQY7we9jjjiQZLoMxf+unuCco5JQU4H4nB37zIFmThsc6GfHdTASIu4PIUgB0MnE3qYCgVTwYg0xvuBFUfR36TaIdGGyilzqdtdQvssgW0aVksLZJWGsL1Lr7e/62d/gDx3zioNC7L1QI0nmBd1lqjGCcFnVTwLf6NVcbl3if1GTJZvxBOd0twtBg4+9KF4Nayfi6Tz/L2OATjC2EZMlHWG4726/FytikOEZ9aSWtSbtVBpAlG/tjsK7R8c8= 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)(966005)(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: =?utf-8?B?bWdna0c5WGJ2YWwxbmU0TWxHUGZqMFA2M0U4ZFpiMFdlYkJ4Q0g4Y3BiRnpX?= =?utf-8?B?RnN6M2JaQ2ZYcWpiMWttVmFLajRraFRvb2lQZklNSGhkbHNnQUxTMzd3SmNG?= =?utf-8?B?Nm5wd3VBdWI2VHdhWGJFeEtzeXNvamY5cmluRkFtQTZzd3UxZEFnWW53VkRK?= =?utf-8?B?SGgzUko4MWlmc05hWmROcDl4N3BzKytBV2p6MDhpVmRzMXB2NHh5d25tVG83?= =?utf-8?B?OGpxbE9VYm5PN0EzWTJmaWpuN1lSM2V0UVRvL1lqTHVVTWJEaDVldVZKY2tw?= =?utf-8?B?U2RyTVdIay9qcTJnUXN2UzdaZWVndjhCNGpuUTdGY05oeGwyYW56VmpLcXBi?= =?utf-8?B?SFN4bXVGcUIwcUxwcS90Q1dDWkdQcENHRTd3ckpSWC8xQytSaWt4WmFBNFc5?= =?utf-8?B?ZVJ5bllTYnZSSjRwc2JYcGFaak1TN3gyRlpwbWJza3pVSlUxajdnRjlCcVla?= =?utf-8?B?NE82RE5TbjVjQ3laS1FYK0dTL2xKeGJlMmp2Qk5yaTdvUk84b3dzN3ZHSHpm?= =?utf-8?B?MEU5WjA0cG56TkF0QjlFN2lkUStxbDkrWURweWQxallKTmF1L2hsajFCaUlk?= =?utf-8?B?UTJ2Q1lQcW9scVFqNER6SDZYMDlucmUvQURGQ0J5TTFycWZaZXZFUU1OMlpY?= =?utf-8?B?T3NZQXY4MFRaQStSUGVzalcwajZnMHJkV0VtWTVEbWwrSFdPZExvM0RmMG00?= =?utf-8?B?dmRUT0NCOXR4V1dzMzRleWRteVkvTkp5UDBiZC83c2RzWjFTSXlUeUJyWWNT?= =?utf-8?B?TkdCMnRIMmZHN2lKYnU4Q2I2NXlFaURBdzFlVm5pdnBSM1JHWnJTRWdGZmYy?= =?utf-8?B?SjBVTTdVbUpNRnIvWmZQejcwN3VQTXd5YWdqN2tPTXQzSE8xYTRSZDczM3RY?= =?utf-8?B?Q1Bsd3A1a0pPWVBsMnNxdWRsblF2NnRwc2Y3dk5hUldLRDR2NTFza2FVNDEx?= =?utf-8?B?ZUkxRnNoVWdCQlE4S0QwWXVuUm1wQkdtTDZ5eElZeXJqN0dtMHdxL0xRVzMw?= =?utf-8?B?UnpCVnNjVVhBWFhRdFZkbmdMTllJeEJ2M3VjY1J1eDJubXZ1ZWlvbWhvYVhK?= =?utf-8?B?bnZBN3orbzdYQmhQYTV6TjYwQTc5aGcrc2dRWXNKSkRUcmV4ODFjWncwclZU?= =?utf-8?B?SllpaXFteUR0QldURUtKaURPTmFQVEJQU0dNOXRwaGowaXBXWW5QbG56WDMz?= =?utf-8?B?VkM4a29nd2hmb3RqNDFDRzJJc3JoVFdCTm9FazRBOGhNTm02YlFRNTNvZkF0?= =?utf-8?B?Nk9WL0tack04MkdiWkJEWDY2UXcwdlIyaHVrWk1KVlhLaEdkYmxGZHFxcHdj?= =?utf-8?B?RnFDdjBNR0ZtYXhKS2FxYnc1WlI1UG80QTFBcitZNnhNZmVidmphM0l0Ync1?= =?utf-8?B?WkNsSHFEUXJxN25jV1RzaUJkUmg1UCsxNHBkZGtGdU9uQU8yVVJjYnRWaFI0?= =?utf-8?B?UDhsLzFtYzhKc2JTMmhhL1BNcjRiVklGTkdUS2NiMGpaTDhGU1ZiMW5mckJV?= =?utf-8?B?bVVUL3Y4cGtsT1dXanV3azVNeVk4NDBWR200MndYMVdnckhjREV2RFh6dStN?= =?utf-8?B?Y1ZHSHVmeFprTFlYYjhTQ0c1ZUlPUXdqZGgrdnpDR3hKS2hyYWpuWGp1L3lO?= =?utf-8?B?VjFNNFBldG9pclc5aVNGSWk1alhBZXhpc2llKzdiUzRpNnJYTEhoajJjU043?= =?utf-8?B?QkpwYWl0L0RUN1d2ZkdyOUV4cGlNUjlVaTI3MHRTN1pFRzVtY1VMd2NyRThV?= =?utf-8?B?N3hDYTZmM0h0czJFN0Y5QnJhRFdLaEZmcDJUcFNrY3l5UFNlZnBueGF5VTZk?= =?utf-8?B?aWErSjVMS29pUlU5MTd3UlM2c1Q0cEdJdCt2WTNYMmsyVTdhVXJvM0JlTlBt?= =?utf-8?B?cEJ2RjFpUTgxWXFucEJHcEdBTlQ0b3FVQ1Y0RlBZbm1Fa3laSm5OVzhvLytI?= =?utf-8?B?RG4yNU5ucXBJQ2lkTllYa0tWVmtHNE5GU2x4LzVKcmVxV293cGl2Z0FtTWJ3?= =?utf-8?B?YnlFekJITWYwbzl3TjFWS1lXN1Mvc1F3aCt4SlZVZ0x3NThOekZhY0JOb1R4?= =?utf-8?B?ZTlFTGlqTGFMZEdSRDhjMlZSZEY0UDBaaHVwUVVBQ05OdmtLRzkvc3lnendV?= =?utf-8?B?K2czbURpV0NzbCtjTExrY0FEN096WXNIbWp1ZTlucEsxWFpLZ000WVRnNFVK?= =?utf-8?B?SlJUNitseTNYcEpPVTFUNk5WL0FNSnZrSmp6ZzFVOXA1KzRnUGhxakIrKzk4?= =?utf-8?B?L3F1dkwrWXEwYlNhTmYxSjRaTTJ0MWs3eGJlQXlpMkcwTTNua2xQYlZKMFFr?= =?utf-8?B?bG04cTNIT3dCSlhYMElRdklxV0tkeVQxODdiSVRyOTJCZlRSSUorWHdkelg2?= =?utf-8?Q?xcFZMcuoCUgzR6WE=3D?= X-OriginatorOrg: seco.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2b73f379-5026-4dda-31cc-08da14126d57 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:20.4306 (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: UzrFCLDlUfCnOwB404qsBUioFbsETUE68gYph3zhXGCQ+5AG6WgIgC1/xsvEKj1LNxzInx3r0a7vaHgTqpxwsw== 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 series adds support for loading all image types (Legacy, FIT (with and without LOAD_FIT_FULL), and i.MX) to the MMC, SPI, NOR, NET, FAT, and EXT load methods. It does this by introducing a helper function which handles the minutiae of invoking the proper parsing function, and reading the rest of the image. Hopefully, this will make it easier for load methods to support all image types that U-Boot supports, without having undocumented unsupported image types. I applied this to several loaders which were invoking spl_load_simple_fit and/or spl_parse_image_header, but I did not use it with others (e.g. DFU/RAM) which had complications in the mix. Here's some bloat-o-meter for j7200_evm_a72_defconfig with ext4 support enabled: add/remove: 1/0 grow/shrink: 2/4 up/down: 224/-232 (-8) Function old new delta spl_load - 176 +176 spl_fit_read 60 104 +44 spl_load_image_ext 364 368 +4 spl_nor_load_image 120 108 -12 spl_spi_load_image 280 232 -48 spl_load_image_fat 320 264 -56 spl_mmc_load 712 596 -116 Total: Before=264476, After=264468, chg -0.00% ext4 support is +48 bytes, because the original image support was so bare-bones (just legacy/raw images). For most boards with a few load methods (where one of them isn't ext4), this series should be no bloat or a net negative. However, in the worst case this series will add 150-180 bytes. I haven't tested most of this, so this series is marked RFC. I had a nand conversion in here as well, but dropped due to difficulties outlines in [1]. [1] https://lore.kernel.org/u-boot/c2ea7097-9e85-b9ec-e404-bd46eb83dd5b@seco.com/ Sean Anderson (7): spl: Add generic spl_load function spl: Convert ext to use spl_load spl: Convert fat to spl_load spl: Convert mmc to spl_load spl: Convert net to spl_load spl: Convert nor to spl_load spl: Convert spi to spl_load common/spl/spl.c | 61 ++++++++++++++++++++++++++++++++++++ common/spl/spl_ext.c | 24 ++++++++++----- common/spl/spl_fat.c | 36 ++++------------------ common/spl/spl_mmc.c | 73 ++++---------------------------------------- common/spl/spl_net.c | 24 +++------------ common/spl/spl_nor.c | 35 ++++----------------- common/spl/spl_spi.c | 48 +++++------------------------ include/spl.h | 30 +++++++++++++++++- 8 files changed, 137 insertions(+), 194 deletions(-) -- 2.35.1.1320.gc452695387.dirty