From patchwork Tue Aug 16 06:41:41 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stefan Herbrechtsmeier X-Patchwork-Id: 1666685 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.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=) Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=weidmueller.onmicrosoft.com header.i=@weidmueller.onmicrosoft.com header.a=rsa-sha256 header.s=selector1-weidmueller-onmicrosoft-com header.b=tWmcNCti; dkim-atps=neutral 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 ECDSA (P-384)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4M6M6G2FwWz1yft for ; Tue, 16 Aug 2022 16:43:02 +1000 (AEST) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 27FF984228; Tue, 16 Aug 2022 08:42:39 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=fail (p=none dis=none) header.from=weidmueller.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (1024-bit key; unprotected) header.d=weidmueller.onmicrosoft.com header.i=@weidmueller.onmicrosoft.com header.b="tWmcNCti"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id B746E848E1; Tue, 16 Aug 2022 08:42:32 +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=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_PASS, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.2 Received: from EUR03-VE1-obe.outbound.protection.outlook.com (mail-eopbgr50057.outbound.protection.outlook.com [40.107.5.57]) (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 0338684512 for ; Tue, 16 Aug 2022 08:42:27 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=weidmueller.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=stefan.herbrechtsmeier-oss@weidmueller.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TyAVWodrZXfrvS7iGh13dCjYpQ27VKeUHt6E/hgijACQe0XQdhO+KPsCsLs/BxuRiq/WfL5cCy+c8wvUCzt5d9TTgzPdGKVH0h3tdX15gzD6SW0TZo/olv16DIeq16ChFX/otc6CumZXrHZ0x+TZYyIw3a4vZ2zhWglzC72Gk9BWeYm+YlCl2lxplW/9bEef/0srpN6poHO1N70B374j4M4t+mWa01i/aFi0G+bzopPUiabDWosb1ksf2uq+wMQuyn9gJiH1iXBzms8lDrG6jbelrvgb1eEkV38J80HFK/47/HKGcvjxx6q4E1NkZD2oNww5dlbIqkkXa/OA90Em/A== 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=UNPQf20GG0Fu0o+pUfUf5FyTWEC6vY7fpKp4q387xsU=; b=XOQt6BHhh2jOR615tddS/ucNRyhMg5PFZrmGkiHU5wTVHkd5ynTL1OMZwIW5eZnj16GAigQffaoNmCooiuLJ4jPYjzdVo3wrq1xIfeb6aqXTgGovcbC6mytRhlwdrUJ2F2EJadplm/q6gpCTwefvwf+GJ4g/xIMtOoGWdUzWUjU6G2k+O03e5SUBq9JvNu/hZehdiSJOYoJ09rXG0dKrW4VDCyl03YjMWD0Lkii45mD3u8RvZzjF9XFc14hhBKu6pKO++6gWFTMOGNg1ZllP/3OSvEMfFjEXuklLhctxSxJa4fwm+kaLmsLY7HawMYS49J54qdfc+kIgAnSFFZiJng== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=weidmueller.com; dmarc=pass action=none header.from=weidmueller.com; dkim=pass header.d=weidmueller.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=weidmueller.onmicrosoft.com; s=selector1-weidmueller-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=UNPQf20GG0Fu0o+pUfUf5FyTWEC6vY7fpKp4q387xsU=; b=tWmcNCtiQdcr0GRlBy+2rW7Kof2g1VXGo8X971sbZJ/HdkbC+27ErdYnVx/ReKHZ0EuGA0NqFr6vpkb2DHNa0/4tdYMYEFg1kWkNSFSAlq+IT2/wv7F5gmpLYIY8fg3uyAbLTxJi1e8z52Du4yJ/TBWX3xlr55myMG5ReOaq/10= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=weidmueller.com; Received: from PAXPR08MB6969.eurprd08.prod.outlook.com (2603:10a6:102:1d8::23) by VE1PR08MB4685.eurprd08.prod.outlook.com (2603:10a6:802:ae::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5504.25; Tue, 16 Aug 2022 06:42:25 +0000 Received: from PAXPR08MB6969.eurprd08.prod.outlook.com ([fe80::f95b:2e64:9ee6:4d44]) by PAXPR08MB6969.eurprd08.prod.outlook.com ([fe80::f95b:2e64:9ee6:4d44%3]) with mapi id 15.20.5525.011; Tue, 16 Aug 2022 06:42:25 +0000 From: Stefan Herbrechtsmeier To: u-boot@lists.denx.de Cc: Stefan Herbrechtsmeier , Alper Nebi Yasak , Heiko Thiery , Simon Glass Subject: [PATCH v3 03/13] binman: Disable compressed data header Date: Tue, 16 Aug 2022 08:41:41 +0200 Message-Id: <20220816064151.9848-3-stefan.herbrechtsmeier-oss@weidmueller.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20220816064151.9848-1-stefan.herbrechtsmeier-oss@weidmueller.com> References: <20220816064151.9848-1-stefan.herbrechtsmeier-oss@weidmueller.com> X-ClientProxiedBy: AS9PR06CA0744.eurprd06.prod.outlook.com (2603:10a6:20b:487::19) To PAXPR08MB6969.eurprd08.prod.outlook.com (2603:10a6:102:1d8::23) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 89a52549-bb19-4a60-4e1a-08da7f527acd X-MS-TrafficTypeDiagnostic: VE1PR08MB4685:EE_ X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: v1b43/TsoVfsMMbwFECTOU8fk/EvMNYbaX7Z7EnatazhhCV4vuSFWboCBLUb9l0TWmjzoOy9S1qt5cb6R0PpMSl27l7OW93YcGtBnpYVoQfW5UQczJWfgxLgIGbltT6Dam4OitdYM7elV3yZNzvb74yMvvLuCgUM4y66DHZQS4h3lji9gZlcji5iMu5cHUbuksb5/H/gXDJWwrAg7PxbU107GEtBNOZl7O24/DcafL6G+xhwa77ILfRbHRu1Uay1tuxgAZAEMMSsyyIZS7HAXg2zDVCkXKgr2kxrlON0cyDssCdP9aexzccc4kfrTlERfkLsAidJK4+IDMtMJ6mlbNG3JbQdTYM0ns4fkmGqV896LF8pTz717lmTDZl6NZ8Yl+mokslpqZcOuSymAcVYLUSsB5y7MV7a1u/WSHonC+tHCDHAKt3U3Vl+n1oX+d1W/ggus4AZ8h0AdFmMMt577wBCGGi77bn+Dl5fPliJAGccOWxrDvtgdpY3XtmBLu9sCLR1Dxl5bYCT1Bk0XhBaNm4RxjES/NYLOWxvu7P/ldsOymTFHCh8u5M0YiDj6Olceh7s4lJ48UuMYsAExaQKLUk3tKf0ir2QgaO2mXGiZJrjweOQ2lDllYZUlThxA3MEAjHF8YuUIq0eN+s5NbyafGm2faAQNtQmOJnU+PpeDO7t9hlpICGXWu50u52lu7upkGXkGc1pWLyz8TxvilL67gW7QwHdxVPoxFZyfITU0uO5krjfk4WUoI1A6m8lVRiQ+Ih4C06elk+2AJA8u7Xs3reaHRv4S2uPjjrdb/kHqvo= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PAXPR08MB6969.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230016)(4636009)(136003)(366004)(396003)(346002)(376002)(39860400002)(86362001)(38350700002)(38100700002)(36756003)(316002)(8936002)(41300700001)(4326008)(66946007)(5660300002)(1076003)(66476007)(478600001)(8676002)(66556008)(6486002)(6512007)(26005)(52116002)(83380400001)(6506007)(2906002)(6666004)(186003)(2616005)(6916009)(54906003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: LWrq50pNXgRbIxPGz1RB03E2RnoHm01yzOrzArLYm7dX4yvQSza3gH9S3C7fIm2lQuQYAq/kMyMfYIiPNRQW1UzxgEVP2zq/AaQ9lsqHaCFCgUgwdVtbRCnesheIlD9tNGvhf/gEztPMku2i49n+bQApKdqSffKxfPQZvWgxgXNO7CNG/18vD908SPRWB386GsxcljukW7ze6MSqc7oKJeejNhGXPRy4+ONobFY0e69i04lqxGFfxTymyvGTGXi6o2a7eSipRQl5QSVxtPxsMWMpwhmPEXzaRkb480jl1oIOdeqCHNlWkoFWliMAlskFt/+vx+vG3fLNR4VBjrzMGJGHRtJdaKkD25+jCaSLurnQOhukMnRIfHWHrJC7xqB1n1AgLPxmthAb0Qm293CUSTPE6+dFVP99ai3BwLRl09ea+eOgy3wQHfmVkiInRu/v2mo3YoM3UGSckdcJL4IKJQolbEKmDsTusJyqTXFZTmyijJT/ubi4UMaEAk8u8oilJ53tJQ2PtQNM5RL9TEXrzR1Y8In1gkBggFEGNQSWkS8FPvKGZpqjup8adtMxnnhx4qz0Kc4yrEP9J9S6ti2EBre5IhuZntWhZtGN6PV7bVmd7+yQ1WLM3KjjNREXXI6bn11lm/Em9hyfWQK/DcxsyDMeooH4quN1LgQB+UecEFobv1kBx835WIYCfIkEPx4/HLuFkZZE9Bi6kuE7IUxlkGFk/23SoLWPhfx3a5eUAYZflcLNx9yR6DK2LP/jMGiX3XziDYkOkDkpmpAhrEEi3DJ8eIWy2gmTZgPjcJCupwN3/wNyq8OQlNoYrs96Ge1ZCKkNk7r+1XQsmwNBxVlha9ooPLG/LJzLhzZurJ8RMuE4CDVqXHBShvBgGsFYvnPrdPjKjSTQK35lJnsbcPI1/u8DglV1X2agb+mmUfObppqPC9LctAUhCnPuQ7qIRwQf0/mkPtCHSZDbbqrcQQ08nLbPCNzsYAa2CP4nLkSh2ELA0gZrHlj3jHygspHW6aI5SLreGonB7FLVvGeTtVol3/C1yLbkQ5zMAYZOEGZQkzW5DWwEZHR6+GKK3RAyBHJPAuOVy1Ou1i3e55jHeMkcD390u69frIHpi0gdJhMej0FLHdOWukgW7VfX0ALy86vihU7eqs2b1ZNPmmaDLKHQ8eRO3p8awn3TAMmwanENmVR8VTcR/gr4lQzED06vJBegrDtka02B1t9WDxeHQW5Iz2Zq+Ttn8+wH7iuzX4WBKpit8tO2Ty07jq0APKeT3rw/ABUxGIsPWjLuBQ8fNW3woiyCIasm1DUjKEBFyzJATqik+PDKMr4cZiqn+IbO+ijOh2mHncMZOEOVPvGAqUaa+ZMqRT13aG9lcrvAQa7LVfgil5CQyPOBPKgGh1fftFhImD8Lmf4ltX7dY+LdkXjg4yr7cqJw8/pZmhAxn8rIjH3mUrPDzThqd/qStmhMd9nNcIM7inbWhgGE4NEjnJ8NNRm7QdOUF+9T2g7JbbxG3UL9WIYCpBsa8VdLEMghXS5wZIAVQ8cw0tFg+ODZHmuSGSWRSemq+Dvsbq/HYTxONhYYDI33G5suwnDPTpw84Hwao9JU8GxO67ygaSWpnUuJSg== X-OriginatorOrg: weidmueller.com X-MS-Exchange-CrossTenant-Network-Message-Id: 89a52549-bb19-4a60-4e1a-08da7f527acd X-MS-Exchange-CrossTenant-AuthSource: PAXPR08MB6969.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Aug 2022 06:42:25.1761 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: e4289438-1c5f-4c95-a51a-ee553b8b18ec X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: n8s9noWG4MarQS15BlVKovl91GBFGStZDhNe720upZbfDh86lp5W9xxidA6/v5tg3Yy1wYQXQd7iVWEZ0yJeWw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB4685 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.6 at phobos.denx.de X-Virus-Status: Clean From: Stefan Herbrechtsmeier Disable the compressed data header of the utilities to compress and decompress data. The header is uncommon, not supported by U-Boot and incompatible with external compressed artifacts. The header was introduced as part of commit eb0f4a4cb402 ("binman: Support replacing data in a cbfs") to allow device tree entries to be larger than the compressed contents. Signed-off-by: Stefan Herbrechtsmeier --- Changes in v3: - Added tools/binman/entry.py | 2 +- tools/binman/etype/section.py | 3 ++- tools/binman/ftest.py | 18 +++++++++++------- 3 files changed, 14 insertions(+), 9 deletions(-) diff --git a/tools/binman/entry.py b/tools/binman/entry.py index e3767aefa7..a45aeeaa59 100644 --- a/tools/binman/entry.py +++ b/tools/binman/entry.py @@ -1079,7 +1079,7 @@ features to produce new behaviours. self.uncomp_data = indata if self.compress != 'none': self.uncomp_size = len(indata) - data = comp_util.compress(indata, self.compress) + data = comp_util.compress(indata, self.compress, with_header=False) return data @classmethod diff --git a/tools/binman/etype/section.py b/tools/binman/etype/section.py index bd67238b91..0a92bf2386 100644 --- a/tools/binman/etype/section.py +++ b/tools/binman/etype/section.py @@ -777,7 +777,8 @@ class Entry_section(Entry): data = parent_data[offset:offset + child.size] if decomp: indata = data - data = comp_util.decompress(indata, child.compress) + data = comp_util.decompress(indata, child.compress, + with_header=False) if child.uncomp_size: tout.info("%s: Decompressing data size %#x with algo '%s' to data size %#x" % (child.GetPath(), len(indata), child.compress, diff --git a/tools/binman/ftest.py b/tools/binman/ftest.py index 1b468d8e6d..d082442bec 100644 --- a/tools/binman/ftest.py +++ b/tools/binman/ftest.py @@ -1967,7 +1967,7 @@ class TestFunctional(unittest.TestCase): self._ResetDtbs() def _decompress(self, data): - return comp_util.decompress(data, 'lz4') + return comp_util.decompress(data, 'lz4', with_header=False) def testCompress(self): """Test compression of blobs""" @@ -4449,15 +4449,19 @@ class TestFunctional(unittest.TestCase): rest = base[len(U_BOOT_DATA):] # Check compressed data - section1 = self._decompress(rest) - expect1 = comp_util.compress(COMPRESS_DATA + U_BOOT_DATA, 'lz4') - self.assertEquals(expect1, rest[:len(expect1)]) + expect1 = comp_util.compress(COMPRESS_DATA + U_BOOT_DATA, 'lz4', + with_header=False) + data1 = rest[:len(expect1)] + section1 = self._decompress(data1) + self.assertEquals(expect1, data1) self.assertEquals(COMPRESS_DATA + U_BOOT_DATA, section1) rest1 = rest[len(expect1):] - section2 = self._decompress(rest1) - expect2 = comp_util.compress(COMPRESS_DATA + COMPRESS_DATA, 'lz4') - self.assertEquals(expect2, rest1[:len(expect2)]) + expect2 = comp_util.compress(COMPRESS_DATA + COMPRESS_DATA, 'lz4', + with_header=False) + data2 = rest1[:len(expect2)] + section2 = self._decompress(data2) + self.assertEquals(expect2, data2) self.assertEquals(COMPRESS_DATA + COMPRESS_DATA, section2) rest2 = rest1[len(expect2):]