From patchwork Wed Sep 28 10:19:02 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Gaurav Jain X-Patchwork-Id: 1683802 X-Patchwork-Delegate: sbabic@denx.de 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=nxp.com header.i=@nxp.com header.a=rsa-sha256 header.s=selector2 header.b=QM0OnqYs; 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) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4McstS0pxVz1ypH for ; Wed, 28 Sep 2022 20:19:42 +1000 (AEST) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id D0F1C849AB; Wed, 28 Sep 2022 12:19:33 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=nxp.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=nxp.com header.i=@nxp.com header.b="QM0OnqYs"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id D9CA584954; Wed, 28 Sep 2022 12:19:31 +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=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS, SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.2 Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on2040.outbound.protection.outlook.com [40.107.105.40]) (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 D946384ACA for ; Wed, 28 Sep 2022 12:19:28 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=nxp.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=gaurav.jain@nxp.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KyCc8cml9zUhKPG1Sudqw1L683WBdS6KsEAz2vHbBfSAxwYCZzXoOiqubCC21Pu7eHZEA5mjcPHOXgqxNCNWzRmWzxT0WWH9sivpUs2bJBFgKlFB32b5/uPAYQ5QvJ4qDMTZvPUS6tFpIY96WQTftwdl184yjoLxOR4C0eSrZlI6iyQqKfxZQ7WCi7BNKMtxceUdmNtBe+0u/DgV5i6D+T0OttxCMFq4tSXRY0+deJ2mXl0HoTBgJJzRgAZ0E+uiyO9XWawD35CM0drP/g1gAO9+Fh6A+NxSgLXHtDDnT4iREfeyYMHZEMFe6Qd8Tz/KWKRFCAOpHnPTFfJa9UVVbg== 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=loFJPX1saUaz88OKC+7dDnj3MOwnHuZ4H/AH1FRrR0A=; b=alwwF7A906Y6hlw5Mcs45YWucDILf3rePJ32RpFnghMrJ9cAv+vL6XZv4Z8lSTlO/RZhwgTGfBePy/cPuI+0wO126N2v5Zjl94G5rCSN21GjqaT70qdkk20/xQNoKipP++rve89buR2LZm4m0INGox1+297eVM541otW6dp86w4uDK24S2irKUbOoUJoJTeOIVZf9wVBNT3F8xi0bCLZkDtZA7B+HmWCv1eYKg8Q9/L0BodFVV4TLtnsEC3qiL8+N5WpOmrEq4o+EZf07DmEEWVN+ZNqoPvzKt6ZpsXTaK0m4H+SxM5bb0VZu2j5J5LLooOf7JLV7vHKTXLJqaHuqg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=loFJPX1saUaz88OKC+7dDnj3MOwnHuZ4H/AH1FRrR0A=; b=QM0OnqYsUicuW4bpi60YwUkv4sWT2HNAFcLwjTdl4RH/FIfJyuBJbKxSj5+R01aStCP7q2i6sFW8P/Ds3ap/FI8qeUrEs+6tBRp71/ve8Irj2lygJJktSXmquA8id91oaY10ThRadwsNPC+j4M0nlksH173CLCOHdihOt7edhIQ= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from VI1PR04MB5342.eurprd04.prod.outlook.com (2603:10a6:803:46::16) by VE1PR04MB7488.eurprd04.prod.outlook.com (2603:10a6:800:1b0::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5588.24; Wed, 28 Sep 2022 10:19:27 +0000 Received: from VI1PR04MB5342.eurprd04.prod.outlook.com ([fe80::7427:80df:bf91:8dd6]) by VI1PR04MB5342.eurprd04.prod.outlook.com ([fe80::7427:80df:bf91:8dd6%6]) with mapi id 15.20.5676.017; Wed, 28 Sep 2022 10:19:27 +0000 From: Gaurav Jain To: u-boot@lists.denx.de, Stefano Babic Cc: Fabio Estevam , Peng Fan , Ye Li , "NXP i . MX U-Boot Team" , Horia Geanta , Varun Sethi , Gaurav Jain Subject: [PATCH v4] crypto/fsl: fsl_rsa: Fix dcache issue in the driver Date: Wed, 28 Sep 2022 15:49:02 +0530 Message-Id: <20220928101902.3846483-1-gaurav.jain@nxp.com> X-Mailer: git-send-email 2.25.1 X-ClientProxiedBy: SG3P274CA0023.SGPP274.PROD.OUTLOOK.COM (2603:1096:4:be::35) To VI1PR04MB5342.eurprd04.prod.outlook.com (2603:10a6:803:46::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VI1PR04MB5342:EE_|VE1PR04MB7488:EE_ X-MS-Office365-Filtering-Correlation-Id: 60e2312b-cc76-4eed-5fff-08daa13aec7b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: F8CWQW0ja7yscqQKE9V+csZ895euDxHe8LagmFmGSm5In9/fN3dphet+OgStVpKyq1dPFLceFB7pPktPbeqk+dGsEyj7ld2ueYyTaetOedEKRnsPPjzQKOmyiAmxpwoVeOUQdZBIjyTUQknNXcTghK8c68DyEqEcYXtIkIoFESDURSWtdSxei6RlpB6P7DeNF9O2MH2ztTVLmKuO3Gm5qTayVdi5zXXlF81IZoQOBngHL2VHsuHMttN8F3kn2IXnxIwQyrCqOcqIbDI0PrTa0ozKSDe+pR0Ep6yzvvGeReeOu0EDvd9rnxIs3vADFTUSVyWkZoxy0jvtzinJuqmH3siiTkAbIdS6JDJ2GIpJYZTYTA0qcn5cElfxPvx5eux46qrfWNz1WZZ6Vzt0+omHtZjWWwbLBBaSKS9igReOIfNjDGLaR2J/PJoAvaIZLzVvao8bKmSzv586yGArKNLzPuKvZf8f9c9HefVmsBesTaULmCcXxhof69/OmjJ2f5w1+gBlFkkEaxH9nJIF1JcdbHfBb/mg0wvnPT4by1joMrp5XV31ZhEzeijS4eKbFA0vE06SR8eUySkRDVlSZDrOWxsQryqxXk0Uh59KYeLvRHXHMi5AUQ8O5b111nwHoJFabklP5osbJv93Mi09OVcuYwWaQSYBCAiIFh28o7dfmoCIL0wIT6YEq07qm7psupxumcqbaTpMs5RvTiIn6BHWeoXcKJe/kgcpdj64lhU2mVUIyvC8aoOam45FiKrZInA5KPcHv2dQ2ZHOirOfXHEFyg== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:VI1PR04MB5342.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(4636009)(346002)(366004)(39860400002)(136003)(376002)(396003)(451199015)(38350700002)(1076003)(478600001)(38100700002)(5660300002)(2616005)(41300700001)(86362001)(316002)(44832011)(54906003)(2906002)(66476007)(36756003)(4326008)(6666004)(8676002)(26005)(186003)(8936002)(6916009)(6506007)(66946007)(66556008)(6486002)(6512007)(83380400001)(52116002); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?IodHRH082HC8X9oaaUYcsSPT7fW7?= =?utf-8?q?wznaHEkBu9ADHt5lbx/YQKAgDN8ZV4C727Ebt+p622NfvaGF1cVuvLFCwcf+7R3Aa?= =?utf-8?q?gRQLWhZCv58qdhRjMJB0AOtCRYlPbj/4sqUf8oh6XXhq9xR2Np1mlMjcG6wsx60nn?= =?utf-8?q?T8l4YV3MJASEmYFE6bAd00hrGJ8zwHrV1gcnLi1YHjMep3srGftqWaF/skyzIDJYv?= =?utf-8?q?+3pjeEIEN0lQgAuFB3dDfSGWc0S/rp3UEYvcj9EXc5CZkwT/5tgEEzpgEV3mz5d2b?= =?utf-8?q?6qPom8pmvD1nK+QxSwlatdEjCeEQdnZubwwxvuWZZl1u52sWejRz79iifzxBrWV7Y?= =?utf-8?q?ZZbeMOpj3bpFdBJIzOjGzzJuu5v4ElRn+3a4lXYsWgCV7ucjR8R2iucLOqyxlPeK1?= =?utf-8?q?1h/SWejwOk5hKd6VkRnOzvMCp8CtfEYYWJf0/cxb9d6NbxEeI2ozXoX627EE+mY5e?= =?utf-8?q?+J5q7Qxg00A9f3L0f/f46lc1F/dpM/+5MbLXsWPzWyA8FedbgcJKnJpYBsvgwgMX0?= =?utf-8?q?nUQZ/oNo8xLihXciItyFTlZAJsJa7CHXr63v6CyuHITcj36xGtXUsdZ/yARSyTvSQ?= =?utf-8?q?sqNM1CtBvGcHDm5AL3uuVzaKOiyVY+XIg3YJDPZ37bbjr2XuG+OZHjCmFX52BUNww?= =?utf-8?q?R1MWO+crLChI/XZCfqT3Gzz6vE3vVd4lp9J/xIjp66l6V59/Pp1zTZ7ZVkok2VTee?= =?utf-8?q?KF5z1s+GGAvgR/ayrZ8NNEJUnVWEprdiW0zBMwAD+0l2JSYuaIXm+LBgUdXe4qk2D?= =?utf-8?q?qrr/alYD4/ZFh+C+6D4w/afMUIFwQ0NcyA6Tabv7b7nkwF3Qygc5p/LGchFFq5NkS?= =?utf-8?q?MinQM3WOZ0RQyqS3pVnbhfEY1nq8v19rRy5pet+BeoXS+pFmlRyCbzGZAHpFCvHys?= =?utf-8?q?w8HTZUuoHGykSQefb45/kpYnfMIpZRfDAa6QU/+7209aSizKvc44IB7hwpAhnYVMs?= =?utf-8?q?AjzRAqIvIKK8ALb2N0X3aNJ1rWGlzjydvlBGq9kP484ij3Ctxru+XwtWOQznpjAdZ?= =?utf-8?q?CasGWXhJKXvnKdtPKHpKLFu/yfVrrUvPJvH8ejsPLoUvlzuLrqRW/dT993aN4olaZ?= =?utf-8?q?qMfP+5qnJaIn+tU4+TtmD+Jf0YshQnTDuThHu87mhM8uAkVTSP1+1q9YRKtHffEXu?= =?utf-8?q?sT+f5F0GDBT9npqkxxh44Ec0qyvpMRwUwrDUK3M16W+x3kGh+Y5QgV0fnHHitnlbL?= =?utf-8?q?8k/hQCtSdwaKGnti9qxEj5pXaqbDqWQLlEs+t/kjc0vEFRsvbuc0aVedhH+pZauKj?= =?utf-8?q?U1i2Pw4/280wAtFyNkiSSjti5lSGG/JUj+cPy1QrzwYtNg0JetPSVZbqSKavwwBLr?= =?utf-8?q?IshDRro5HH3VsQYlQXr5AVhkTCCDIsYU7e7cjKh6eSzF+sDG94lEbAgtBff+KAemJ?= =?utf-8?q?SBrfN9uuBJ6SmSziXDjTovlizpbHlFWeDNZF+9HDHYZRYopNvTOCdXgOi20mp1bhC?= =?utf-8?q?Z1/ZYek2dxdfDmJ39ytn92QoaR5X4dLBGOZG0Ry4CLUtW6xaKoKX02vRQG1JUsfgu?= =?utf-8?q?Uc6vyE8WuihP?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 60e2312b-cc76-4eed-5fff-08daa13aec7b X-MS-Exchange-CrossTenant-AuthSource: VI1PR04MB5342.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2022 10:19:27.6529 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: QDTO8q7POHKsU1+V0JK3YbFG4lIe52xjje8ULcjdbB8OredZ8MzLC/OWMa7y5/GyFWzhYeYlGbJ/D6f/dFIzYA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR04MB7488 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: Ye Li issue: CAAM fails with key error when perform Modular Exponentiation using PKHA Block in CAAM Fix: add flush and invalidate dcache for keys, signature and output decrypted data processed by CAAM. Fixes: 34276478f7 (DM: crypto/fsl - Add Freescale rsa DM driver) Signed-off-by: Ye Li Reviewed-by: Gaurav Jain Acked-by: Peng Fan --- changes in v4: - upgrade to latest. changes in v3: - fix warning: implicit declaration of function ‘flush_dcache_range’ [-Wimplicit-function-declaration] drivers/crypto/fsl/fsl_rsa.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/drivers/crypto/fsl/fsl_rsa.c b/drivers/crypto/fsl/fsl_rsa.c index 897ee855ea..335b7fe25a 100644 --- a/drivers/crypto/fsl/fsl_rsa.c +++ b/drivers/crypto/fsl/fsl_rsa.c @@ -6,6 +6,7 @@ #include #include +#include #include #include #include @@ -36,12 +37,21 @@ int fsl_mod_exp(struct udevice *dev, const uint8_t *sig, uint32_t sig_len, inline_cnstr_jobdesc_pkha_rsaexp(desc, &pkin, out, sig_len); + flush_dcache_range((ulong)sig, (ulong)sig + sig_len); + flush_dcache_range((ulong)prop->modulus, (ulong)(prop->modulus) + keylen); + flush_dcache_range((ulong)prop->public_exponent, + (ulong)(prop->public_exponent) + prop->exp_len); + flush_dcache_range((ulong)desc, (ulong)desc + (sizeof(uint32_t) * MAX_CAAM_DESCSIZE)); + flush_dcache_range((ulong)out, (ulong)out + sig_len); + ret = run_descriptor_jr(desc); if (ret) { debug("%s: RSA failed to verify: %d\n", __func__, ret); return -EFAULT; } + invalidate_dcache_range((ulong)out, (ulong)out + sig_len); + return 0; }