All of lore.kernel.org
 help / color / mirror / Atom feed
* [bug report] media: v4l: omap_vout: vrfb: Convert to dmaengine
@ 2017-06-29 10:48 Dan Carpenter
  0 siblings, 0 replies; only message in thread
From: Dan Carpenter @ 2017-06-29 10:48 UTC (permalink / raw)
  To: peter.ujfalusi; +Cc: linux-media

Hello Peter Ujfalusi,

The patch 6a1560ecaa8c: "media: v4l: omap_vout: vrfb: Convert to
dmaengine" from May 3, 2017, leads to the following static checker
warning:

	drivers/media/platform/omap/omap_vout_vrfb.c:273 omap_vout_prepare_vrfb()
	error: uninitialized symbol 'flags'.

drivers/media/platform/omap/omap_vout_vrfb.c
   232  int omap_vout_prepare_vrfb(struct omap_vout_device *vout,
   233                             struct videobuf_buffer *vb)
   234  {
   235          struct dma_async_tx_descriptor *tx;
   236          enum dma_ctrl_flags flags;
                                    ^^^^^

   237          struct dma_chan *chan = vout->vrfb_dma_tx.chan;
   238          struct dma_device *dmadev = chan->device;
   239          struct dma_interleaved_template *xt = vout->vrfb_dma_tx.xt;
   240          dma_cookie_t cookie;
   241          enum dma_status status;
   242          enum dss_rotation rotation;
   243          size_t dst_icg;
   244          u32 pixsize;
   245  
   246          if (!is_rotation_enabled(vout))
   247                  return 0;
   248  
   249          /* If rotation is enabled, copy input buffer into VRFB
   250           * memory space using DMA. We are copying input buffer
   251           * into VRFB memory space of desired angle and DSS will
   252           * read image VRFB memory for 0 degree angle
   253           */
   254  
   255          pixsize = vout->bpp * vout->vrfb_bpp;
   256          dst_icg = ((MAX_PIXELS_PER_LINE * pixsize) -
   257                    (vout->pix.width * vout->bpp)) + 1;
   258  
   259          xt->src_start = vout->buf_phy_addr[vb->i];
   260          xt->dst_start = vout->vrfb_context[vb->i].paddr[0];
   261  
   262          xt->numf = vout->pix.height;
   263          xt->frame_size = 1;
   264          xt->sgl[0].size = vout->pix.width * vout->bpp;
   265          xt->sgl[0].icg = dst_icg;
   266  
   267          xt->dir = DMA_MEM_TO_MEM;
   268          xt->src_sgl = false;
   269          xt->src_inc = true;
   270          xt->dst_sgl = true;
   271          xt->dst_inc = true;
   272  
   273          tx = dmadev->device_prep_interleaved_dma(chan, xt, flags);
                                                                   ^^^^^
I'm surprised new versions of GCC don't complain about this.

   274          if (tx == NULL) {
   275                  pr_err("%s: DMA interleaved prep error\n", __func__);
   276                  return -EINVAL;

regards,
dan carpenter

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2017-06-29 10:48 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-06-29 10:48 [bug report] media: v4l: omap_vout: vrfb: Convert to dmaengine Dan Carpenter

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.