All of lore.kernel.org
 help / color / mirror / Atom feed
From: Hans Verkuil <hverkuil@xs4all.nl>
To: Tim Harvey <tharvey@gateworks.com>
Cc: linux-media <linux-media@vger.kernel.org>,
	Shawn Guo <shawnguo@kernel.org>,
	Steve Longerbeam <slongerbeam@gmail.com>,
	Philipp Zabel <p.zabel@pengutronix.de>,
	Hans Verkuil <hansverk@cisco.com>,
	Mauro Carvalho Chehab <mchehab@s-opensource.com>
Subject: Re: [PATCH v9 6/8] media: i2c: Add TDA1997x HDMI receiver driver
Date: Fri, 9 Feb 2018 09:02:40 +0100	[thread overview]
Message-ID: <cdfaf99c-09a0-e965-dc6f-f6b94168e706@xs4all.nl> (raw)
In-Reply-To: <CAJ+vNU3TRhpBUto_bL6o_RfNX9vKFN2ThU7+8pucv9M64+Fhag@mail.gmail.com>

On 02/09/2018 09:00 AM, Tim Harvey wrote:
> On Thu, Feb 8, 2018 at 11:41 PM, Hans Verkuil <hverkuil@xs4all.nl> wrote:
>> On 02/09/2018 07:01 AM, Tim Harvey wrote:
>>>
>>> I don't see v4l2-subdev.c (or anything) ever calling g_input_status.
>>> How do I test this?
>>
>> Huh, that's a very good question! It is meant to be called by bridge
>> drivers implementing VIDIOC_ENUMINPUT. But that doesn't apply to the imx
>> driver since it is expecting userspace to talk directly to the subdev.
>>
>> Now for the DV_TIMINGS API this doesn't matter all that much since
>> QUERY_DV_TIMINGS can do the same job through the returned error code, but
>> for analog TV there is no such option (QUERYSTD doesn't support such
>> detailed feedback).
>>
>> I see that you have an adv7180 in your system. Can you run
>> 'v4l2-compliance -uX' for the adv7180 subdev and post the output here?
>>
> 
> 
> # v4l2-compliance -u0
> v4l2-compliance SHA   : b2f8f9049056eb6f9e028927dacb2c715a062df8
> 
> Compliance test for device /d[ 2526.153591] adv7180 2-0020: =================  S
> TART STATUS  =================
> ev/v4l-subdev0:
> 
> Media Driver I[ 2526.162531] adv7180 2-0020: ==================  END STATUS  ===
> ===============
> nfo:
>         Driver name      : imx-media
>         Model            : imx-media
>         Serial           :
>         Bus info         :
>         Media version    : 4.15.0
>         Hardware revision: 0x00000000 (0)
>         Driver version   : 4.15.0
> Interface Info:
>         ID               : 0x0300008d
>         Type             : V4L Sub-Device
> Entity Info:
>         ID               : 0x00000001 (1)
>         Name             : adv7180 2-0020
>         Function         : FAIL: Unknown V4L2 Sub-Device
>         Pad 0x01000002   : Source
>           Link 0x0200007f: to remote pad 0x1000067 of entity 'ipu2_csi1_mux': Da
> ta
> 
> Required ioctls:
>         test MC information (see 'Media Driver Info' above): FAIL
> 
> Allow for multiple opens:
>         test second /dev/v4l-subdev0 open: OK
>         test for unlimited opens: OK
> 
> Debug ioctls:
>         test VIDIOC_LOG_STATUS: OK (Not Supported)
> 
> Input ioctls:
>         test VIDIOC_G/S_TUNER/ENUM_FREQ_BANDS: OK (Not Supported)
>         test VIDIOC_G/S_FREQUENCY: OK (Not Supported)
>         test VIDIOC_S_HW_FREQ_SEEK: OK (Not Supported)
>         test VIDIOC_ENUMAUDIO: OK (Not Supported)
>         test VIDIOC_G/S/ENUMINPUT: OK (Not Supported)
>         test VIDIOC_G/S_AUDIO: OK (Not Supported)
>         Inputs: 0 Audio Inputs: 0 Tuners: 0
> 
> Output ioctls:
>         test VIDIOC_G/S_MODULATOR: OK (Not Supported)
>         test VIDIOC_G/S_FREQUENCY: OK (Not Supported)
>         test VIDIOC_ENUMAUDOUT: OK (Not Supported)
>         test VIDIOC_G/S/ENUMOUTPUT: OK (Not Supported)
>         test VIDIOC_G/S_AUDOUT: OK (Not Supported)
>         Outputs: 0 Audio Outputs: 0 Modulators: 0
> 
> Input/Output configuration ioctls:
>         test VIDIOC_ENUM/G/S/QUERY_STD: OK (Not Supported)

Not Supported!

