From: <dan.carpenter@oracle.com>
To: paul@crapouillou.net
Cc: dri-devel@lists.freedesktop.org
Subject: [bug report] drm/ingenic: Add support for the IPU
Date: Mon, 20 Jul 2020 10:22:37 +0300 [thread overview]
Message-ID: <20200720072237.GA8232@mwanda> (raw)
Hello Paul Cercueil,
The patch fc1acf317b01: "drm/ingenic: Add support for the IPU" from
Jul 16, 2020, leads to the following static checker warning:
drivers/gpu/drm/ingenic/ingenic-drm-drv.c:232 ingenic_drm_crtc_atomic_check()
error: potentially dereferencing uninitialized 'ipu_state'.
drivers/gpu/drm/ingenic/ingenic-drm-drv.c
197 static int ingenic_drm_crtc_atomic_check(struct drm_crtc *crtc,
198 struct drm_crtc_state *state)
199 {
200 struct ingenic_drm *priv = drm_crtc_get_priv(crtc);
201 struct drm_plane_state *f1_state, *f0_state, *ipu_state;
202 long rate;
203
204 if (!drm_atomic_crtc_needs_modeset(state))
205 return 0;
206
207 if (state->mode.hdisplay > priv->soc_info->max_width ||
208 state->mode.vdisplay > priv->soc_info->max_height)
209 return -EINVAL;
210
211 rate = clk_round_rate(priv->pix_clk,
212 state->adjusted_mode.clock * 1000);
213 if (rate < 0)
214 return rate;
215
216 if (priv->soc_info->has_osd) {
217 f1_state = drm_atomic_get_plane_state(state->state, &priv->f1);
218 f0_state = drm_atomic_get_plane_state(state->state, &priv->f0);
219
220 if (IS_ENABLED(CONFIG_DRM_INGENIC_IPU) && priv->ipu_plane) {
Do we need to check both the CONFIG and the priv->ipu_plane or would it
be sufficient to just check if (priv->ipu_plane) {?
221 ipu_state = drm_atomic_get_plane_state(state->state, priv->ipu_plane);
222
223 /* IPU and F1 planes cannot be enabled at the same time. */
224 if (f1_state->fb && ipu_state->fb) {
225 dev_dbg(priv->dev, "Cannot enable both F1 and IPU\n");
226 return -EINVAL;
227 }
228 }
229
230 /* If all the planes are disabled, we won't get a VBLANK IRQ */
231 priv->no_vblank = !f1_state->fb && !f0_state->fb &&
232 !(priv->ipu_plane && ipu_state->fb);
^^^^^^^^^^^^^^^
Because here we're only checking "priv->ipu_plane".
233 }
234
235 return 0;
236 }
regards,
dan carpenter
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
next reply other threads:[~2020-07-20 7:27 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-07-20 7:22 dan.carpenter [this message]
2020-07-20 7:24 ` [bug report] drm/ingenic: Add support for the IPU Dan Carpenter
2020-07-20 7:44 ` Daniel Vetter
2020-07-20 10:27 ` Paul Cercueil
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200720072237.GA8232@mwanda \
--to=dan.carpenter@oracle.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=paul@crapouillou.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.