summaryrefslogtreecommitdiff
path: root/drivers/memory/emif.c
diff options
context:
space:
mode:
authorJiasheng Jiang <jiasheng@iscas.ac.cn>2022-02-24 10:54:44 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2022-04-15 14:18:09 +0200
commit0ead05f7218fc0811e09adf4b0e66f96e90828b8 (patch)
treef72891638c4dde2a4649a8299aff62abfce6910a /drivers/memory/emif.c
parent68a69ad8df959e5211ed4a8e120783b2d352ea74 (diff)
memory: emif: Add check for setup_interrupts
[ Upstream commit fd7bd80b46373887b390852f490f21b07e209498 ] As the potential failure of the devm_request_threaded_irq(), it should be better to check the return value of the setup_interrupts() and return error if fails. Fixes: 68b4aee35d1f ("memory: emif: add interrupt and temperature handling") Signed-off-by: Jiasheng Jiang <jiasheng@iscas.ac.cn> Link: https://lore.kernel.org/r/20220224025444.3256530-1-jiasheng@iscas.ac.cn Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers/memory/emif.c')
-rw-r--r--drivers/memory/emif.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/memory/emif.c b/drivers/memory/emif.c
index af296b6fcbbd..0d6b975616bb 100644
--- a/drivers/memory/emif.c
+++ b/drivers/memory/emif.c
@@ -1515,7 +1515,7 @@ static int __init_or_module emif_probe(struct platform_device *pdev)
{
struct emif_data *emif;
struct resource *res;
- int irq;
+ int irq, ret;
if (pdev->dev.of_node)
emif = of_get_memory_device_details(pdev->dev.of_node, &pdev->dev);
@@ -1549,7 +1549,9 @@ static int __init_or_module emif_probe(struct platform_device *pdev)
emif_onetime_settings(emif);
emif_debugfs_init(emif);
disable_and_clear_all_interrupts(emif);
- setup_interrupts(emif, irq);
+ ret = setup_interrupts(emif, irq);
+ if (ret)
+ goto error;
/* One-time actions taken on probing the first device */
if (!emif1) {