|
@@ -198,6 +198,9 @@ int qcom_q6v5_init(struct qcom_q6v5 *q6v5, struct platform_device *pdev,
|
|
}
|
|
}
|
|
|
|
|
|
q6v5->fatal_irq = platform_get_irq_byname(pdev, "fatal");
|
|
q6v5->fatal_irq = platform_get_irq_byname(pdev, "fatal");
|
|
|
|
+ if (q6v5->fatal_irq == -EPROBE_DEFER)
|
|
|
|
+ return -EPROBE_DEFER;
|
|
|
|
+
|
|
ret = devm_request_threaded_irq(&pdev->dev, q6v5->fatal_irq,
|
|
ret = devm_request_threaded_irq(&pdev->dev, q6v5->fatal_irq,
|
|
NULL, q6v5_fatal_interrupt,
|
|
NULL, q6v5_fatal_interrupt,
|
|
IRQF_TRIGGER_RISING | IRQF_ONESHOT,
|
|
IRQF_TRIGGER_RISING | IRQF_ONESHOT,
|
|
@@ -208,6 +211,9 @@ int qcom_q6v5_init(struct qcom_q6v5 *q6v5, struct platform_device *pdev,
|
|
}
|
|
}
|
|
|
|
|
|
q6v5->ready_irq = platform_get_irq_byname(pdev, "ready");
|
|
q6v5->ready_irq = platform_get_irq_byname(pdev, "ready");
|
|
|
|
+ if (q6v5->ready_irq == -EPROBE_DEFER)
|
|
|
|
+ return -EPROBE_DEFER;
|
|
|
|
+
|
|
ret = devm_request_threaded_irq(&pdev->dev, q6v5->ready_irq,
|
|
ret = devm_request_threaded_irq(&pdev->dev, q6v5->ready_irq,
|
|
NULL, q6v5_ready_interrupt,
|
|
NULL, q6v5_ready_interrupt,
|
|
IRQF_TRIGGER_RISING | IRQF_ONESHOT,
|
|
IRQF_TRIGGER_RISING | IRQF_ONESHOT,
|
|
@@ -218,6 +224,9 @@ int qcom_q6v5_init(struct qcom_q6v5 *q6v5, struct platform_device *pdev,
|
|
}
|
|
}
|
|
|
|
|
|
q6v5->handover_irq = platform_get_irq_byname(pdev, "handover");
|
|
q6v5->handover_irq = platform_get_irq_byname(pdev, "handover");
|
|
|
|
+ if (q6v5->handover_irq == -EPROBE_DEFER)
|
|
|
|
+ return -EPROBE_DEFER;
|
|
|
|
+
|
|
ret = devm_request_threaded_irq(&pdev->dev, q6v5->handover_irq,
|
|
ret = devm_request_threaded_irq(&pdev->dev, q6v5->handover_irq,
|
|
NULL, q6v5_handover_interrupt,
|
|
NULL, q6v5_handover_interrupt,
|
|
IRQF_TRIGGER_RISING | IRQF_ONESHOT,
|
|
IRQF_TRIGGER_RISING | IRQF_ONESHOT,
|
|
@@ -229,6 +238,9 @@ int qcom_q6v5_init(struct qcom_q6v5 *q6v5, struct platform_device *pdev,
|
|
disable_irq(q6v5->handover_irq);
|
|
disable_irq(q6v5->handover_irq);
|
|
|
|
|
|
q6v5->stop_irq = platform_get_irq_byname(pdev, "stop-ack");
|
|
q6v5->stop_irq = platform_get_irq_byname(pdev, "stop-ack");
|
|
|
|
+ if (q6v5->stop_irq == -EPROBE_DEFER)
|
|
|
|
+ return -EPROBE_DEFER;
|
|
|
|
+
|
|
ret = devm_request_threaded_irq(&pdev->dev, q6v5->stop_irq,
|
|
ret = devm_request_threaded_irq(&pdev->dev, q6v5->stop_irq,
|
|
NULL, q6v5_stop_interrupt,
|
|
NULL, q6v5_stop_interrupt,
|
|
IRQF_TRIGGER_RISING | IRQF_ONESHOT,
|
|
IRQF_TRIGGER_RISING | IRQF_ONESHOT,
|