Quoting cgel.zte@xxxxxxxxx (2022-04-22 01:49:51) > From: Lv Ruyi <lv.ruyi@xxxxxxxxxx> > > 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 <zealci@xxxxxxxxxx> > Signed-off-by: Lv Ruyi <lv.ruyi@xxxxxxxxxx> > --- > drivers/gpu/drm/msm/dp/dp_display.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/msm/dp/dp_display.c b/drivers/gpu/drm/msm/dp/dp_display.c > index a42732b67349..3926d2ac107d 100644 > --- a/drivers/gpu/drm/msm/dp/dp_display.c > +++ b/drivers/gpu/drm/msm/dp/dp_display.c > @@ -1239,7 +1239,7 @@ 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); Why can't platform_get_irq() be used? > - if (dp->irq < 0) { > + if (!dp->irq) { > rc = dp->irq; zero as an error return value is an error? > DRM_ERROR("failed to get irq: %d\n", rc); > return rc;