From patchwork Fri Apr 29 15:48:53 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Gaurav Jain X-Patchwork-Id: 1624425 X-Patchwork-Delegate: sbabic@denx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: bilbo.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=EhF6VEFu; dkim-atps=neutral Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de (client-ip=2a01:238:438b:c500:173d:9f52:ddab:ee01; helo=phobos.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Received: from phobos.denx.de (phobos.denx.de [IPv6:2a01:238:438b:c500:173d:9f52:ddab:ee01]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by bilbo.ozlabs.org (Postfix) with ESMTPS id 4KqcP42lSyz9sBB for ; Sat, 30 Apr 2022 01:49:28 +1000 (AEST) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id D6F9883EEE; Fri, 29 Apr 2022 17:49:22 +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="EhF6VEFu"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id D7DE583EEE; Fri, 29 Apr 2022 17:49:20 +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.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FORGED_SPF_HELO,SPF_HELO_PASS, T_SPF_PERMERROR autolearn=no autolearn_force=no version=3.4.2 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on0625.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe0e::625]) (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 433CF83EEE for ; Fri, 29 Apr 2022 17:49:18 +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=a7pkyAuuGcxGQJasfLna5Cc0lVXEvQDbBz8cUlheGAU0/3iPCJUsC2zhXufOzwuda5mGrGh3TADUGozQGWP38hhhBq9uScZJsrJ2svDTYJbuNRG8XeHJQS3s6IEo76ula7fY/bcsgpz5zJO93aDgWMOGPetHfNn3f1KbsX/xFEyb1lIQeJRu+03wX/J4iEX2Wu0U3wfbQl1q+PK9Ln2MrJg7JkqVALnZcZ8G8AmyDilp0x3fEfyU/NU7EcvqHb/wNTwxA5G4OZk4aJiiA3pOW5HL3u+9HH7RlSXad2Xjvf9Ybdsv6hj8ebtC5lS1vZwwhyGOJKO3bOAESiv98KoIEQ== 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=AyKJ+aAYedq/X3OFYiuVXsMD8+NoJ48bfkhG2OvKjdE=; b=BcEGOsi+IVz9tVllRnZrNj3poRn+Qhq+YJmGNwyHnTCTzE2lxXEHDL1uTzyfCdFM3tdhlzBhe8rYHePe1JtzyV1DCy9/GqCZNXMa79nrUnsv88mcI5S92At2P6v4dRJ+s/sRFj+fm78cjwWX0i9T1t5eCLNZN4gmdkEc2LinolwTtbFGotD+o6O+MZPxS0hUChM7wf6HMZj4TKwAb9ZboVRW4atf3yv6Ju7bW0mh00PwElsbw0o9tdfzU+YkM8Y/2NefxSVAl8JBLABS48wxbPgvfLyXKqCAEe6fA9OSLbuWdTJ5k4AIWvLYmzvFNYVhifbdgWRk1JuKtjwIHPXDQg== 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=AyKJ+aAYedq/X3OFYiuVXsMD8+NoJ48bfkhG2OvKjdE=; b=EhF6VEFuzF8e12Y5nLPf4MNhRlxR7hJqFYVzGyaLr06CzFZJCh0UJ1eaJ3ontvzqApxjXLi+GVoahy1XYzKwoTXaHnfOYU0q7yumH05coYDVZTRI4HqedOTGtLUXjWhUCfpulwpLeyKMg0eg3XR+D0xv5K/6FlxljQosu8XxRgc= 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 AM0PR04MB5330.eurprd04.prod.outlook.com (2603:10a6:208:5d::26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5206.13; Fri, 29 Apr 2022 15:49:16 +0000 Received: from VI1PR04MB5342.eurprd04.prod.outlook.com ([fe80::c587:139c:5129:6d02]) by VI1PR04MB5342.eurprd04.prod.outlook.com ([fe80::c587:139c:5129:6d02%7]) with mapi id 15.20.5206.014; Fri, 29 Apr 2022 15:49:15 +0000 From: Gaurav Jain To: Stefano Babic , u-boot@lists.denx.de Cc: Fabio Estevam , Priyanka Jain , Ye Li , Horia Geanta , Silvano Di Ninno , Varun Sethi , Peng Fan , "NXP i . MX U-Boot Team" , Gaurav Jain Subject: [PATCH v2] crypto/fsl: fsl_rsa: Fix dcache issue in the driver Date: Fri, 29 Apr 2022 21:18:53 +0530 Message-Id: <20220429154853.133365-1-gaurav.jain@nxp.com> X-Mailer: git-send-email 2.25.1 X-ClientProxiedBy: SG2PR01CA0151.apcprd01.prod.exchangelabs.com (2603:1096:4:8f::31) To VI1PR04MB5342.eurprd04.prod.outlook.com (2603:10a6:803:46::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: c06bb399-e303-4f3a-e9c9-08da29f7d04e X-MS-TrafficTypeDiagnostic: AM0PR04MB5330:EE_ X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: vUb7NVMcKWlz4YX5raiodvNCo6P8yQoIbCdzn9RMzlgjw6GjuVWPlVfDApjg9iBWAo5i1NMQ31ni7ieerJAdx0JrBEU9tac9zdLEyperjyh/Rc/AmzPJmzptKtst8RDcwdsakZl4eUTMto5hcDznhtVGfyxtvsCItBIpkwAYGuBhUkikqq36XufTjhGZZNXVW4VUARa18B4tvSViz48lYBYSLqTq3L+5P9Jxxn5uNMuES5UWTlB/q+CZaLxAZJXVDk+D/hw92R7wuMsl4jLSANGvFcqO3xTwDkljkUvtmFqTTA8r87H0Z4JWYg3RuM/q2QTgvfsMlC9HXkOaFvdlPE+tJFD9I4yMcYxD+A1Vua5yKd2R3+j72/R9KXoZeZtswzPlFhfe8MWXdewZR2wgC9X+ZeKnESx04LnkhnRL2JgHkDmxtmcjg8Z5vV5yWhF5pbfhECg9MUW6biRG1i13sdC8GDFXzGP5+7oR2p3XQMkSstlEhLAf2ih9CUmu/T3zDAfT+fXymwvzQMV4PiLnqh0VOBCDK0u1iiO84M9KoFDplkIsBxZcVOFJf6Zcw3d+G1iHJzp0LUvw+AesdPty8rVWIZH6MLZuRen85oMPGHLc0XfvpOynNC2BCT1JaaCG2/2pG3KuUXs72v8nEC6LWxs68F/czX20rVgpOUSWrKUH3M5eFABW4YNVkfUyTKgic/Dii6z4Je7X8nNtJ1INXQ== 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:(13230001)(4636009)(366004)(36756003)(6486002)(54906003)(52116002)(38100700002)(38350700002)(6666004)(8936002)(6512007)(66946007)(66556008)(1076003)(66476007)(26005)(4326008)(6506007)(86362001)(55236004)(8676002)(316002)(508600001)(2906002)(44832011)(5660300002)(2616005)(83380400001)(186003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: IUmJr3Cvd3+l7JR0CvdBauiEnMNJD/kahok/aceKPEIBJvwL3+6Ue0SX/bjMgX44uqMp+lzakuYnZQgW2AMesgTfdjTFuzBjVfIuo6rbB4ZaAQSue2bTMPA3BGbENvEwYgpkShFuFAWwtk52Pqr1FBtcSFon2z3vW05Zmcj5X3zJFzC5r8FGx1CYT/H8Wexu3xq9zqSb4N1IdGNZbHhJHo91hpVP6dkMovsu118UpLkZ1qU/krEqQQeNb2Ob1vs/ffYlbDULBj+JH730/kSXfb1ISO0aAJWou0vcwJxIOf5b7v9/gxYgIrlvkrfFcayHxpQZ7zygHA9qakdgJviiRb0tm81b2KWunRokpUcsZVWA2/OLlriurtN9/8iiAMfysYG/ztbY3mmNizlT7CpymbbKeWKzJg9Uno0zMQXqILcNu0X9M5k3WuJyKqcDGuEZSfuL7ThJzgBWLuCFvbfUIf9zx7Xx3sLT9jPj0KSUK/KmOii3jdY92vja02fFfZuRyoxNrX/za0/QRXDRVzF5SUg+LAFUP6XTW2j99NEhGoc5+OuWFHTdQcxB3bDkFUGp6VPJIJSWKjinRDH5pIQJwX6kfPvdq/sjzXSJ96mJy/Gn3zyF1yxOv7agFKFLXVK7idvitYxUu9YUz1TZvXwFKhREhnLf0o6vqgPUwAuW+2qLZKXiOcF+mwBGE7UVqb7IUtAHXCuztxuvT5JJ9U9ISpTF2ivdUT4n/vubsQ9Bakr2amsN4arX3yvxu6WsI/8yI/2S6u1YmFw0/8DMeDKRsJoMiWvVafwuJ4GmsCq1CV9jlz0hneHYQTfFQqDaxfCjU4ZSmrrQJ80Ql3/HGhob9Dqb5RDKj/JM6k8plQd4aXeoqEs2AjBFNaBqXcLp5bxQPSTurHSKuWwuSYegLNBWtRJSU1UB7baKFUJUtRyaCPRaX3fpLCjrTuQ93N+UZx9YfytxV6TKY4KOh0n0FLL6G/WV0A1B/w9uxlW1ywJ47rAyPUvTzb2KX8EwlUujUJGDwBqDKqPP3X+/aHXAz1k9ud0G7ywv4yNrKgrZXkpcuYg12UlNIYhuCm+wyN7jilktoHO+XAwF33BJEjhvaWKnGDfTLV+O0lCxqxq29BkXg0ZVWFmlQuWJ+c0mEZTZTtUoFyxP0cZpfuDLAEJTMJomwIa1HFjE736UPudcfFiKGi+Lz0az9U2Q7zT5rscWKspc1JvQSm86EnweLruh0XNHzpskSS+2Mikn28H2nFG06R+6nKTCze71CiGfgG8C91CHJe/QTWscgox+VwpJCHl9D4NriYOReXS9ViiUSDPbVkwSymIaTtBwVVcxC7XQhx+pmwewrOlu76DM7g9C3bYQ3016/33DcWTxTCNhX13e5xAwcxmuz0eVnrWVieW7ZQKasxE8vIpOXVbgz3zvdHQGOJfYdfg43/Jtky00Wu2ikIji4l+LEaW3s8zXTUcDwfyTU4UfIoENSMb4IIum7jgilSBg+XTH1vvOs5ZbgR51QPUDVQPsYzHvsuNB0IqI7chN69jk8KAtwvmZHpYoCNgfKhlJpytRqFTOromziXbwvPl8cHxL726OSvWrkbQLng6PXzP4jpR+mYKYsRRxzdkf8nR5d+aRGl5KlyqveNAeEPLU3ZMEx3lgE+ojEZ2ADkWTNKZYRbDzI/5tB5FeXj9IdifIIQkDk5DSJdz0u/ybjRguKV4W8qWs5917mWUxiN4yEVdbwonCkfltCA4+TIzPEDuYf5ammusZjiq+WiaOKA8= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: c06bb399-e303-4f3a-e9c9-08da29f7d04e X-MS-Exchange-CrossTenant-AuthSource: VI1PR04MB5342.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Apr 2022 15:49:15.7808 (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: NWimTY+//LoFak2fAg6pbKZkcDUCBmKAqZOqggflmSXdh8LudEhHQ0YSWobKgeF0C8fHhytekp0u+SBrY3TEEg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB5330 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.5 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 --- drivers/crypto/fsl/fsl_rsa.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/crypto/fsl/fsl_rsa.c b/drivers/crypto/fsl/fsl_rsa.c index 897ee855ea..38d4d5ddc4 100644 --- a/drivers/crypto/fsl/fsl_rsa.c +++ b/drivers/crypto/fsl/fsl_rsa.c @@ -36,12 +36,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; }