Re: [RFC PATCH v9 6/9] media: tegra: Add Tegra210 Video input driver

From: Dmitry Osipenko
Date: Thu Apr 23 2020 - 19:14:35 EST


24.04.2020 02:03, Dmitry Osipenko ÐÐÑÐÑ:
> 24.04.2020 01:59, Sowjanya Komatineni ÐÐÑÐÑ:
>>
>> On 4/23/20 3:55 PM, Dmitry Osipenko wrote:
>>> External email: Use caution opening links or attachments
>>>
>>>
>>> 23.04.2020 19:50, Sowjanya Komatineni ÐÐÑÐÑ:
>>>> On 4/23/20 12:48 AM, Hans Verkuil wrote:
>>>>> External email: Use caution opening links or attachments
>>>>>
>>>>>
>>>>> On 22/04/2020 08:18, Sowjanya Komatineni wrote:
>>>>>> Tegra210 contains a powerful Video Input (VI) hardware controller
>>>>>> which can support up to 6 MIPI CSI camera sensors.
>>>>>>
>>>>>> Each Tegra CSI port can be one-to-one mapped to VI channel and can
>>>>>> capture from an external camera sensor connected to CSI or from
>>>>>> built-in test pattern generator.
>>>>>>
>>>>>> Tegra210 supports built-in test pattern generator from CSI to VI.
>>>>>>
>>>>>> This patch adds a v4l2 capture driver with media interface for
>>>>>> Tegra210 built-in CSI to VI test pattern generator.
>>>>>>
>>>>>> This patch includes TPG support only and all the video pipeline
>>>>>> configuration happens through the video device node.
>>>>>>
>>>>>> Acked-by: Thierry Reding <treding@xxxxxxxxxx>
>>>>>> Signed-off-by: Sowjanya Komatineni <skomatineni@xxxxxxxxxx>
>>>>>> ---
>>>>>> ÂÂ drivers/staging/media/KconfigÂÂÂÂÂÂÂÂÂ |ÂÂÂ 2 +
>>>>>> ÂÂ drivers/staging/media/MakefileÂÂÂÂÂÂÂÂ |ÂÂÂ 1 +
>>>>>> ÂÂ drivers/staging/media/tegra/KconfigÂÂÂ |ÂÂ 13 +
>>>>>> ÂÂ drivers/staging/media/tegra/MakefileÂÂ |ÂÂÂ 8 +
>>>>>> ÂÂ drivers/staging/media/tegra/TODOÂÂÂÂÂÂ |ÂÂ 10 +
>>>>>> ÂÂ drivers/staging/media/tegra/common.hÂÂ |Â 262 ++++++++
>>>>>> ÂÂ drivers/staging/media/tegra/csi.cÂÂÂÂÂ |Â 606 +++++++++++++++++
>>>>>> ÂÂ drivers/staging/media/tegra/csi.hÂÂÂÂÂ |Â 149 +++++
>>>>>> ÂÂ drivers/staging/media/tegra/tegra210.c |Â 709 ++++++++++++++++++++
>>>>>> ÂÂ drivers/staging/media/tegra/tegra210.h |Â 190 ++++++
>>>>>> ÂÂ drivers/staging/media/tegra/vi.cÂÂÂÂÂÂ | 1132
>>>>>> ++++++++++++++++++++++++++++++++
>>>>>> ÂÂ drivers/staging/media/tegra/vi.hÂÂÂÂÂÂ |ÂÂ 83 +++
>>>>>> ÂÂ drivers/staging/media/tegra/video.cÂÂÂ |Â 153 +++++
>>>>>> ÂÂ drivers/staging/media/tegra/video.hÂÂÂ |ÂÂ 34 +
>>>>>> ÂÂ 14 files changed, 3352 insertions(+)
>>>>>> ÂÂ create mode 100644 drivers/staging/media/tegra/Kconfig
>>>>>> ÂÂ create mode 100644 drivers/staging/media/tegra/Makefile
>>>>>> ÂÂ create mode 100644 drivers/staging/media/tegra/TODO
>>>>>> ÂÂ create mode 100644 drivers/staging/media/tegra/common.h
>>>>>> ÂÂ create mode 100644 drivers/staging/media/tegra/csi.c
>>>>>> ÂÂ create mode 100644 drivers/staging/media/tegra/csi.h
>>>>>> ÂÂ create mode 100644 drivers/staging/media/tegra/tegra210.c
>>>>>> ÂÂ create mode 100644 drivers/staging/media/tegra/tegra210.h
>>>>>> ÂÂ create mode 100644 drivers/staging/media/tegra/vi.c
>>>>>> ÂÂ create mode 100644 drivers/staging/media/tegra/vi.h
>>>>>> ÂÂ create mode 100644 drivers/staging/media/tegra/video.c
>>>>>> ÂÂ create mode 100644 drivers/staging/media/tegra/video.h
>>>>> With 'make menuconfig' I get this:
>>>>>
>>>>> scripts/kconfig/mconf Kconfig
>>>>>
>>>>> WARNING: unmet direct dependencies detected for TEGRA_HOST1X
>>>>> ÂÂÂ Depends on [n]: HAS_IOMEM [=y] && (ARCH_TEGRA || ARM &&
>>>>> COMPILE_TEST [=y])
>>>>> ÂÂÂ Selected by [y]:
>>>>> ÂÂÂ - VIDEO_TEGRA [=y] && STAGING [=y] && STAGING_MEDIA [=y] &&
>>>>> MEDIA_SUPPORT [=y] && (ARCH_TEGRA || COMPILE_TEST [=y])
>>>>>
>>>>> This is an x86_64 build with COMPILE_TEST set. I can provide my full
>>>>> .config if you need it.
>>>>>
>>>>> CONFIG_TEGRA_HOST1X=y
>>>>> CONFIG_VIDEO_TEGRA=y
>>>>>
>>>>> Regards,
>>>>>
>>>>> ÂÂÂÂÂÂÂÂÂ Hans
>>>> Hi Hans,
>>>>
>>>> In v7, changed Kconfig to remove ARM. But looks like we should limit
>>>>
>>>> TEGRA_HOST1X also limits compile to ARM only so running VIDEO_TEGRA on
>>>> x86_64 shows above warning.
>>>>
>>>> We should limit compile to ARM for CONFIG_VIDEO_TEGRA.
>>>>
>>>> Will update CONFIG_VIDEO_TEGRA dependency to use ARM && COMPILE_TEST
>>>> like I had in previous version. Sorry about this.
>>>>
>>>>
>>>> Also, I see some changes went into latest linux-next staging media
>>>> Kconfig, So, will have my patches on top of today's linux-next.
>>> VIDEO_TEGRA should depend on TEGRA_HOST1X and not select it.
>>>
>>> depends on (ARCH_TEGRA && TEGRA_HOST1X) || COMPILE_TEST
>>
>> Was selecting it to auto-select Tegra host1x when video_tegra is enabled.
>>
>> Yes, can use depends on
>>
>
> BTW, perhaps ARCH_TEGRA and COMPILE_TEST aren't needed since
> TEGRA_HOST1X already depends on them, so just:
>
> depends on TEGRA_HOST1X
>

Although, I guess TEGRA_HOST1X isn't really needed for compile-testing,
and thus, it won't hurt to drop that dependency for testing:

depends on TEGRA_HOST1X || COMPILE_TEST