mbox series

[GIT,PULL,FOR,v5.10,(v2)] mtk-vcodec: venc: support for MT8183

Message ID 22861790-3ae1-2009-a4db-c124067771b2@xs4all.nl (mailing list archive)
State New, archived
Headers show
Series [GIT,PULL,FOR,v5.10,(v2)] mtk-vcodec: venc: support for MT8183 | expand

Pull-request

git://linuxtv.org/hverkuil/media_tree.git tags/br-mt8183

Message

Hans Verkuil Aug. 29, 2020, 8:43 a.m. UTC
Note 1: the MTK_SCP config option causes COMPILE_TEST to fail, but a patch for that
is pending for the remoteproc tree: https://lkml.org/lkml/2020/8/21/489
I've verified that that patch fixes the COMPILE_TEST failure.

Note 2: the firmware is added to linux-firmware:
https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/commit/?h=master&id=3c213aa59661c4641f0c2166a315140ac0445230

Regards,

	Hans

Changes since v1: fixed merge conflicts with patch 1 (media: mtk-vcodec: abstract
firmware interface)

The following changes since commit a0009a133a2d4c3410682c87c2e2904a1e012f47:

  media: venus: Make debug infrastructure more flexible (2020-08-29 10:12:24 +0200)

are available in the Git repository at:

  git://linuxtv.org/hverkuil/media_tree.git tags/br-mt8183

for you to fetch changes up to e06368754756c4fedebb04c7561a1e359102e72e:

  media: mtk-vcodec: make IRQs disabled upon request (2020-08-29 10:39:34 +0200)

----------------------------------------------------------------
Tag branch

----------------------------------------------------------------
Alexandre Courbot (13):
      dt-bindings: media: mtk-vcodec: document SCP node
      media: mtk-vcodec: venc: handle firmware version field
      media: mtk-vcodec: venc: specify bitrate range per-chip
      media: mtk-vcodec: venc: specify supported formats per-chip
      dt-bindings: media: document mediatek,mt8183-vcodec-enc
      Revert "media: mtk-vcodec: Remove extra area allocation in an input buffer on encoding"
      media: mtk-vcodec: venc support MIN_OUTPUT_BUFFERS control
      media: mtk-vcodec: venc: set OUTPUT buffers field to V4L2_FIELD_NONE
      media: mtk-vcodec: venc: use platform data for ENUM_FRAMESIZES
      media: mtk-vcodec: venc: support ENUM_FRAMESIZES on OUTPUT formats
      media: mtk-vcodec: venc: set default time per frame
      media: mtk-vcodec: venc: fix invalid time per frame in S_PARM
      media: mtk-vcodec: make IRQs disabled upon request

Yunfei Dong (4):
      media: mtk-vcodec: abstract firmware interface
      media: mtk-vcodec: add SCP firmware ops
      media: mtk-vcodec: venc: support SCP firmware
      media: mtk-vcodec: add support for MT8183 encoder

 Documentation/devicetree/bindings/media/mediatek-vcodec.txt |   9 +-
 drivers/media/platform/Kconfig                              |   1 +
 drivers/media/platform/mtk-vcodec/Makefile                  |   6 +-
 drivers/media/platform/mtk-vcodec/mtk_vcodec_dec_drv.c      |  54 +++++------
 drivers/media/platform/mtk-vcodec/mtk_vcodec_dec_pm.c       |   1 -
 drivers/media/platform/mtk-vcodec/mtk_vcodec_drv.h          |  40 +++++++-
 drivers/media/platform/mtk-vcodec/mtk_vcodec_enc.c          | 211 +++++++++++++++++++---------------------
 drivers/media/platform/mtk-vcodec/mtk_vcodec_enc_drv.c      | 172 +++++++++++++++++++++++----------
 drivers/media/platform/mtk-vcodec/mtk_vcodec_enc_pm.c       |   2 -
 drivers/media/platform/mtk-vcodec/mtk_vcodec_fw.c           | 231 ++++++++++++++++++++++++++++++++++++++++++++
 drivers/media/platform/mtk-vcodec/mtk_vcodec_fw.h           |  38 ++++++++
 drivers/media/platform/mtk-vcodec/mtk_vcodec_util.c         |   1 -
 drivers/media/platform/mtk-vcodec/vdec/vdec_h264_if.c       |   1 -
 drivers/media/platform/mtk-vcodec/vdec/vdec_vp8_if.c        |   1 -
 drivers/media/platform/mtk-vcodec/vdec/vdec_vp9_if.c        |   1 -
 drivers/media/platform/mtk-vcodec/vdec_drv_base.h           |   2 -
 drivers/media/platform/mtk-vcodec/vdec_drv_if.c             |   1 -
 drivers/media/platform/mtk-vcodec/vdec_vpu_if.c             |  12 ++-
 drivers/media/platform/mtk-vcodec/vdec_vpu_if.h             |  11 ++-
 drivers/media/platform/mtk-vcodec/venc/venc_h264_if.c       |  68 ++++++++++---
 drivers/media/platform/mtk-vcodec/venc/venc_vp8_if.c        |  11 ++-
 drivers/media/platform/mtk-vcodec/venc_drv_if.c             |   1 -
 drivers/media/platform/mtk-vcodec/venc_drv_if.h             |  13 +++
 drivers/media/platform/mtk-vcodec/venc_ipi_msg.h            |  27 +++++-
 drivers/media/platform/mtk-vcodec/venc_vpu_if.c             | 141 ++++++++++++++++++++-------
 drivers/media/platform/mtk-vcodec/venc_vpu_if.h             |   8 +-
 26 files changed, 782 insertions(+), 282 deletions(-)
 create mode 100644 drivers/media/platform/mtk-vcodec/mtk_vcodec_fw.c
 create mode 100644 drivers/media/platform/mtk-vcodec/mtk_vcodec_fw.h

