From: Lv Ruyi <[email protected]>

The irq_of_parse_and_map() function returns 0 on failure, and does not
return an negative value.

Fixes: 8ede2ecc3e5e ("drm/msm/dp: Add DP compliance tests on Snapdragon 
Chipsets")
Reported-by: Zeal Robot <[email protected]>
Signed-off-by: Lv Ruyi <[email protected]>
---
v2: don't print rc, and return -EINVAL rather than 0
---
 drivers/gpu/drm/msm/dp/dp_display.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/msm/dp/dp_display.c 
b/drivers/gpu/drm/msm/dp/dp_display.c
index a42732b67349..c3566e6564b1 100644
--- a/drivers/gpu/drm/msm/dp/dp_display.c
+++ b/drivers/gpu/drm/msm/dp/dp_display.c
@@ -1239,10 +1239,9 @@ int dp_display_request_irq(struct msm_dp *dp_display)
        dp = container_of(dp_display, struct dp_display_private, dp_display);
 
        dp->irq = irq_of_parse_and_map(dp->pdev->dev.of_node, 0);
-       if (dp->irq < 0) {
-               rc = dp->irq;
-               DRM_ERROR("failed to get irq: %d\n", rc);
-               return rc;
+       if (!dp->irq) {
+               DRM_ERROR("failed to get irq\n");
+               return -EINVAL;
        }
 
        rc = devm_request_irq(&dp->pdev->dev, dp->irq,
-- 
2.25.1

Reply via email to