diff mbox series

[v2,1/7] crypto: qce: common: Add MAC failed error checking

Message ID 20210417132503.1401128-2-thara.gopinath@linaro.org
State Superseded
Headers show
Series Add support for AEAD algorithms in Qualcomm Crypto Engine driver | expand

Commit Message

Thara Gopinath April 17, 2021, 1:24 p.m. UTC
MAC_FAILED gets set in the status register if authenthication fails
for ccm algorithms(during decryption). Add support to catch and flag
this error.

Signed-off-by: Thara Gopinath <thara.gopinath@linaro.org>

---

v1->v2:
	- Split the error checking for -ENXIO and -EBADMSG into if-else clause
	  so that the code is more readable as per Bjorn's review comment.

 drivers/crypto/qce/common.c | 2 ++
 1 file changed, 2 insertions(+)

-- 
2.25.1

Comments

Bjorn Andersson April 19, 2021, 3:02 a.m. UTC | #1
On Sat 17 Apr 08:24 CDT 2021, Thara Gopinath wrote:

> MAC_FAILED gets set in the status register if authenthication fails

> for ccm algorithms(during decryption). Add support to catch and flag

> this error.

> 


Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>


Regards,
Bjorn

> Signed-off-by: Thara Gopinath <thara.gopinath@linaro.org>

> ---

> 

> v1->v2:

> 	- Split the error checking for -ENXIO and -EBADMSG into if-else clause

> 	  so that the code is more readable as per Bjorn's review comment.

> 

>  drivers/crypto/qce/common.c | 2 ++

>  1 file changed, 2 insertions(+)

> 

> diff --git a/drivers/crypto/qce/common.c b/drivers/crypto/qce/common.c

> index dceb9579d87a..dd76175d5c62 100644

> --- a/drivers/crypto/qce/common.c

> +++ b/drivers/crypto/qce/common.c

> @@ -419,6 +419,8 @@ int qce_check_status(struct qce_device *qce, u32 *status)

>  	 */

>  	if (*status & STATUS_ERRORS || !(*status & BIT(OPERATION_DONE_SHIFT)))

>  		ret = -ENXIO;

> +	else if (*status & BIT(MAC_FAILED_SHIFT))

> +		ret = -EBADMSG;

>  

>  	return ret;

>  }

> -- 

> 2.25.1

>
diff mbox series

Patch

diff --git a/drivers/crypto/qce/common.c b/drivers/crypto/qce/common.c
index dceb9579d87a..dd76175d5c62 100644
--- a/drivers/crypto/qce/common.c
+++ b/drivers/crypto/qce/common.c
@@ -419,6 +419,8 @@  int qce_check_status(struct qce_device *qce, u32 *status)
 	 */
 	if (*status & STATUS_ERRORS || !(*status & BIT(OPERATION_DONE_SHIFT)))
 		ret = -ENXIO;
+	else if (*status & BIT(MAC_FAILED_SHIFT))
+		ret = -EBADMSG;
 
 	return ret;
 }