Comments

Jenkins Aug. 29, 2020, 9:16 a.m. UTC | #1
From: builder@linuxtv.org

Pull request: https://patchwork.linuxtv.org/project/linux-media/patch/22861790-3ae1-2009-a4db-c124067771b2@xs4all.nl/
Build log: https://builder.linuxtv.org/job/patchwork/66212/
Build time: 00:22:33
Link: https://lore.kernel.org/linux-media/22861790-3ae1-2009-a4db-c124067771b2@xs4all.nl

gpg: Signature made Sat 29 Aug 2020 08:41:16 AM UTC
gpg:                using RSA key AAA7FFBA4D2D77EF4CAEA1421326E0CD23ABDCE5
gpg: Good signature from "Hans Verkuil <hverkuil-cisco@xs4all.nl>" [unknown]
gpg:                 aka "Hans Verkuil <hverkuil@xs4all.nl>" [full]

Summary: 4 patches and/or PDF generation with issues, being 0 at build time

Error/warnings:

patches/0017-media-mtk-vcodec-make-IRQs-disabled-upon-request.patch:

	patches/0016-media-mtk-vcodec-venc-fix-invalid-time-per-frame-in-.patch:

	patches/0015-media-mtk-vcodec-venc-set-default-time-per-frame.patch:

	patches/0014-media-mtk-vcodec-venc-support-ENUM_FRAMESIZES-on-OUT.patch:

	patches/0013-media-mtk-vcodec-venc-use-platform-data-for-ENUM_FRA.patch:

	patches/0012-media-mtk-vcodec-venc-set-OUTPUT-buffers-field-to-V4.patch:

	patches/0011-media-mtk-vcodec-venc-support-MIN_OUTPUT_BUFFERS-con.patch:

	patches/0010-Revert-media-mtk-vcodec-Remove-extra-area-allocation.patch:

	patches/0009-media-mtk-vcodec-add-support-for-MT8183-encoder.patch:

	patches/0008-dt-bindings-media-document-mediatek-mt8183-vcodec-en.patch:

	patches/0007-media-mtk-vcodec-venc-specify-supported-formats-per-.patch:

	patches/0006-media-mtk-vcodec-venc-specify-bitrate-range-per-chip.patch:

	patches/0005-media-mtk-vcodec-venc-handle-firmware-version-field.patch:

	patches/0004-media-mtk-vcodec-venc-support-SCP-firmware.patch:

	patches/0003-media-mtk-vcodec-add-SCP-firmware-ops.patch:

	patches/0002-dt-bindings-media-mtk-vcodec-document-SCP-node.patch:

	
Error #256 when running cat patches/0001-media-mtk-vcodec-abstract-firmware-interface.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict:
$ cat patches/0001-media-mtk-vcodec-abstract-firmware-interface.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
-:371: WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?

