From: Tim Nordell <tim.nordell@logicpd.com>
To: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: <linux-media@vger.kernel.org>, Sakari Ailus <sakari.ailus@iki.fi>
Subject: Re: [PATCH v2 25/26] omap3isp: Move to videobuf2
Date: Wed, 18 Mar 2015 09:54:58 -0500 [thread overview]
Message-ID: <550991C2.80503@logicpd.com> (raw)
In-Reply-To: <2161613.bbRGp2ApSQ@avalon>
Laurent -
On 03/18/15 07:39, Laurent Pinchart wrote:
> Hi Tim,
>
> On Tuesday 17 March 2015 17:57:30 Tim Nordell wrote:
>> On 04/21/14 07:29, Laurent Pinchart wrote:
>>> Replace the custom buffers queue implementation with a videobuf2 queue.
>>>
>>> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
>> I realize this is late (it's in the kernel now), but I'm noticing that
>> this does not appear to properly support the scatter-gather buffers that
>> were previously supported as far as I recall (and can tell with what was
>> removed with this patch), especially when using USERPTR. You can
>> observe this using "yavta" with the -u parameter. Can you confirm if
>> this works for you? I get the following output from the kernel when
>> attempting to stream a 640x480 UYVY framebuffer:
>>
>> [ 111.381256] contiguous mapping is too small 589824/614400
> The OMAP3 ISP uses an IOMMU, physically non-contiguous buffers should thus be
> mapped contiguously into the device memory space. I haven't tried USERPTR
> support recently, but this surprises me. It requires investigation. Could you
> give it a try ?
>
That's why I wrote the e-mail since I did give it a try. It doesn't
work in kernel v3.19 as expected. I'm using a BT.656 device (and with
the patches I submitted last week since it didn't work for my device
without those that I wrote), so it's a little harder to go back to the
exact patch that causes it to fail (since I believe it's this patch
which is pre-BT.656 support) but I would guess that it's the one I
replied to here.
The videobuf2-dma-contig framework is what is emitting this error, and
part of it's framework checks that the buffer is fully contiguous in
memory rather than doing scatter-gather. The function
"vb2_dc_get_contiguous_size(...)" is what finds the full contiguous area
of the buffer and reports back internally how much is available in a
row. Would videobuf2-dma-sg have been a better choice here? I tried a
naive conversion to that (that is, I'm sure I messed something up), but
it yielded the kernel spewing messages about "Address Hole seen by CAM"
from the omap_l3_smx driver.
- Tim
next prev parent reply other threads:[~2015-03-18 14:55 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-21 12:28 [PATCH v2 00/26] OMAP3 ISP: Move to videobuf2 Laurent Pinchart
2014-04-21 12:28 ` [PATCH v2 01/26] omap3isp: stat: Rename IS_COHERENT_BUF to ISP_STAT_USES_DMAENGINE Laurent Pinchart
2014-04-30 22:45 ` Sakari Ailus
2014-04-30 22:48 ` Laurent Pinchart
2014-05-01 11:15 ` Sakari Ailus
2014-05-01 16:08 ` Laurent Pinchart
2014-04-21 12:28 ` [PATCH v2 02/26] omap3isp: stat: Remove impossible WARN_ON Laurent Pinchart
2014-04-21 12:28 ` [PATCH v2 03/26] omap3isp: stat: Share common code for buffer allocation Laurent Pinchart
2014-04-21 12:28 ` [PATCH v2 04/26] omap3isp: stat: Merge dma_addr and iommu_addr fields Laurent Pinchart
2014-04-21 12:28 ` [PATCH v2 05/26] omap3isp: stat: Store sg table in ispstat_buffer Laurent Pinchart
2014-04-21 12:28 ` [PATCH v2 06/26] omap3isp: stat: Use the DMA API Laurent Pinchart
2014-04-21 12:28 ` [PATCH v2 07/26] omap3isp: ccdc: Use the DMA API for LSC Laurent Pinchart
2014-04-21 12:28 ` [PATCH v2 08/26] omap3isp: ccdc: Use the DMA API for FPC Laurent Pinchart
2014-04-21 12:28 ` [PATCH v2 09/26] omap3isp: video: Set the buffer bytesused field at completion time Laurent Pinchart
2014-04-21 12:28 ` [PATCH v2 10/26] omap3isp: queue: Move IOMMU handling code to the queue Laurent Pinchart
2014-04-21 12:28 ` [PATCH v2 11/26] omap3isp: queue: Use sg_table structure Laurent Pinchart
2014-04-21 12:28 ` [PATCH v2 12/26] omap3isp: queue: Merge the prepare and sglist functions Laurent Pinchart
2014-04-21 12:28 ` [PATCH v2 13/26] omap3isp: queue: Inline the ispmmu_v(un)map functions Laurent Pinchart
2014-04-21 12:29 ` [PATCH v2 14/26] omap3isp: queue: Allocate kernel buffers with dma_alloc_coherent Laurent Pinchart
2014-04-21 12:29 ` [PATCH v2 15/26] omap3isp: queue: Fix the dma_map_sg() return value check Laurent Pinchart
2014-04-21 12:29 ` [PATCH v2 16/26] omap3isp: queue: Map PFNMAP buffers to device Laurent Pinchart
2014-04-21 12:29 ` [PATCH v2 17/26] omap3isp: queue: Use sg_alloc_table_from_pages() Laurent Pinchart
2014-04-21 12:29 ` [PATCH v2 18/26] omap3isp: Use the ARM DMA IOMMU-aware operations Laurent Pinchart
2014-04-21 12:29 ` [PATCH v2 19/26] omap3isp: queue: Don't build scatterlist for kernel buffer Laurent Pinchart
2014-04-21 12:29 ` [PATCH v2 20/26] omap3isp: Move queue mutex to isp_video structure Laurent Pinchart
2014-04-21 12:29 ` [PATCH v2 21/26] omap3isp: Move queue irqlock " Laurent Pinchart
2014-04-21 12:29 ` [PATCH v2 22/26] omap3isp: Move buffer irqlist to isp_buffer structure Laurent Pinchart
2014-04-21 12:29 ` [PATCH v2 23/26] omap3isp: Cancel all queued buffers when stopping the video stream Laurent Pinchart
2014-04-21 12:29 ` [PATCH v2 24/26] v4l: vb2: Add a function to discard all DONE buffers Laurent Pinchart
2014-04-21 12:29 ` [PATCH v2 25/26] omap3isp: Move to videobuf2 Laurent Pinchart
2015-03-17 22:57 ` Tim Nordell
2015-03-18 12:39 ` Laurent Pinchart
2015-03-18 14:54 ` Tim Nordell [this message]
2015-03-18 14:59 ` Laurent Pinchart
2015-03-18 15:19 ` Tim Nordell
2015-03-18 15:21 ` Laurent Pinchart
2015-03-18 19:49 ` Tim Nordell
2015-03-18 20:58 ` Tim Nordell
2015-03-18 21:44 ` Sakari Ailus
2015-03-18 22:43 ` Tim Nordell
2014-04-21 12:29 ` [PATCH v2 26/26] omap3isp: Rename isp_buffer isp_addr field to dma Laurent Pinchart
2014-05-01 17:37 ` [PATCH v2 00/26] OMAP3 ISP: Move to videobuf2 Sakari Ailus
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=550991C2.80503@logicpd.com \
--to=tim.nordell@logicpd.com \
--cc=laurent.pinchart@ideasonboard.com \
--cc=linux-media@vger.kernel.org \
--cc=sakari.ailus@iki.fi \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).