Irq_of_parse_and_map will return zero in case of error, so add a error
check for that.

Signed-off-by: Andrey Smirnov <andrew.smir...@gmail.com>
Cc: Chris Healy <cphe...@gmail.com>
Cc: Lucas Stach <l.st...@pengutronix.de>
Cc: Horia Geantă <horia.gea...@nxp.com>
Cc: Herbert Xu <herb...@gondor.apana.org.au>
Cc: Iuliana Prodan <iuliana.pro...@nxp.com>
Cc: linux-crypto@vger.kernel.org
Cc: linux-ker...@vger.kernel.org
---
 drivers/crypto/caam/jr.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/crypto/caam/jr.c b/drivers/crypto/caam/jr.c
index 7947d61a25cf..2732f3a0725a 100644
--- a/drivers/crypto/caam/jr.c
+++ b/drivers/crypto/caam/jr.c
@@ -537,6 +537,10 @@ static int caam_jr_probe(struct platform_device *pdev)
 
        /* Identify the interrupt */
        jrpriv->irq = irq_of_parse_and_map(nprop, 0);
+       if (!jrpriv->irq) {
+               dev_err(jrdev, "irq_of_parse_and_map failed\n");
+               return -EINVAL;
+       }
 
        /* Now do the platform independent part */
        error = caam_jr_init(jrdev); /* now turn on hardware */
-- 
2.21.0

Reply via email to