Error #256 when running cat patches/0004-media-mtk-vcodec-venc-support-SCP-firmware.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict:
$ cat patches/0004-media-mtk-vcodec-venc-support-SCP-firmware.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
-:337: CHECK: Prefer kernel type 'u32' over 'uint32_t'
-:356: CHECK: Prefer kernel type 'u32' over 'uint32_t'
-:357: CHECK: Prefer kernel type 'u32' over 'uint32_t'

Error #256 when running cat patches/0005-media-mtk-vcodec-venc-handle-firmware-version-field.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict:
$ cat patches/0005-media-mtk-vcodec-venc-handle-firmware-version-field.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
-:85: CHECK: Prefer kernel type 'u32' over 'uint32_t'
Mauro Carvalho Chehab Aug. 30, 2020, 8:46 a.m. UTC | #2
Em Sat, 29 Aug 2020 10:43:12 +0200
Hans Verkuil <hverkuil@xs4all.nl> escreveu:

> Note 1: the MTK_SCP config option causes COMPILE_TEST to fail, but a patch for that
> is pending for the remoteproc tree: https://lkml.org/lkml/2020/8/21/489
> I've verified that that patch fixes the COMPILE_TEST failure.

Breaking COMPILE_TEST is a very bad idea, as it means that the robots
will stop reporting issues on this driver, including our own Jenkins
instance. 

We need a solution for it, like:

1. postponing the changes that caused it to break to be added only
  after the merge window;
2. ask an ack from remoteproc maintainer for him to send his ack
  and having the patch applied via our tree;
3. cherry-pick the fixup patch, applying it before the patch which
  broke the build;
4. pull from a permanent branch from the tree where the fixup patch
  were merged; 

Looking at lore:
	https://lore.kernel.org/linux-remoteproc/20200821115832.2893484-1-acourbot@chromium.org/

I can't see any reply to this patch. Was it already merged there?
I guess not:
	https://git.kernel.org/pub/scm/linux/kernel/git/andersson/remoteproc.git/log/?h=for-next

I'm not a big fan of (4), as, if something bad happens during the
merge window with the tree containing the fixup patch, we may have 
some bad time merging media upstream, specially if such tree would
contain something that. So, if we would use alternative (4), I'll
likely place all changes for mtk driver on a topic branch, to be
merged upstream only after the pull request with the fixup
patches got merged.

Thanks,
Mauro
Jenkins Aug. 30, 2020, 12:14 p.m. UTC | #3
From: builder@linuxtv.org

Pull request: https://patchwork.linuxtv.org/project/linux-media/patch/22861790-3ae1-2009-a4db-c124067771b2@xs4all.nl/
Build log: https://builder.linuxtv.org/job/patchwork/66223/
Build time: 03:221:09
Link: https://lore.kernel.org/linux-media/22861790-3ae1-2009-a4db-c124067771b2@xs4all.nl

gpg: Signature made Sat 29 Aug 2020 08:41:16 AM UTC
gpg:                using RSA key AAA7FFBA4D2D77EF4CAEA1421326E0CD23ABDCE5
gpg: Good signature from "Hans Verkuil <hverkuil-cisco@xs4all.nl>" [unknown]
gpg:                 aka "Hans Verkuil <hverkuil@xs4all.nl>" [full]

Summary: got 17/17 patches with issues, being 15 at build time and one fatal error when buinding PDF document

Error/warnings:

patches/0001-media-mtk-vcodec-abstract-firmware-interface.patch:

   checkpatch.pl:
	$ cat patches/0001-media-mtk-vcodec-abstract-firmware-interface.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:371: WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?

patches/0003-media-mtk-vcodec-add-SCP-firmware-ops.patch:

    allyesconfig: error:
	scripts/kconfig/conf  --allyesconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [y]:
	  - VIDEO_MEDIATEK_VCODEC [=y] && MEDIA_SUPPORT [=y] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=y] && VIDEO_V4L2 [=y] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

    allmodconfig: error:
	scripts/kconfig/conf  --allmodconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [m]:
	  - VIDEO_MEDIATEK_VCODEC [=m] && MEDIA_SUPPORT [=m] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=m] && VIDEO_V4L2 [=m] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

