drm/v3d: Handle errors from IRQ setup.
Noted in review by Dave Emett for V3D 4.2 support. Signed-off-by: Eric Anholt <eric@anholt.net> Link: https://patchwork.freedesktop.org/patch/msgid/20190308174336.7866-1-eric@anholt.net Reviewed-by: Dave Emett <david.emett@broadcom.com>
This commit is contained in:
@@ -156,7 +156,7 @@ v3d_hub_irq(int irq, void *arg)
|
||||
return status;
|
||||
}
|
||||
|
||||
void
|
||||
int
|
||||
v3d_irq_init(struct v3d_dev *v3d)
|
||||
{
|
||||
int ret, core;
|
||||
@@ -173,13 +173,22 @@ v3d_irq_init(struct v3d_dev *v3d)
|
||||
ret = devm_request_irq(v3d->dev, platform_get_irq(v3d->pdev, 0),
|
||||
v3d_hub_irq, IRQF_SHARED,
|
||||
"v3d_hub", v3d);
|
||||
if (ret)
|
||||
goto fail;
|
||||
|
||||
ret = devm_request_irq(v3d->dev, platform_get_irq(v3d->pdev, 1),
|
||||
v3d_irq, IRQF_SHARED,
|
||||
"v3d_core0", v3d);
|
||||
if (ret)
|
||||
dev_err(v3d->dev, "IRQ setup failed: %d\n", ret);
|
||||
goto fail;
|
||||
|
||||
v3d_irq_enable(v3d);
|
||||
return 0;
|
||||
|
||||
fail:
|
||||
if (ret != -EPROBE_DEFER)
|
||||
dev_err(v3d->dev, "IRQ setup failed: %d\n", ret);
|
||||
return ret;
|
||||
}
|
||||
|
||||
void
|
||||
|
Reference in New Issue
Block a user