From patchwork Tue Apr 19 05:22:28 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Gaurav Jain X-Patchwork-Id: 1618648 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=fks5uo3B; dkim-atps=neutral Authentication-Results: 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=) 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 RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by bilbo.ozlabs.org (Postfix) with ESMTPS id 4KjBz20Wj1z9sG6 for ; Tue, 19 Apr 2022 15:23:07 +1000 (AEST) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id D683183AD1; Tue, 19 Apr 2022 07:22:59 +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="fks5uo3B"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id B158F83B15; Tue, 19 Apr 2022 07:22:57 +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_SCC_BODY_TEXT_LINE,T_SPF_PERMERROR autolearn=no autolearn_force=no version=3.4.2 Received: from EUR03-AM5-obe.outbound.protection.outlook.com (mail-am5eur03on0613.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe08::613]) (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 24D1183AD1 for ; Tue, 19 Apr 2022 07:22:55 +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=Is8QL/1CliPgnPDe1HBKUq/1A/+tPkjWNX0Sa+wTOkhfYEP+WJSEYyUYB1vHW9sKuSlz4IAoUFGX/es/jC5NCj8Y6i1jPS3rVu66s5ngrPRBSExpLmiqDiwye39wEs22mpTlLCSnAX/gfQFE7mbIrUUqKzZfdVO83INeeOHTnLlKJvZw6eujOhDopEHB75550UVdGx7VxjhBySZay7fEOYShnGPey6H7knZYkmPRMgcBRNk2bSI2md0Bp/xDRm5qDgDBpJLS7fyUWRRoN9Vm04svBTrht8xswP+VrtEjHffTgn98KBUtsVA4H2Vn7BV8Ei3SE0PlgDl6tXOJ8n9eOQ== 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=L4Gf/8NrEf2Mp3zNCqrLQCVf1sBwG33r7gGYifgRQCU=; b=HZZhASHB44vOLuYhjJAiS/oWelGH12LZWQGVENGPIGzjh999duRzIgh+26kxcCsQCYDcSJh/hK/1Qlsw6fToSK68ZutBH6P0oFMlx9xLQa8W+QTpgTcDHCPqSRHklWkbcnVZfABGpGDRq8gJi7vX4GwPJAQt543OpQRJkPd05IKz5aL94deZVrArsgpBhHGHL/8WCW/wCV+w57HxffgW99W11wkuMry/BQac2lBHhUVsrxpo5DzUtO04uirOsScaZdjodoHyDnn3QqvQyJcW80XrRNW+e4z4XNKCBBjqSuerq8R/WFj4OerOo7DZh6eB6LnnSUBrrme6CmE6D44WIw== 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=L4Gf/8NrEf2Mp3zNCqrLQCVf1sBwG33r7gGYifgRQCU=; b=fks5uo3BZsY/2DahjARAauzqgAmA0/M6I6c7DcrYDHlfrVh9qa+ZdrHL1/8akyzCcoV/2rD7HLwLcnYAJ4YX0eSxDlzPDLmIT1BbNozFX4aPjEQ2p+j3F0ER/6y7GbgDdH9APT/CKcvMN3O0a913EgmAVPhRvNnTU7JPt/o7z3c= 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 AM6PR0402MB3638.eurprd04.prod.outlook.com (2603:10a6:209:23::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5164.20; Tue, 19 Apr 2022 05:22:53 +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.5164.025; Tue, 19 Apr 2022 05:22:52 +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 , Breno Lima , "NXP i . MX U-Boot Team" , Gaurav Jain , Fabio Estevam Subject: [PATCH v2] crypto/fsl: add invalidate_dcache_range for hash output buffer Date: Tue, 19 Apr 2022 10:52:28 +0530 Message-Id: <20220419052228.1933881-1-gaurav.jain@nxp.com> X-Mailer: git-send-email 2.25.1 X-ClientProxiedBy: SI2PR01CA0008.apcprd01.prod.exchangelabs.com (2603:1096:4:191::10) 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: bb2bec3f-03f9-4cf9-6ed1-08da21c4a6db X-MS-TrafficTypeDiagnostic: AM6PR0402MB3638: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: 35UAiWP34G6D/X3HuaX23B4fECTnTmXsdHT7sQ2G/8PelmLI46ilWvKXfezcvSvyR9irTkc80iRJ4ZH1nAmMYSHVv2FUKZaIKi0OFad5pnY9odb3zqLgvoC11nTh6sU1qRx2kAEjybGiQ9l9mE7cxkczeucc3aMU4AHyXWUOb56wmBEaf2Z4QrHq3NkP+30kcsWSJWt0ClsEv7RMn0fypliCe+F3COpbMSZ6zghqPsO3ThU7NnJTpUtS1XcovH+J7B3T+BDD5eJtT2Zocl3emrNvc4K64R2SFgWLkk9yPur77MG8p9CxVlpWWQeZUSaVPBDQYIvpfMxdL7Ouk0KD7OmkMtsF7lbO4FKhiGvWrBQI2GlDKlCY0dIgdIO23dG/n9j55FAvBkL0ER/o34A5JFLhSMrv/2yi6tShy/RUc00EczxghvKFXInXqwbyhsdVJUqbCY4c6B5S4k/VrHiN6AqplWjY4KzOYAobpzcIbUcunt2QDlmjxqhkO7a4ItE3TatyBm7AwSLMmXpjfNC4hhfRKrXyA5onXU5jPZ0Nz21xRx79bdcZgG+Bje782ALB7pGtISlxcAOH3/PkqSM7cjxL5ZQ2HKwxlOkxTe6JtfCmV6QGRfmUUw7NHP4VITXxCNddubvXNSEJLOARfw2pxEyPPM/aWmfI7KiMVV4Oj5nMk65hkF3YV9jZIFwOZU3O42d5Br1oZNz4Q5l1lVWZjg== 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)(83380400001)(2616005)(5660300002)(44832011)(6486002)(508600001)(1076003)(55236004)(186003)(86362001)(6666004)(54906003)(316002)(6512007)(8936002)(26005)(6506007)(38100700002)(38350700002)(2906002)(8676002)(66556008)(4326008)(66476007)(66946007)(52116002)(36756003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: TGaFV+00dKOx+Uqp4RNBp2/wasu9aQKX8J3YBOCZq5fp94Q8xbN7MOJUhi59EDBStYSAUeYc/kPBocKAVNlBbitYJ90oFV3SexlnRMArQriZ8qDKNZ1vcIQxK8Wp19YraqJD61wSf+fkrn9+DWfpXXEtS80NeoomJGw0ME9pGNSUNLrI+Vk6ueLiQsvxXj0icQPjbM5TJ5mhzBG6fT3+MWs+1vnqdSzmhcFQRENs8eeOdxE5KrQT6UMtR7zwHZRvtRgqsi5k/7yB2egUaBTkhxowkJeXXqUrKEa9izUpRdDLVjGOCNxRETgZcII3EHvGzeedDb69bYxWx0k/l9akpeVLJAzYyFqC8eENtSGsc5pnZItRKrjDej8/4vrHTFEoEBhbh8KOBoDExourezRN8sdhKnVJM7ISejl428opowdmShWKy+aOVP5/Edeuj14ixMEwvuIgL8Wm+Rg24dN7R5NWyhEQkxsgeUzNm6qfkknjP3+VhiTen6Ue9XFhi9Yjk69SJ7VwqHxffK760HEk0lFLO06csarq/sLI4qeYC7PWQDEtqg31R0JLb+26SnzaTTCK0IESEg1osKnD8a6Qp3FSYQjr8z7Ecds7ZlkAWGGjMUjDT7MsPeK9rf6cwYnZdlxtwDS4rcpF0vKufvHOLKS9PT7h2r5AmdF18tAsz2xwqFWABV+huUQI/Nc3rFQSWMrLPQNY+0I+Wd3qlm607OImXQdrs9TcORasZnze1RyZYi8uRSDd0g68+4SKfqJZf41L2WHXt2ZRBYU/qIDx/XgK3DwCx3+KwWIGU4Frr87oW1HfLl/yUy0MSoAIC4Ma+oO34+OuLlxWS6TRgFR3QTb7M9WtDoNhqB50QuTcMkwSynKSQwHa/oL/YCx8qH4XRc+/pa4UzELpeTeQydnUqNLWiCm1BSbuKcCzXrC4aLoR70paJFaUQ0ft/N2og7Jy2exq6PB7iNNhJokF7bOvgITbQLCL84Jtdk8xkUrvNGoxslAjeRX3DIbpnT7FQA871ls7j9srgJPPAjoDB8qgadAj/CmcMmxKLRmSYVuRJQ+Ddf9jsNarSvNDZaS4aZAcGmvBChXNMOqSt5qshG8CU05cNK9Mc/G8rCBJ8KDs4vWrp5vY8l8noEEFSXhb/qaFUb9TgXk0yRcD2dOGUPPakENbd4VRBPGIkm0pnJr0LpaeQlJGMJK1aM4YxdFJv91iaAhpzVNRdXhp5cRVmd0sy2DiodvqrFQMK6fBTX0/7+LNNUFpNqDIldgkznpJtr7466aKm4Qv0LOtPNj9+kMgc1BscCXUAdka55L2hksTX82HiswMGgvdQJuChRaZVxMkWScQ541pBdURvFSzHJ9Duc4tCfEF4ObubU5OVazUsHXV8qqw/o7Npf7K/1ewGYn/j85TOpDTf426hHXU/Pd4oon5TnNI84o5iS6bUMxUx1q7E1V0fxTC07IdE3phUwybGIAGjufTMl32Rn5OxJ97/1FSn6vBKTHqy7VvoQPYBbraFKyPY4kmh2lGSWJleEkPzjvg1FQXEyIMUP/7JEJKvg3icgZRRqmQ1Uh7Vz5+5FBtx+RsoV/SUo05LzjPa4SLA94hqIMMjcPktQzDe4upughA87QoBvUE35ReCXyXG9w6b0jo49Yj2pOD9MJWbwkz9p2mYoOQsCng/lhw34u/7UU+IKZsxLAJCiHMIErMKvtxgzgJEuOgmlfic3oH0TrlJeNZzdHHhyLPFramHL6h8rMJYN1S7Qvq9TnjJ+ziKSw= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: bb2bec3f-03f9-4cf9-6ed1-08da21c4a6db X-MS-Exchange-CrossTenant-AuthSource: VI1PR04MB5342.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Apr 2022 05:22:52.7113 (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: 4AhPoOae8DD7r0sIE0X+e6E1JPjZbB5k+xeZHtuHwO9zczseT5G3yId55N+t7ZDbH3GK25w0apDJghGUyoGZJA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR0402MB3638 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 HW accelerated hash operations are giving incorrect hash output. so invalidate cache lines to avoid cache overwriting in DDR memory region. caam_hash() -moved address alignment check in the beginning of function. -added invalidate_dcache_range for pout buffer before running descriptor. Fixes: d7af2baa49 (crypto/fsl: Fix HW accelerated hash commands) Signed-off-by: Gaurav Jain Reviewed-by: Fabio Estevam --- drivers/crypto/fsl/fsl_hash.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/drivers/crypto/fsl/fsl_hash.c b/drivers/crypto/fsl/fsl_hash.c index 2379b70c2d..a52c4ac957 100644 --- a/drivers/crypto/fsl/fsl_hash.c +++ b/drivers/crypto/fsl/fsl_hash.c @@ -168,18 +168,18 @@ int caam_hash(const unsigned char *pbuf, unsigned int buf_len, uint32_t *desc; unsigned int size; - desc = malloc_cache_aligned(sizeof(int) * MAX_CAAM_DESCSIZE); - if (!desc) { - debug("Not enough memory for descriptor allocation\n"); - return -ENOMEM; - } - if (!IS_ALIGNED((uintptr_t)pbuf, ARCH_DMA_MINALIGN) || !IS_ALIGNED((uintptr_t)pout, ARCH_DMA_MINALIGN)) { puts("Error: Address arguments are not aligned\n"); return -EINVAL; } + desc = malloc_cache_aligned(sizeof(int) * MAX_CAAM_DESCSIZE); + if (!desc) { + debug("Not enough memory for descriptor allocation\n"); + return -ENOMEM; + } + size = ALIGN(buf_len, ARCH_DMA_MINALIGN); flush_dcache_range((unsigned long)pbuf, (unsigned long)pbuf + size); @@ -190,6 +190,8 @@ int caam_hash(const unsigned char *pbuf, unsigned int buf_len, size = ALIGN(sizeof(int) * MAX_CAAM_DESCSIZE, ARCH_DMA_MINALIGN); flush_dcache_range((unsigned long)desc, (unsigned long)desc + size); + size = ALIGN(driver_hash[algo].digestsize, ARCH_DMA_MINALIGN); + invalidate_dcache_range((unsigned long)pout, (unsigned long)pout + size); ret = run_descriptor_jr(desc);