patches/0004-media-mtk-vcodec-venc-support-SCP-firmware.patch:

    allyesconfig: error:
	scripts/kconfig/conf  --allyesconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [y]:
	  - VIDEO_MEDIATEK_VCODEC [=y] && MEDIA_SUPPORT [=y] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=y] && VIDEO_V4L2 [=y] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

    allmodconfig: error:
	scripts/kconfig/conf  --allmodconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [m]:
	  - VIDEO_MEDIATEK_VCODEC [=m] && MEDIA_SUPPORT [=m] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=m] && VIDEO_V4L2 [=m] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

   checkpatch.pl:
	$ cat patches/0004-media-mtk-vcodec-venc-support-SCP-firmware.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:337: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:356: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:357: CHECK: Prefer kernel type 'u32' over 'uint32_t'

patches/0005-media-mtk-vcodec-venc-handle-firmware-version-field.patch:

    allyesconfig: error:
	scripts/kconfig/conf  --allyesconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [y]:
	  - VIDEO_MEDIATEK_VCODEC [=y] && MEDIA_SUPPORT [=y] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=y] && VIDEO_V4L2 [=y] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

    allmodconfig: error:
	scripts/kconfig/conf  --allmodconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [m]:
	  - VIDEO_MEDIATEK_VCODEC [=m] && MEDIA_SUPPORT [=m] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=m] && VIDEO_V4L2 [=m] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

   checkpatch.pl:
	$ cat patches/0005-media-mtk-vcodec-venc-handle-firmware-version-field.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:85: CHECK: Prefer kernel type 'u32' over 'uint32_t'

patches/0006-media-mtk-vcodec-venc-specify-bitrate-range-per-chip.patch:

    allyesconfig: error:
	scripts/kconfig/conf  --allyesconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [y]:
	  - VIDEO_MEDIATEK_VCODEC [=y] && MEDIA_SUPPORT [=y] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=y] && VIDEO_V4L2 [=y] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

    allmodconfig: error:
	scripts/kconfig/conf  --allmodconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [m]:
	  - VIDEO_MEDIATEK_VCODEC [=m] && MEDIA_SUPPORT [=m] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=m] && VIDEO_V4L2 [=m] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

patches/0007-media-mtk-vcodec-venc-specify-supported-formats-per-.patch:

    allyesconfig: error:
	scripts/kconfig/conf  --allyesconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [y]:
	  - VIDEO_MEDIATEK_VCODEC [=y] && MEDIA_SUPPORT [=y] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=y] && VIDEO_V4L2 [=y] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

    allmodconfig: error:
	scripts/kconfig/conf  --allmodconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [m]:
	  - VIDEO_MEDIATEK_VCODEC [=m] && MEDIA_SUPPORT [=m] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=m] && VIDEO_V4L2 [=m] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

patches/0008-dt-bindings-media-document-mediatek-mt8183-vcodec-en.patch:

    allyesconfig: error:
	scripts/kconfig/conf  --allyesconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [y]:
	  - VIDEO_MEDIATEK_VCODEC [=y] && MEDIA_SUPPORT [=y] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=y] && VIDEO_V4L2 [=y] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

    allmodconfig: error:
	scripts/kconfig/conf  --allmodconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [m]:
	  - VIDEO_MEDIATEK_VCODEC [=m] && MEDIA_SUPPORT [=m] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=m] && VIDEO_V4L2 [=m] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

patches/0009-media-mtk-vcodec-add-support-for-MT8183-encoder.patch:

    allyesconfig: error:
	scripts/kconfig/conf  --allyesconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [y]:
	  - VIDEO_MEDIATEK_VCODEC [=y] && MEDIA_SUPPORT [=y] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=y] && VIDEO_V4L2 [=y] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

    allmodconfig: error:
	scripts/kconfig/conf  --allmodconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [m]:
	  - VIDEO_MEDIATEK_VCODEC [=m] && MEDIA_SUPPORT [=m] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=m] && VIDEO_V4L2 [=m] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

patches/0010-Revert-media-mtk-vcodec-Remove-extra-area-allocation.patch:

    allyesconfig: error:
	scripts/kconfig/conf  --allyesconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [y]:
	  - VIDEO_MEDIATEK_VCODEC [=y] && MEDIA_SUPPORT [=y] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=y] && VIDEO_V4L2 [=y] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

    allmodconfig: error:
	scripts/kconfig/conf  --allmodconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [m]:
	  - VIDEO_MEDIATEK_VCODEC [=m] && MEDIA_SUPPORT [=m] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=m] && VIDEO_V4L2 [=m] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

