From patchwork Mon Aug 20 15:46:19 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Neil Stainton X-Patchwork-Id: 959871 X-Patchwork-Delegate: trini@ti.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=asl-control.co.uk Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=ApplicationSolutions.onmicrosoft.com header.i=@ApplicationSolutions.onmicrosoft.com header.b="bt+jIU/Y"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 41vLy81843z9s0n for ; Tue, 21 Aug 2018 03:53:20 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id E2061C21E4F; Mon, 20 Aug 2018 17:52:34 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=SPF_HELO_PASS, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id C6BCBC21E35; Mon, 20 Aug 2018 17:52:15 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id DF486C21C51; Mon, 20 Aug 2018 15:46:22 +0000 (UTC) Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-eopbgr70047.outbound.protection.outlook.com [40.107.7.47]) by lists.denx.de (Postfix) with ESMTPS id 49EE2C21C2F for ; Mon, 20 Aug 2018 15:46:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ApplicationSolutions.onmicrosoft.com; s=selector1-aslcontrol-co-uk0i; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=zCZPfimpKphznhEsgviOMR1qYGG6g7oqijxj4Sor+ww=; b=bt+jIU/YlXCpAxw+izoDC6ZtpmdblAXEjRaWL4WicT3m+oAJtFUHHphpbEtTx+7/Zec0AfA0ZGtdkFdQKMMdvJ+QyxCKtwv6YTOOx6L7UTOW+67W000whBP68bmxLIJOQi2fDM+YW+Uyg7BrBcX2m4rrJkMy9wrJDPMoazwIFXg= Received: from VI1PR0602MB3632.eurprd06.prod.outlook.com (52.134.2.151) by VI1PR0602MB3534.eurprd06.prod.outlook.com (52.134.5.31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1059.19; Mon, 20 Aug 2018 15:46:20 +0000 Received: from VI1PR0602MB3632.eurprd06.prod.outlook.com ([fe80::3049:6a82:36ea:607d]) by VI1PR0602MB3632.eurprd06.prod.outlook.com ([fe80::3049:6a82:36ea:607d%2]) with mapi id 15.20.1059.023; Mon, 20 Aug 2018 15:46:20 +0000 From: Neil Stainton To: "u-boot@lists.denx.de" Thread-Topic: [PATCH] u-boot: align cache flushes in load_elf_image_shdr to line boundaries Thread-Index: AdQ4m7FMBJjJAThoTCe0/8r4z97v7g== Date: Mon, 20 Aug 2018 15:46:19 +0000 Message-ID: Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=nstainton@asl-control.co.uk; x-originating-ip: [81.145.204.194] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; VI1PR0602MB3534; 6:Q5bi0hkbfaJ6VyrV2yr4WMd201ENCeQhSr34nUWr34rgvG7mKjoGdncH931HcpnhVDloutxZpt/YwBgjleZY5o5jV6RdF0aNssbfNTsxsO50YJ2grwNgD3OGvuwI7o30vmR79qD/5/AKOjKh2TiGQ+NyaUmTkB4VPiSYZBhBG93wYlqY0WFKt9MXHYvo844iAASzDvoK0lfq2SscTcTc4Zm3BgyXS+CFJFS2oVtW0M1HT592fgbNVW3qmTHTc6ApEvkQakOP8iFGJ6gBfRZI28M2h2lr0aaMCUdlLVmmvg2OiU5uLeZA79oampGVBGFsP+xsWfKHVzI7nfW/LXo+gF4fOUlAgO/X4aST4OyWS0/V19viF/sf6sEA5UOvGW8ygkHcXlvc/It74OH1ZPBJcqV6aMpdWnjcBOXtIZj0hhRBmDocmTk/oW7Sp5UMy+0P2ugRxdkFrZZj9kp4K4ua5g==; 5:jz4lcReLA/SLUTfTtiSk5j0GEVl9nhm7XJ2WLvMf4i/ehHMW20L+JJcTmqXHpk7YRDTood1AJFlLlp5tMQuyeAzYI7DE5FxuwLQpAObrsaX/Tvyl6w3kceaO8rHe0ffoBVoYhG86YHKd5IVusPQB2hdM5i/j59RDiGWWJVk6Fu8=; 7:KoVgKtJxvwODD9GRichAbWtqiw12jUtOSq2Qe1pezUPplc0V1gwW8AfkFLF/FqDC/njvgzH4AlPisF4hUiuNW3fqDwFO60p3N9QORDkz2DwwtBnILAkuHDEyjuOstKJNWfqotTDpnApxJWCLw0qrI6B5CvoKgEp0fEJbXKmxm1miNbToEt5X2MDwOU47v6sSXhBx2a0t234SQYfNe3MNmbmZX9gRJEdS9WgzE5vHG23ocwWrSp3tZPkCA3tjGtdA x-ms-exchange-antispam-srfa-diagnostics: SOS; x-ms-office365-filtering-correlation-id: eda8c75f-035f-4c0f-fe36-08d606b412ee x-microsoft-antispam: BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989137)(4534165)(4627221)(201703031133081)(201702281549075)(8990107)(5600074)(711020)(2017052603328)(7153060)(7193020); SRVR:VI1PR0602MB3534; x-ms-traffictypediagnostic: VI1PR0602MB3534: x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(163750095850); x-ms-exchange-senderadcheck: 1 x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(6040522)(2401047)(5005006)(8121501046)(93006095)(93001095)(3231311)(944501410)(52105095)(10201501046)(3002001)(149027)(150027)(6041310)(20161123560045)(20161123564045)(20161123562045)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(201708071742011)(7699016); SRVR:VI1PR0602MB3534; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0602MB3534; x-forefront-prvs: 0770F75EA9 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(366004)(39840400004)(396003)(136003)(346002)(376002)(199004)(189003)(102836004)(316002)(478600001)(486006)(6506007)(26005)(6436002)(256004)(7696005)(186003)(8936002)(5660300001)(476003)(33656002)(1857600001)(6916009)(5640700003)(55016002)(14444005)(2900100001)(14454004)(99286004)(68736007)(53936002)(25786009)(6116002)(2906002)(305945005)(9686003)(74482002)(74316002)(3846002)(97736004)(81156014)(81166006)(2351001)(2501003)(105586002)(66066001)(106356001)(5250100002)(8676002)(86362001)(7736002); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0602MB3534; H:VI1PR0602MB3632.eurprd06.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:3; received-spf: None (protection.outlook.com: asl-control.co.uk does not designate permitted sender hosts) x-microsoft-antispam-message-info: sszd6e5bf8zhYzv3CAF7cfQ5aXWKeKuVGS6pSeQiN6vOTg4h2Su4XraQUV0mzMK4jF6p1R2y6PcDNQK7gpJ5uYPOZwI2kCOu/mTlsdVI3rf8FcASiKLVE+cVN+VvOzW8zUHV8QouXqO1ZEShY1NjF6Y6pjXLqSjE8c76jgLLxrQWdfM86euhKG3bR8qisZedEsG0X73al933ClpBE8JDDuHTklUHtqv9E+U9P4MjYAw3UxO/ldpM8zUQKqul1iBP/72i7FsoTPiAyDC0/heJfDUsCYXr3wDy6FcWBDkdynGCiols1Y13R/YKA5ITJzuZ9FlTHL11iqqM9voYjZEKCJZSIKxypAViAFbauYfZiww= spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM MIME-Version: 1.0 X-OriginatorOrg: asl-control.co.uk X-MS-Exchange-CrossTenant-Network-Message-Id: eda8c75f-035f-4c0f-fe36-08d606b412ee X-MS-Exchange-CrossTenant-originalarrivaltime: 20 Aug 2018 15:46:19.8794 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b0513d2f-b8be-4d76-ba92-1b4fa31fade3 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0602MB3534 X-Mailman-Approved-At: Mon, 20 Aug 2018 17:52:14 +0000 Subject: [U-Boot] [PATCH] u-boot: align cache flushes in load_elf_image_shdr to line boundaries X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 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" Prevent cache warning messages when using the 'bootelf' command on an Arm target. Round down each section start address and round up the respective section end to the nearest cache line. --- Currently when using bootelf to load an image on Arm, several warnings such as the following appear in the console: CACHE: Misaligned operation at range [87800000, 8783c5e0] CACHE: Misaligned operation at range [8783c5e0, 8784b3e0] Signed-off-by: Neil Stainton --- cmd/elf.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/cmd/elf.c b/cmd/elf.c index eafea38..1199e5d 100644 --- a/cmd/elf.c +++ b/cmd/elf.c @@ -141,7 +141,9 @@ static unsigned long load_elf_image_shdr(unsigned long addr) memcpy((void *)(uintptr_t)shdr->sh_addr, (const void *)image, shdr->sh_size); } - flush_cache(shdr->sh_addr, shdr->sh_size); + flush_cache(rounddown(shdr->sh_addr, ARCH_DMA_MINALIGN), + roundup((shdr->sh_addr + shdr->sh_size), ARCH_DMA_MINALIGN) - + rounddown(shdr->sh_addr, ARCH_DMA_MINALIGN)); } return ehdr->e_entry;