>         test VIDIOC_ENUM/G/S/QUERY_DV_TIMINGS: OK (Not Supported)
>         test VIDIOC_DV_TIMINGS_CAP: OK (Not Supported)
>         test VIDIOC_G/S_EDID: OK (Not Supported)
> 
> Sub-Device ioctls (Source Pad 0):
>         test Try VIDIOC_SUBDEV_ENUM_MBUS_CODE/FRAME_SIZE/FRAME_INTERVAL: OK
>                 fail: v4l2-test-subdevs.cpp(301): fmt.width == 0 ||
> fmt.width == ~0U
>                 fail: v4l2-test-subdevs.cpp(342):
> checkMBusFrameFmt(node, fmt.format)
>         test Try VIDIOC_SUBDEV_G/S_FMT: FAIL
>         test Try VIDIOC_SUBDEV_G/S_SELECTION/CROP: OK (Not Supported)
>         test Active VIDIOC_SUBDEV_ENUM_MBUS_CODE/FRAME_SIZE/FRAME_INTERVAL: OK
>                 fail: v4l2-test-subdevs.cpp(307): fmt.ycbcr_enc == 0xffff
>                 fail: v4l2-test-subdevs.cpp(342):
> checkMBusFrameFmt(node, fmt.format)
>         test Active VIDIOC_SUBDEV_G/S_FMT: FAIL
>         test Active VIDIOC_SUBDEV_G/S_SELECTION/CROP: OK (Not Supported)
>         test VIDIOC_SUBDEV_G/S_FRAME_INTERVAL: OK (Not Supported)
> 
> Control ioctls:
>         test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK
>         test VIDIOC_QUERYCTRL: OK
>         test VIDIOC_G/S_CTRL: OK
>         test VIDIOC_G/S/TRY_EXT_CTRLS: OK
>         test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: OK
>         test VIDIOC_G/S_JPEGCOMP: OK (Not Supported)
>         Standard Controls: 5 Private Controls: 1
> 
> Format ioctls:
>         test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK (Not Supported)
>         test VIDIOC_G/S_PARM: OK (Not Supported)
>         test VIDIOC_G_FBUF: OK (Not Supported)
>         test VIDIOC_G_FMT: OK (Not Supported)
>         test VIDIOC_TRY_FMT: OK (Not Supported)
>         test VIDIOC_S_FMT: OK (Not Supported)
>         test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported)
>         test Cropping: OK (Not Supported)
>         test Composing: OK (Not Supported)
>         test Scaling: OK (Not Supported)
> 
> Codec ioctls:
>         test VIDIOC_(TRY_)ENCODER_CMD: OK (Not Supported)
>         test VIDIOC_G_ENC_INDEX: OK (Not Supported)
>         test VIDIOC_(TRY_)DECODER_CMD: OK (Not Supported)
> 
> Buffer ioctls:
>         test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK (Not Supported)
>         test VIDIOC_EXPBUF: OK (Not Supported)
> 
> Total: 47, Succeeded: 44, Failed: 3, Warnings: 0
> 
>> Analog TV receivers are rare in MC bridge drivers, and I see that the subdev
>> API doesn't even support the G/S/QUERY/ENUM_STD ioctls! I think the adv7180 is
>> basically unusable in your system. And we need a subdev replacement for
>> VIDIOC_ENUMINPUT.
>>
>> Was the adv7180 ever tested? Are you able to test it?
> 
> Yes, it works - I've tested and used it.

How? Without STD support how can you even see what standards are supported
and switch between standards? Did you try to switch between PAL and NTSC?

Regards,

	Hans

  reply	other threads:[~2018-02-09  8:02 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-02-07 22:42 [PATCH v9 0/8] TDA1997x HDMI video reciver Tim Harvey
2018-02-07 22:42 ` Tim Harvey
2018-02-07 22:42 ` [PATCH v9 1/8] v4l2-dv-timings: add v4l2_hdmi_colorimetry() Tim Harvey
2018-02-07 22:42   ` Tim Harvey
2018-02-07 22:42 ` [PATCH v9 2/8] media: v4l-ioctl: fix clearing pad for VIDIOC_DV_TIMIGNS_CAP Tim Harvey
2018-02-07 22:42   ` Tim Harvey
2018-02-07 22:42 ` [PATCH v9 3/8] media: add digital video decoder entity function Tim Harvey
2018-02-07 22:42   ` Tim Harvey
2018-02-07 22:42 ` [PATCH v9 4/8] MAINTAINERS: add entry for NXP TDA1997x driver Tim Harvey
2018-02-07 22:42   ` Tim Harvey
2018-02-07 22:42 ` [PATCH v9 5/8] media: dt-bindings: Add bindings for TDA1997X Tim Harvey
2018-02-07 22:42 ` [PATCH v9 6/8] media: i2c: Add TDA1997x HDMI receiver driver Tim Harvey
2018-02-07 22:42   ` Tim Harvey
2018-02-08 15:06   ` Hans Verkuil
2018-02-09  6:01     ` Tim Harvey
2018-02-09  7:41       ` Hans Verkuil
2018-02-09  8:00         ` Tim Harvey
2018-02-09  8:02           ` Hans Verkuil [this message]
2018-02-09  8:30             ` Tim Harvey
2018-02-07 22:42 ` [PATCH v9 7/8] ARM: dts: imx: Add TDA19971 HDMI Receiver to GW54xx Tim Harvey
2018-02-07 22:42 ` [PATCH v9 8/8] ARM: dts: imx: Add TDA19971 HDMI Receiver to GW551x Tim Harvey

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=cdfaf99c-09a0-e965-dc6f-f6b94168e706@xs4all.nl \
    --to=hverkuil@xs4all.nl \
    --cc=hansverk@cisco.com \
    --cc=linux-media@vger.kernel.org \
    --cc=mchehab@s-opensource.com \
    --cc=p.zabel@pengutronix.de \
    --cc=shawnguo@kernel.org \
    --cc=slongerbeam@gmail.com \
    --cc=tharvey@gateworks.com \
    /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.