patches/0011-media-mtk-vcodec-venc-support-MIN_OUTPUT_BUFFERS-con.patch:

    allyesconfig: error:
	scripts/kconfig/conf  --allyesconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [y]:
	  - VIDEO_MEDIATEK_VCODEC [=y] && MEDIA_SUPPORT [=y] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=y] && VIDEO_V4L2 [=y] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

    allmodconfig: error:
	scripts/kconfig/conf  --allmodconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [m]:
	  - VIDEO_MEDIATEK_VCODEC [=m] && MEDIA_SUPPORT [=m] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=m] && VIDEO_V4L2 [=m] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

patches/0012-media-mtk-vcodec-venc-set-OUTPUT-buffers-field-to-V4.patch:

    allyesconfig: error:
	scripts/kconfig/conf  --allyesconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [y]:
	  - VIDEO_MEDIATEK_VCODEC [=y] && MEDIA_SUPPORT [=y] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=y] && VIDEO_V4L2 [=y] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

    allmodconfig: error:
	scripts/kconfig/conf  --allmodconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [m]:
	  - VIDEO_MEDIATEK_VCODEC [=m] && MEDIA_SUPPORT [=m] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=m] && VIDEO_V4L2 [=m] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

patches/0013-media-mtk-vcodec-venc-use-platform-data-for-ENUM_FRA.patch:

    allyesconfig: error:
	scripts/kconfig/conf  --allyesconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [y]:
	  - VIDEO_MEDIATEK_VCODEC [=y] && MEDIA_SUPPORT [=y] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=y] && VIDEO_V4L2 [=y] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

    allmodconfig: error:
	scripts/kconfig/conf  --allmodconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [m]:
	  - VIDEO_MEDIATEK_VCODEC [=m] && MEDIA_SUPPORT [=m] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=m] && VIDEO_V4L2 [=m] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

patches/0014-media-mtk-vcodec-venc-support-ENUM_FRAMESIZES-on-OUT.patch:

    allyesconfig: error:
	scripts/kconfig/conf  --allyesconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [y]:
	  - VIDEO_MEDIATEK_VCODEC [=y] && MEDIA_SUPPORT [=y] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=y] && VIDEO_V4L2 [=y] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

    allmodconfig: error:
	scripts/kconfig/conf  --allmodconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [m]:
	  - VIDEO_MEDIATEK_VCODEC [=m] && MEDIA_SUPPORT [=m] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=m] && VIDEO_V4L2 [=m] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

patches/0015-media-mtk-vcodec-venc-set-default-time-per-frame.patch:

    allyesconfig: error:
	scripts/kconfig/conf  --allyesconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [y]:
	  - VIDEO_MEDIATEK_VCODEC [=y] && MEDIA_SUPPORT [=y] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=y] && VIDEO_V4L2 [=y] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

    allmodconfig: error:
	scripts/kconfig/conf  --allmodconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [m]:
	  - VIDEO_MEDIATEK_VCODEC [=m] && MEDIA_SUPPORT [=m] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=m] && VIDEO_V4L2 [=m] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

patches/0016-media-mtk-vcodec-venc-fix-invalid-time-per-frame-in-.patch:

    allyesconfig: error:
	scripts/kconfig/conf  --allyesconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [y]:
	  - VIDEO_MEDIATEK_VCODEC [=y] && MEDIA_SUPPORT [=y] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=y] && VIDEO_V4L2 [=y] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

    allmodconfig: error:
	scripts/kconfig/conf  --allmodconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [m]:
	  - VIDEO_MEDIATEK_VCODEC [=m] && MEDIA_SUPPORT [=m] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=m] && VIDEO_V4L2 [=m] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

patches/0017-media-mtk-vcodec-make-IRQs-disabled-upon-request.patch:

    allyesconfig: error:
	scripts/kconfig/conf  --allyesconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [y]:
	  - VIDEO_MEDIATEK_VCODEC [=y] && MEDIA_SUPPORT [=y] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=y] && VIDEO_V4L2 [=y] && (ARCH_MEDIATEK || COMPILE_TEST [=y])

    allmodconfig: error:
	scripts/kconfig/conf  --allmodconfig Kconfig
	#
	# configuration written to .config
	#

	WARNING: unmet direct dependencies detected for MTK_SCP
	  Depends on [n]: REMOTEPROC [=y] && ARCH_MEDIATEK
	  Selected by [m]:
	  - VIDEO_MEDIATEK_VCODEC [=m] && MEDIA_SUPPORT [=m] && MEDIA_PLATFORM_SUPPORT [=y] && V4L_MEM2MEM_DRIVERS [=y] && (MTK_IOMMU [=y] || COMPILE_TEST [=y]) && VIDEO_DEV [=m] && VIDEO_V4L2 [=m] && (ARCH_MEDIATEK || COMPILE_TEST [=y])


