From patchwork Fri Dec 7 22:31:49 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Breno Matheus Lima X-Patchwork-Id: 1009681 X-Patchwork-Delegate: sbabic@denx.de 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=fail (p=none dis=none) header.from=nxp.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=nxp.com header.i=@nxp.com header.b="XSV25nD5"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 43BRzY1msjz9s2P for ; Sat, 8 Dec 2018 09:32:04 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id 030F2C227EE; Fri, 7 Dec 2018 22:31:55 +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 5F166C21F59; Fri, 7 Dec 2018 22:31:53 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 214ACC21F59; Fri, 7 Dec 2018 22:31:52 +0000 (UTC) Received: from EUR02-HE1-obe.outbound.protection.outlook.com (mail-eopbgr10067.outbound.protection.outlook.com [40.107.1.67]) by lists.denx.de (Postfix) with ESMTPS id 62C4BC21ECC for ; Fri, 7 Dec 2018 22:31:51 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/hhmk/2bOw3CS4Iq5nK/icHLhCT8Z3DSABCWlcsIivM=; b=XSV25nD5lPvLQO8gfdcV7cMV1A4ixalfvOBMrHKRal86COhx3Wy8K7KS3kXZrkMvYT3PAFK7LotZHQW6C/P6OnoaxGHTgCCSK98SGs3P+0aV17eIXAkFKu1PIQaiuo/ntlkgS34Ni2LQFoaUKVPyU+RHsb7NQkcXBcv14vIpqT8= Received: from DB7PR04MB4636.eurprd04.prod.outlook.com (52.135.138.158) by DB7PR04MB5227.eurprd04.prod.outlook.com (20.176.236.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1404.17; Fri, 7 Dec 2018 22:31:49 +0000 Received: from DB7PR04MB4636.eurprd04.prod.outlook.com ([fe80::b576:a8f3:f910:14b0]) by DB7PR04MB4636.eurprd04.prod.outlook.com ([fe80::b576:a8f3:f910:14b0%4]) with mapi id 15.20.1404.021; Fri, 7 Dec 2018 22:31:49 +0000 From: Breno Matheus Lima To: "sbabic@denx.de" , Fabio Estevam Thread-Topic: [PATCH] imx: hab: Convert non-NULL IVT DCD pointer warning to an error Thread-Index: AQHUjnykrkuGR1N9xkWV/j7fjEyk6g== Date: Fri, 7 Dec 2018 22:31:49 +0000 Message-ID: <20181207223705.12287-1-breno.lima@nxp.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [177.221.114.206] x-clientproxiedby: BYAPR07CA0022.namprd07.prod.outlook.com (2603:10b6:a02:bc::35) To DB7PR04MB4636.eurprd04.prod.outlook.com (2603:10a6:5:36::30) authentication-results: spf=none (sender IP is ) smtp.mailfrom=breno.lima@nxp.com; x-ms-exchange-messagesentrepresentingtype: 1 x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; DB7PR04MB5227; 6:om2i9fL2AJ+YaN0GqQGAn5ooYB1lYK4BwkEOqSeTcuxQu6cfQ6U7qGIsfrq/D3Jz6BYcueA69bwrhhh7iN03v90mnrbbjO/qc5U3bEnIbAkP7Om127rgDD82Ai5FzSKQ4xVcjvHyqf9vyO4mg+1eELD348v4AHi28hcZr3mrokAxaFoOAoaKjtgSGmdTs6IFFw1ShSH+JSvGfcv98i18O47IUKoSUcss/QndmeRgi04ph725kAOnTXFl7/Nf2mkxcEQCzo0SmCi937jztfSux5GmsoS6caEoXof51gbS7Szk2LalTC8t3SKjyULzJj9T87codpEwA9Zlb2wNR0+yGBjxrd2dCaWRDHy9B7xOhc4FGPChDSSBt5V69res47dCYQ7OLTIxmuXb2PZQxXovbQu79J5cPfbwlHr6AnQrIVq+wHetfjYdJ7Ovm16hbwZz7QsiOJmm1ci5d3mQdwsb+g==; 5:pq/Ss0gsb7vM6IsZO5kNGFItV3ukZUV5EKtOO2HeoZPSHU8n6jRElxHfZGl9uPxDS9R2+51y6AXTmBkD3wcoDbt8illM/ISp9xF+r38VdB7c7j/gFN7P7E4tKrAhoT3VNT26G7qUug93+UUj8S+wNZX8pSKoKQ5qdvmdFhSjlRA=; 7:l+KTLlbzC2dYRsdH0TaWNU8g1BLuqMv2LivpU53BA7RhLZ5kC5WpmUUo4Pci2cJ6C38+QWjbnJin8pjL5wxdNZWVR4nNUkGlQBHd3efHRjdUXo9Mf5yAT2mAmYXPY5wk52uXFfwvCqLqhrwHcCCOiQ== x-ms-office365-filtering-correlation-id: 541e0648-7459-4e96-3972-08d65c93c6ff x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390098)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600074)(711020)(4618075)(2017052603328)(7153060)(7193020); SRVR:DB7PR04MB5227; x-ms-traffictypediagnostic: DB7PR04MB5227: x-microsoft-antispam-prvs: x-ms-exchange-senderadcheck: 1 x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(10201501046)(3231455)(999002)(944501520)(52105112)(93006095)(93001095)(3002001)(6055026)(148016)(149066)(150057)(6041310)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(20161123564045)(201708071742011)(7699051)(76991095); SRVR:DB7PR04MB5227; BCL:0; PCL:0; RULEID:; SRVR:DB7PR04MB5227; x-forefront-prvs: 0879599414 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(376002)(396003)(346002)(39860400002)(366004)(136003)(199004)(189003)(186003)(2501003)(4326008)(71200400001)(105586002)(106356001)(71190400001)(68736007)(476003)(2616005)(81156014)(81166006)(26005)(86362001)(486006)(53936002)(6512007)(8676002)(3846002)(39060400002)(97736004)(6116002)(1076002)(8936002)(54906003)(305945005)(110136005)(99286004)(7736002)(2906002)(25786009)(6436002)(14454004)(256004)(6636002)(6486002)(52116002)(66066001)(5660300001)(478600001)(102836004)(36756003)(386003)(217873002)(14444005)(316002)(6506007); DIR:OUT; SFP:1101; SCL:1; SRVR:DB7PR04MB5227; H:DB7PR04MB4636.eurprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) x-microsoft-antispam-message-info: qI/PYWhBIkXipL5EE09i+Tlg9OWryLqwd7wn40bOXNQ7Bv3207fKp7SuK5aZNkdvTqMa0j48YEOU7OWSDfYWb47uEtQiMd1CMAYm+zeiBY4VkgxGekuJLwQ9s2fU4/NTWefVVDczz4Ci1B6mGCpmz55QpYArx3zYYdEAdUivGYSd6il6MC3pL/YOhfnzYNI/tgM/+uR49WGbiUMCDg5QwdEeSml9yd4FPV+VGjz1OET8zuEr/HaXicx4K6zFMgRyXTwzw0cc72jjp6saQf+5NM7Had5tmWXzyRcmw3NXC1Lf/7VPPive/cN3Fa1a4fzVnpbT7S0AQ9Qdz2+Utpjy6mbBVOiSOZbRfizMvCTrrvU= spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 541e0648-7459-4e96-3972-08d65c93c6ff X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Dec 2018 22:31:49.3220 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR04MB5227 Cc: "u-boot@lists.denx.de" , Breno Matheus Lima Subject: [U-Boot] [PATCH] imx: hab: Convert non-NULL IVT DCD pointer warning to an error 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" The following NXP application notes and manual recommend to ensure the IVT DCD pointer is Null prior to calling HAB API authenticate_image() function: - AN12263: HABv4 RVT Guidelines and Recommendations - AN4581: Secure Boot on i.MX50, i.MX53, i.MX 6 and i.MX7 Series using HABv4 - CST docs: High Assurance Boot Version 4 Application Programming Interface Reference Manual Commit ca89df7dd46f ("imx: hab: Convert DCD non-NULL error to warning") converted DCD non-NULL error to warning due to the lack of documentation at the time of first patch submission. We have warned U-Boot users since v2018.03, and it makes sense now to follow the NXP recommendation to ensure the IVT DCD pointer is Null. DCD commands should only be present in the initial boot image loaded by the SoC ROM. Starting in HAB v4.3.7 the HAB code will generate an error if a DCD pointer is present in an image being authenticated by calling the HAB RVT API. Older versions of HAB will process and run DCD if it is present, and this could lead to an incorrect authentication boot flow. Signed-off-by: Breno Lima Reviewed-by: Fabio Estevam --- arch/arm/mach-imx/hab.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/arch/arm/mach-imx/hab.c b/arch/arm/mach-imx/hab.c index b88acd13da..e07076c726 100644 --- a/arch/arm/mach-imx/hab.c +++ b/arch/arm/mach-imx/hab.c @@ -560,8 +560,10 @@ int imx_hab_authenticate_image(uint32_t ddr_start, uint32_t image_size, } /* Verify if IVT DCD pointer is NULL */ - if (ivt->dcd) - puts("Warning: DCD pointer should be NULL\n"); + if (ivt->dcd) { + puts("Error: DCD pointer must be NULL\n"); + goto hab_authentication_exit; + } start = ddr_start; bytes = image_size;