Re: [PATCH v4] media: au0828 - convert to use videobuf2

From: Shuah Khan
Date: Fri Jan 23 2015 - 14:36:27 EST


On 01/23/2015 12:17 PM, Shuah Khan wrote:
> On 01/23/2015 08:00 AM, Shuah Khan wrote:
>> On 01/23/2015 02:50 AM, Hans Verkuil wrote:
>>> Hi Shuah,
>>>
>>> On 01/23/2015 12:42 AM, Shuah Khan wrote:
>>>> Convert au0828 to use videobuf2. Tested with NTSC.
>>>> Tested video and vbi devices with xawtv, tvtime,
>>>> and vlc. Ran v4l2-compliance to ensure there are
>>>> no regressions. video now has no failures and vbi
>>>> has 3 fewer failures.
>>>>
>>>> video before:
>>>> test VIDIOC_G_FMT: FAIL 3 failures
>>>> Total: 72, Succeeded: 69, Failed: 3, Warnings: 0
>>>>
>>>> Video after:
>>>> Total: 72, Succeeded: 72, Failed: 0, Warnings: 18
>>>>
>>>> vbi before:
>>>> test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: FAIL
>>>> test VIDIOC_EXPBUF: FAIL
>>>> test USERPTR: FAIL
>>>> Total: 72, Succeeded: 66, Failed: 6, Warnings: 0
>>>>
>>>> vbi after:
>>>> test VIDIOC_QUERYCAP: FAIL
>>>> test MMAP: FAIL
>>>> Total: 78, Succeeded: 75, Failed: 3, Warnings: 0
>>>
>>> There shouldn't be any fails for VBI. That really needs to be fixed.
>>> Esp. the QUERYCAP fail should be easy to fix.
>>>
>>> BTW, can you paste the full v4l2-compliance output next time? That's
>>> more informative than just these summaries.
>>>
>>
>> I will re-run the tests and fix it and resend the patch. I think I was
>> seeing querycap compliance failure when run with -V0 option and not when
>> I run it without. I can attach the full log.
>>
>
> Hi Hans,
>
> Finally some sanity. When I ran the compliance test on vbi device
> with incorrect options, hence it was treated as a video device which
> explains the following fail message:
> fail: v4l2-compliance.cpp(347): node->is_video && !(dcaps & video_caps)
> test VIDIOC_QUERYCAP: FAIL
>
> This is my bad - I must have did command recall and just changed the
> device file. Sorry for the confusion.
>
> Re-ran the test correctly this time and I don't see any querycap errors.
> Please see attached files for vbi and video. I will resend the patch
> with updated change log with the correct results.
>
TRY_FMT and S_FMT both don't handle invalid pixelformats. Looks like
there is reason behind this based on the comments:

/* format->fmt.pix.width only support 720 and height 480 */
if (width != 720)
width = 720;
if (height != 480)
height = 480;

-- Shuah


--
Shuah Khan
Sr. Linux Kernel Developer
Open Source Innovation Group
Samsung Research America (Silicon Valley)
shuahkh@xxxxxxxxxxxxxxx | (970) 217-8978
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/