Error #512 when building PDF docs
Alexandre Courbot Aug. 31, 2020, 1:33 a.m. UTC | #4
Hi Mauro,

On Sun, Aug 30, 2020 at 5:46 PM Mauro Carvalho Chehab
<mchehab+huawei@kernel.org> wrote:
>
> Em Sat, 29 Aug 2020 10:43:12 +0200
> Hans Verkuil <hverkuil@xs4all.nl> escreveu:
>
> > Note 1: the MTK_SCP config option causes COMPILE_TEST to fail, but a patch for that
> > is pending for the remoteproc tree: https://lkml.org/lkml/2020/8/21/489
> > I've verified that that patch fixes the COMPILE_TEST failure.
>
> Breaking COMPILE_TEST is a very bad idea, as it means that the robots
> will stop reporting issues on this driver, including our own Jenkins
> instance.
>
> We need a solution for it, like:
>
> 1. postponing the changes that caused it to break to be added only
>   after the merge window;
> 2. ask an ack from remoteproc maintainer for him to send his ack
>   and having the patch applied via our tree;
> 3. cherry-pick the fixup patch, applying it before the patch which
>   broke the build;
> 4. pull from a permanent branch from the tree where the fixup patch
>   were merged;
>
> Looking at lore:
>         https://lore.kernel.org/linux-remoteproc/20200821115832.2893484-1-acourbot@chromium.org/
>
> I can't see any reply to this patch. Was it already merged there?
> I guess not:
>         https://git.kernel.org/pub/scm/linux/kernel/git/andersson/remoteproc.git/log/?h=for-next
>
> I'm not a big fan of (4), as, if something bad happens during the
> merge window with the tree containing the fixup patch, we may have
> some bad time merging media upstream, specially if such tree would
> contain something that. So, if we would use alternative (4), I'll
> likely place all changes for mtk driver on a topic branch, to be
> merged upstream only after the pull request with the fixup
> patches got merged.

It also seems that the series with other mtk-vcodec changes being
merged in between, the series does not apply as-is to the media tree.
The conflict is trivial to resolve, but please let me know if you
would like me to rebase and resend along with the SCP patch once the
remoteproc maintainer acks it.

>
> Thanks,
> Mauro
Mauro Carvalho Chehab Aug. 31, 2020, 6:10 a.m. UTC | #5
Em Mon, 31 Aug 2020 10:33:44 +0900
Alexandre Courbot <acourbot@chromium.org> escreveu:

> Hi Mauro,
> 
> On Sun, Aug 30, 2020 at 5:46 PM Mauro Carvalho Chehab
> <mchehab+huawei@kernel.org> wrote:
> >
> > Em Sat, 29 Aug 2020 10:43:12 +0200
> > Hans Verkuil <hverkuil@xs4all.nl> escreveu:
> >  
> > > Note 1: the MTK_SCP config option causes COMPILE_TEST to fail, but a patch for that
> > > is pending for the remoteproc tree: https://lkml.org/lkml/2020/8/21/489
> > > I've verified that that patch fixes the COMPILE_TEST failure.  
> >
> > Breaking COMPILE_TEST is a very bad idea, as it means that the robots
> > will stop reporting issues on this driver, including our own Jenkins
> > instance.
> >
> > We need a solution for it, like:
> >
> > 1. postponing the changes that caused it to break to be added only
> >   after the merge window;
> > 2. ask an ack from remoteproc maintainer for him to send his ack
> >   and having the patch applied via our tree;
> > 3. cherry-pick the fixup patch, applying it before the patch which
> >   broke the build;
> > 4. pull from a permanent branch from the tree where the fixup patch
> >   were merged;
> >
> > Looking at lore:
> >         https://lore.kernel.org/linux-remoteproc/20200821115832.2893484-1-acourbot@chromium.org/
> >
> > I can't see any reply to this patch. Was it already merged there?
> > I guess not:
> >         https://git.kernel.org/pub/scm/linux/kernel/git/andersson/remoteproc.git/log/?h=for-next
> >
> > I'm not a big fan of (4), as, if something bad happens during the
> > merge window with the tree containing the fixup patch, we may have
> > some bad time merging media upstream, specially if such tree would
> > contain something that. So, if we would use alternative (4), I'll
> > likely place all changes for mtk driver on a topic branch, to be
> > merged upstream only after the pull request with the fixup
> > patches got merged.  
> 
> It also seems that the series with other mtk-vcodec changes being
> merged in between, the series does not apply as-is to the media tree.
> The conflict is trivial to resolve, but please let me know if you
> would like me to rebase and resend along with the SCP patch once the
> remoteproc maintainer acks it.

