From patchwork Mon Oct 12 18:48:14 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adrian Alonso X-Patchwork-Id: 529346 X-Patchwork-Delegate: sbabic@denx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from theia.denx.de (theia.denx.de [85.214.87.163]) by ozlabs.org (Postfix) with ESMTP id F1BB0140DA8 for ; Tue, 13 Oct 2015 05:52:23 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id A363A4B872; Mon, 12 Oct 2015 20:52:22 +0200 (CEST) Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id qD9rDfKurzE4; Mon, 12 Oct 2015 20:52:22 +0200 (CEST) Received: from theia.denx.de (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 1F5934B809; Mon, 12 Oct 2015 20:52:22 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id D7D2B4B74E for ; Mon, 12 Oct 2015 20:52:18 +0200 (CEST) Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id F8WJQzatQU9j for ; Mon, 12 Oct 2015 20:52:18 +0200 (CEST) X-policyd-weight: NOT_IN_SBL_XBL_SPAMHAUS=-1.5 NOT_IN_SPAMCOP=-1.5 NOT_IN_BL_NJABL=-1.5 (only DNSBL check requested) Received: from na01-bn1-obe.outbound.protection.outlook.com (mail-bn1bon0135.outbound.protection.outlook.com [157.56.111.135]) by theia.denx.de (Postfix) with ESMTPS id 6804B4B672 for ; Mon, 12 Oct 2015 20:52:13 +0200 (CEST) Received: from BN3PR0301CA0001.namprd03.prod.outlook.com (10.160.180.139) by BN3PR0301MB1220.namprd03.prod.outlook.com (10.161.207.20) with Microsoft SMTP Server (TLS) id 15.1.293.16; Mon, 12 Oct 2015 18:50:58 +0000 Received: from BN1AFFO11FD005.protection.gbl (2a01:111:f400:7c10::160) by BN3PR0301CA0001.outlook.office365.com (2a01:111:e400:4000::11) with Microsoft SMTP Server (TLS) id 15.1.293.16 via Frontend Transport; Mon, 12 Oct 2015 18:50:46 +0000 Authentication-Results: spf=fail (sender IP is 192.88.158.2) smtp.mailfrom=freescale.com; freescale.mail.onmicrosoft.com; dkim=none (message not signed) header.d=none; freescale.mail.onmicrosoft.com; dmarc=none action=none header.from=freescale.com; Received-SPF: Fail (protection.outlook.com: domain of freescale.com does not designate 192.88.158.2 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.158.2; helo=az84smr01.freescale.net; Received: from az84smr01.freescale.net (192.88.158.2) by BN1AFFO11FD005.mail.protection.outlook.com (10.58.52.65) with Microsoft SMTP Server (TLS) id 15.1.293.9 via Frontend Transport; Mon, 12 Oct 2015 18:50:46 +0000 Received: from bluefly.am.freescale.net (bluefly.am.freescale.net [10.81.17.130]) by az84smr01.freescale.net (8.14.3/8.14.0) with ESMTP id t9CIoGxM024758; Mon, 12 Oct 2015 11:50:44 -0700 From: Adrian Alonso To: , Date: Mon, 12 Oct 2015 13:48:14 -0500 Message-ID: <1444675696-5075-8-git-send-email-aalonso@freescale.com> X-Mailer: git-send-email 2.1.4 In-Reply-To: <1444675696-5075-1-git-send-email-aalonso@freescale.com> References: <1444675696-5075-1-git-send-email-aalonso@freescale.com> X-EOPAttributedMessage: 0 X-Microsoft-Exchange-Diagnostics: 1; BN1AFFO11FD005; 1:olOPbPUWt+bQ3/nkQBRTFegWuhIFt7OGshmirlD7PIRuOxQi3VuoBRJRmpc+q1StqK4735wB65NrFtkZMbQiUq2eNCw1RgB7PfYBfbOm9ZBrGL4G+Z/yYUqw7nUhf+S7MzN8dSRwnw8Sr1+8mZHhLKv+/OGnfIIDKdVbVSHgwzN60KwjkyyKUagpWXl8ZsfggPdEW2/OeW6stlHZvym0IOVkBj/KAPWTVF4De8JLUqyhwn99VDKrBvhMLY/faB+Z1P5xjaPRU+pxRtJW5VkRHG0kSux4ZZRXKUYFlj3HZU1oY1joVORNGN1v2FNqg6EmsB+ln8Y1bNcClFfRdUhxuBSkNywIpkkgyu7XzgzgQnMg3XSp0inL+NJlDhtwDCUb3ouSfrARwuxq40gaN61mHA== X-Forefront-Antispam-Report: CIP:192.88.158.2; CTRY:US; IPV:NLI; EFV:NLI; SFV:NSPM; SFS:(10019020)(6009001)(2980300002)(1109001)(1110001)(339900001)(189002)(199003)(36756003)(11100500001)(5008740100001)(6806005)(50986999)(46102003)(575784001)(50226001)(104016004)(2950100001)(92566002)(5007970100001)(64706001)(47776003)(229853001)(86362001)(19580405001)(106466001)(5003940100001)(76176999)(77096005)(5001770100001)(97736004)(81156007)(50466002)(105606002)(107886002)(5001960100002)(19580395003)(48376002)(189998001)(87936001)(69596002)(85426001)(33646002)(4001430100001); DIR:OUT; SFP:1102; SCL:1; SRVR:BN3PR0301MB1220; H:az84smr01.freescale.net; FPR:; SPF:Fail; PTR:InfoDomainNonexistent; MX:1; A:1; LANG:en; MIME-Version: 1.0 X-Microsoft-Exchange-Diagnostics: 1; BN3PR0301MB1220; 2:T+YpG0DvQoV+mCW49PyYyHuMbQkZ9prVdujBKinqvKcKV+dOSXQN660AeWIrEOqSu6fRa50YtIP+tuQQxLZgJtYlPxLq8z/4UlXjWVtb4dr3kSIfkd7wWpA35OIU6Hxlp6zTW3FjmLAnt4ff4WnL6/GnxKkoFbkmsx50DPYDenI=; 3:mlx4sOVwSkCmJdD2krapsR7jQEKIieriRukIvwcJwV4XA/dlPa/oxddWGMq8je1knCMOb/ANtTsUvRxRrbeBu7bzVjAGk9iT3tae9/53qnW0/jZ1BktV7DMM9lUYA8hpyGOothijTDfDhhZ7RtLDiVX4EXh3L/Nvte8nAdpTvQNcT+ro1BHen28uepoxxfmsaFqvixvV+RSHjr8j0AkCTw5XgggZeZwh2Iaa8GGquhg=; 25:o+5ZR6VL6m33H5AllotAPXWj+cH3L5ML6FUv8r+6h2CtWpXqp7FeyIpmgI8dAtMUwSdNoI8dYN2cxHswaKFu0TsbDHlsIjFFlRKDAtT2TatCqnW8+RoPHdDKeyrvEshgtRpCNXR3T4i7XZSvn+OW7aYJEZYiVF6+1D+myNwyI2R8t7SGDL09ycly7b8zEJoebA8r80ZofzfptGyGpymPfQJxOED/Ir+oIxX6am6HAN0j11GPaY3JPr8/o3Rrc3N5zFWwA1Y7idq7GR6ZYjjsfA== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BN3PR0301MB1220; X-Microsoft-Exchange-Diagnostics: 1; BN3PR0301MB1220; 20:JR0sXkgrdMf8unLUtdW7Aw5I4dB3+IlA5JIXiYn18Krv0jf4rNOr8QCBW5mWpbKbs91d7HLjYq3DH9UsvPwJ1M7Dp+b06WSCMAVbjZWYEGxEykmceGK+cdL16qYYDt+/P9mvEd8Y3tr97aLCUh2t5PMiQ8qLbzcjczVrrG0/nvwZtei2yBbie+ehPuqLimwlut6XG6BHMo1rDrh6nvl0XQcm7T3Of5SwScz8vs5gkFYO1zlLUhDB2Ha3cvoNk+SMFzKZWj06g/0f8TSBiFhIX8X9GhjmGa3seutvYN5vqb2gcasifL4KsJ/79NvW7g6r5iS94k5wFWrahC4uD6sPNBFSBIe/yGKBbdqcEak7clc=; 4:42sGFtM3PrCq90ZmcpdYs3bUgBQHDJc3Gtj9yiTiuRQQ0l1EH2oTLlPzPVTmxQ8fueYKMhtYxDzZy6xGwb0eVy+8Q5JTpVljzrpGFZ4f99Xw6fara120f6TDEs/FbLd4TWlVBzO8yq26wEE9d3QKUiF7Z6q4eWVzfhH1Ibqgm+zW+vuJaljePHiZMh6nuM3lctpfNl0db0OhRZLhXTTlCgoKhecGe0x5TZ6b8nCsL2m98r5w9QtenA8Mls/hnPm8HqocrX+WpM1bfs1GIiJsrzb7aTNe4BzkWv4lMaz5AXpvK9SOY3xpE5NkeU2bDjN5TA7P1+U0+gucfhEjE2zr58l/J6S9xNyacZ7uec10yN0= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(101931422205132); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(601004)(2401047)(520078)(8121501046)(5005006)(3002001); SRVR:BN3PR0301MB1220; BCL:0; PCL:0; RULEID:; SRVR:BN3PR0301MB1220; X-Forefront-PRVS: 0727122FC6 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN3PR0301MB1220; 23:YTrFD/NrFhLhIbhdXbgKE7kmoHlFy75TH31vimf?= =?us-ascii?Q?yqkzekwL8sarV/AkFmXttfUjmK3MrSdC+1mC8Ukwg1C0Vh0E7OnWuDcY/0PG?= =?us-ascii?Q?qOg6B04MIi+8NlQZICtlKwdw/fwnEmszQpPfd3B/c7qzB15UTspBQ3kWmcvl?= =?us-ascii?Q?94S+zs5+Ms42eFb6evn6pZNRlOGwWeOW0TGEBc+lpQ9qv0oUaLupiSZux/2j?= =?us-ascii?Q?OqaULcC+S4f6r5nlKBkVphx4qbFdr+kwbgQ+QI3L7ltiY4KklbP0UxyCKx+r?= =?us-ascii?Q?2EIyGggtpnJRotaekBXB5Zua1i6J4sLfMwNdESj3FRzmOQZc2t6pgNC/F7k3?= =?us-ascii?Q?cBP+ea1GU6zDk8JG7qsT7K1MGkjDoecw2H7KpqAb4R/mTOmrYu015ff9Q2zm?= =?us-ascii?Q?QGGtZARAyCjBwcD6z87vHOd/Hgv4dY0p73ujHOnKfnKEWTm6taaZiW+TxI3t?= =?us-ascii?Q?JY4lV6qzLVPzswzkY37enEfzHma7KMEk/AInPCJckB0W1A3RA1Fo++rfmTQJ?= =?us-ascii?Q?bA/M16BNsBIb6XMZYJ76CIX6FHwBx2YU2eXNjXHkPg1FJq6bW0FKGJONQDUg?= =?us-ascii?Q?GrIAwpebDTkCR+6AcPYGZC6mRvaX6+vYBEHYfXEP70F3v2lEpkONo1a7vWfY?= =?us-ascii?Q?ucDY0mte3OAAHaSmzTOpcBFyHXxBNvxeiQisk/Pj5ObjIXZs3M0SsAO5aY3i?= =?us-ascii?Q?9Yjxfe4hbMqx5bynkbEkfgfgJXlYLWh6yJFrM4561lh8X+oiqWFfF87cYEFu?= =?us-ascii?Q?pdcIiUn1B6ekA32ZZrzelvs//tqwW9BstMh/pyR3hIvZOm9kiVPb/DunIzZS?= =?us-ascii?Q?ZPvrbRjWfIewZn7Bb/+977FQ6nox6KQKYiJP9JkcUzNE3UszlissUMJuRDWv?= =?us-ascii?Q?h0S2D/6DuMD+TMd3PPUk2vyQ2F1JIp/cRurr35bdrQF2u/fLnkXa4U/wauPS?= =?us-ascii?Q?oeYVB5NpeDoqu4CQQzpQkUjknDoJcGpD9MZOJhr34iDbmxjcDVOPdlfNdmHD?= =?us-ascii?Q?RcDLbznKbzTpsgD+JmPJyb+heGffAjbnrcjGyYwxd8ApxHXSKkzvNiPs02st?= =?us-ascii?Q?vVDNn8ITmMv7Ph6h0i7b7hYK4mHMytah6Vil27hYTRtk76WD7Lgibig5KUgq?= =?us-ascii?Q?nA2zsepDwyjOLsfxerQNXff4hRfQaNTJrVpeYJDKQb6bvrQf0h05bSA=3D?= =?us-ascii?Q?=3D?= X-Microsoft-Exchange-Diagnostics: 1; BN3PR0301MB1220; 5:LZ1N2va8zjBRkHDoBplprALNySSsjGsYukH0kc9c5aNO0ulGNNtClGUa40G4gjFxt+8VYSArv42Us7LJuYImx6udo40/5PsuPvbKj+DF7yQLEfJoZK+8YtKWb3FVLBvlTJpeoQEnCOVl9zVUK21K6A==; 24:9hNe3YKSO3BOgoQ8PsmEueyaY24J4vwiEhR9ch9Jl8iCdI3hoIySNMBMXEdDxQWKzwfmEs/7tYXAgAo8MIv4AW8/wTBmOTVm9XRO2KUaYRs=; 20:JZ9lmMWvT8KLS9VJc6+v9dFnQ143F7x3W1aPaeHdzmB4L8NRZt1iNkBHm9lN9pIcaICvFIn3ZMBUd8x0YKsVkg== X-OriginatorOrg: freescale.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Oct 2015 18:50:46.1752 (UTC) X-MS-Exchange-CrossTenant-Id: 710a03f5-10f6-4d38-9ff4-a80b81da590d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=710a03f5-10f6-4d38-9ff4-a80b81da590d; Ip=[192.88.158.2]; Helo=[az84smr01.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR0301MB1220 Cc: Fabio.Estevam@freescale.com, otavio@ossystems.com.br Subject: [U-Boot] [PATCH v3 08/10] imx: hab: use read_fuse for secure boot settings X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.15 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" Use read_fuse api fuction call to read secure boot fuse settings (enabled/disabled). Signed-off-by: Adrian Alonso --- Changes for V3: New patch in series arch/arm/imx-common/hab.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/arch/arm/imx-common/hab.c b/arch/arm/imx-common/hab.c index 9ee0f12..ee2da01 100644 --- a/arch/arm/imx-common/hab.c +++ b/arch/arm/imx-common/hab.c @@ -5,6 +5,8 @@ */ #include +#include +#include #include #include #include @@ -260,11 +262,16 @@ uint8_t hab_engines[16] = { bool is_hab_enabled(void) { - struct ocotp_regs *ocotp = (struct ocotp_regs *)OCOTP_BASE_ADDR; - struct fuse_bank *bank = &ocotp->bank[0]; - struct fuse_bank0_regs *fuse = - (struct fuse_bank0_regs *)bank->fuse_regs; - uint32_t reg = readl(&fuse->cfg5); + struct imx_sec_config_fuse_t *fuse = + (struct imx_sec_config_fuse_t*)&imx_sec_config_fuse; + uint32_t reg; + int ret; + + ret = fuse_read(fuse->bank, fuse->word, ®); + if (ret) { + puts("\nSecure boot fuse read error\n"); + return ret; + } return (reg & 0x2) == 0x2; }