Hans did a rebase on this version 2 and all patches apply OK.
I guess he also did build test with the remoteproc patch applied, 
and build fine. Yet, Jenkins were unable to check the build patch
per patch, due to the Kconfig issue.

Once the Kconfig issue has sorted out, feel free to send an updated
version, if something else is needed. On such case, please preserve
Hans SoB for the patches that won't require non-context changes.

Thanks,
Mauro
Alexandre Courbot Sept. 9, 2020, 3:29 a.m. UTC | #6
Hi Mauro,

On Mon, Aug 31, 2020 at 3:10 PM Mauro Carvalho Chehab
<mchehab+huawei@kernel.org> wrote:
>
> Em Mon, 31 Aug 2020 10:33:44 +0900
> Alexandre Courbot <acourbot@chromium.org> escreveu:
>
> > Hi Mauro,
> >
> > On Sun, Aug 30, 2020 at 5:46 PM Mauro Carvalho Chehab
> > <mchehab+huawei@kernel.org> wrote:
> > >
> > > Em Sat, 29 Aug 2020 10:43:12 +0200
> > > Hans Verkuil <hverkuil@xs4all.nl> escreveu:
> > >
> > > > Note 1: the MTK_SCP config option causes COMPILE_TEST to fail, but a patch for that
> > > > is pending for the remoteproc tree: https://lkml.org/lkml/2020/8/21/489
> > > > I've verified that that patch fixes the COMPILE_TEST failure.
> > >
> > > Breaking COMPILE_TEST is a very bad idea, as it means that the robots
> > > will stop reporting issues on this driver, including our own Jenkins
> > > instance.
> > >
> > > We need a solution for it, like:
> > >
> > > 1. postponing the changes that caused it to break to be added only
> > >   after the merge window;
> > > 2. ask an ack from remoteproc maintainer for him to send his ack
> > >   and having the patch applied via our tree;
> > > 3. cherry-pick the fixup patch, applying it before the patch which
> > >   broke the build;
> > > 4. pull from a permanent branch from the tree where the fixup patch
> > >   were merged;
> > >
> > > Looking at lore:
> > >         https://lore.kernel.org/linux-remoteproc/20200821115832.2893484-1-acourbot@chromium.org/
> > >
> > > I can't see any reply to this patch. Was it already merged there?
> > > I guess not:
> > >         https://git.kernel.org/pub/scm/linux/kernel/git/andersson/remoteproc.git/log/?h=for-next
> > >
> > > I'm not a big fan of (4), as, if something bad happens during the
> > > merge window with the tree containing the fixup patch, we may have
> > > some bad time merging media upstream, specially if such tree would
> > > contain something that. So, if we would use alternative (4), I'll
> > > likely place all changes for mtk driver on a topic branch, to be
> > > merged upstream only after the pull request with the fixup
> > > patches got merged.
> >
> > It also seems that the series with other mtk-vcodec changes being
> > merged in between, the series does not apply as-is to the media tree.
> > The conflict is trivial to resolve, but please let me know if you
> > would like me to rebase and resend along with the SCP patch once the
> > remoteproc maintainer acks it.
>
> Hans did a rebase on this version 2 and all patches apply OK.
> I guess he also did build test with the remoteproc patch applied,
> and build fine. Yet, Jenkins were unable to check the build patch
> per patch, due to the Kconfig issue.
>
> Once the Kconfig issue has sorted out, feel free to send an updated
> version, if something else is needed. On such case, please preserve
> Hans SoB for the patches that won't require non-context changes.

I tried doing a resend of the patch enabling COMPILE_TEST for the SCP
one week ago (https://lkml.org/lkml/2020/9/2/211, sent to both
maintainers of remoteproc and their list), but unfortunately still no
reaction from them.

Would it be acceptable to you if I temporarily disabled COMPILE_TEST
for mtk-vcodec as a workaround so we can at least merge this series?
Once the remoteproc patch lands, we can then reenable it.