All of lore.kernel.org
 help / color / mirror / Atom feed
* [GIT PULL FOR v4.13] Add qcom venus driver
@ 2017-06-16  8:19 Hans Verkuil
  2017-06-20 11:59 ` Mauro Carvalho Chehab
  0 siblings, 1 reply; 3+ messages in thread
From: Hans Verkuil @ 2017-06-16  8:19 UTC (permalink / raw)
  To: Linux Media Mailing List; +Cc: Stanimir Varbanov

Hi Mauro,

Second attempt to add the venus driver.

Regards,

	Hans

The following changes since commit acec3630155763c170c7ae6508cf973355464508:

   [media] s3c-camif: fix arguments position in a function call (2017-06-13 14:21:24 -0300)

are available in the git repository at:

   git://linuxtv.org/hverkuil/media_tree.git venus

for you to fetch changes up to 3bf1c3aacb172db8fcbd25c62b042fc265c5a494:

   media: venus: enable building with COMPILE_TEST (2017-06-16 09:59:36 +0200)

----------------------------------------------------------------
Stanimir Varbanov (19):
       media: v4l2-mem2mem: extend m2m APIs for more accurate buffer management
       doc: DT: venus: binding document for Qualcomm video driver
       MAINTAINERS: Add Qualcomm Venus video accelerator driver
       media: venus: adding core part and helper functions
       media: venus: vdec: add video decoder files
       media: venus: venc: add video encoder files
       media: venus: hfi: add Host Firmware Interface (HFI)
       media: venus: hfi: add Venus HFI files
       media: venus: enable building of Venus video driver
       media: venus: hfi: fix mutex unlock
       media: venus: hfi_cmds: fix variable dereferenced before check
       media: venus: helpers: fix variable dereferenced before check
       media: venus: hfi_venus: fix variable dereferenced before check
       media: venus: hfi_msgs: fix set but not used variables
       media: venus: vdec: fix compile error in vdec_close
       media: venus: venc: fix compile error in venc_close
       media: venus: vdec: add support for min buffers for capture
       media: venus: update firmware path with linux-firmware place
       media: venus: enable building with COMPILE_TEST

  Documentation/devicetree/bindings/media/qcom,venus.txt |  107 +++
  MAINTAINERS                                            |    8 +
  drivers/media/platform/Kconfig                         |   13 +
  drivers/media/platform/Makefile                        |    2 +
  drivers/media/platform/qcom/venus/Makefile             |   11 +
  drivers/media/platform/qcom/venus/core.c               |  390 +++++++++++
  drivers/media/platform/qcom/venus/core.h               |  324 +++++++++
  drivers/media/platform/qcom/venus/firmware.c           |  108 +++
  drivers/media/platform/qcom/venus/firmware.h           |   23 +
  drivers/media/platform/qcom/venus/helpers.c            |  725 ++++++++++++++++++++
  drivers/media/platform/qcom/venus/helpers.h            |   45 ++
  drivers/media/platform/qcom/venus/hfi.c                |  522 +++++++++++++++
  drivers/media/platform/qcom/venus/hfi.h                |  175 +++++
  drivers/media/platform/qcom/venus/hfi_cmds.c           | 1259 +++++++++++++++++++++++++++++++++++
  drivers/media/platform/qcom/venus/hfi_cmds.h           |  304 +++++++++
  drivers/media/platform/qcom/venus/hfi_helper.h         | 1050 +++++++++++++++++++++++++++++
  drivers/media/platform/qcom/venus/hfi_msgs.c           | 1052 +++++++++++++++++++++++++++++
  drivers/media/platform/qcom/venus/hfi_msgs.h           |  283 ++++++++
  drivers/media/platform/qcom/venus/hfi_venus.c          | 1572 ++++++++++++++++++++++++++++++++++++++++++++
  drivers/media/platform/qcom/venus/hfi_venus.h          |   23 +
  drivers/media/platform/qcom/venus/hfi_venus_io.h       |  113 ++++
  drivers/media/platform/qcom/venus/vdec.c               | 1162 ++++++++++++++++++++++++++++++++
  drivers/media/platform/qcom/venus/vdec.h               |   23 +
  drivers/media/platform/qcom/venus/vdec_ctrls.c         |  158 +++++
  drivers/media/platform/qcom/venus/venc.c               | 1283 ++++++++++++++++++++++++++++++++++++
  drivers/media/platform/qcom/venus/venc.h               |   23 +
  drivers/media/platform/qcom/venus/venc_ctrls.c         |  270 ++++++++
  drivers/media/v4l2-core/v4l2-mem2mem.c                 |   37 ++
  include/media/v4l2-mem2mem.h                           |   92 +++
  29 files changed, 11157 insertions(+)
  create mode 100644 Documentation/devicetree/bindings/media/qcom,venus.txt
  create mode 100644 drivers/media/platform/qcom/venus/Makefile
  create mode 100644 drivers/media/platform/qcom/venus/core.c
  create mode 100644 drivers/media/platform/qcom/venus/core.h
  create mode 100644 drivers/media/platform/qcom/venus/firmware.c
  create mode 100644 drivers/media/platform/qcom/venus/firmware.h
  create mode 100644 drivers/media/platform/qcom/venus/helpers.c
  create mode 100644 drivers/media/platform/qcom/venus/helpers.h
  create mode 100644 drivers/media/platform/qcom/venus/hfi.c
  create mode 100644 drivers/media/platform/qcom/venus/hfi.h
  create mode 100644 drivers/media/platform/qcom/venus/hfi_cmds.c
  create mode 100644 drivers/media/platform/qcom/venus/hfi_cmds.h
  create mode 100644 drivers/media/platform/qcom/venus/hfi_helper.h
  create mode 100644 drivers/media/platform/qcom/venus/hfi_msgs.c
  create mode 100644 drivers/media/platform/qcom/venus/hfi_msgs.h
  create mode 100644 drivers/media/platform/qcom/venus/hfi_venus.c
  create mode 100644 drivers/media/platform/qcom/venus/hfi_venus.h
  create mode 100644 drivers/media/platform/qcom/venus/hfi_venus_io.h
  create mode 100644 drivers/media/platform/qcom/venus/vdec.c
  create mode 100644 drivers/media/platform/qcom/venus/vdec.h
  create mode 100644 drivers/media/platform/qcom/venus/vdec_ctrls.c
  create mode 100644 drivers/media/platform/qcom/venus/venc.c
  create mode 100644 drivers/media/platform/qcom/venus/venc.h
  create mode 100644 drivers/media/platform/qcom/venus/venc_ctrls.c

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [GIT PULL FOR v4.13] Add qcom venus driver
  2017-06-16  8:19 [GIT PULL FOR v4.13] Add qcom venus driver Hans Verkuil
@ 2017-06-20 11:59 ` Mauro Carvalho Chehab
  2017-06-20 12:42   ` Stanimir Varbanov
  0 siblings, 1 reply; 3+ messages in thread
From: Mauro Carvalho Chehab @ 2017-06-20 11:59 UTC (permalink / raw)
  To: Hans Verkuil; +Cc: Linux Media Mailing List, Stanimir Varbanov

Em Fri, 16 Jun 2017 10:19:46 +0200
Hans Verkuil <hverkuil@xs4all.nl> escreveu:

> Hi Mauro,
> 
> Second attempt to add the venus driver.
> 
> Regards,
> 
> 	Hans
> 
> The following changes since commit acec3630155763c170c7ae6508cf973355464508:
> 
>    [media] s3c-camif: fix arguments position in a function call (2017-06-13 14:21:24 -0300)
> 
> are available in the git repository at:
> 
>    git://linuxtv.org/hverkuil/media_tree.git venus
> 
> for you to fetch changes up to 3bf1c3aacb172db8fcbd25c62b042fc265c5a494:
> 
>    media: venus: enable building with COMPILE_TEST (2017-06-16 09:59:36 +0200)
> 
> ----------------------------------------------------------------
> Stanimir Varbanov (19):
>        media: v4l2-mem2mem: extend m2m APIs for more accurate buffer management
>        doc: DT: venus: binding document for Qualcomm video driver
>        MAINTAINERS: Add Qualcomm Venus video accelerator driver
>        media: venus: adding core part and helper functions
>        media: venus: vdec: add video decoder files
>        media: venus: venc: add video encoder files
>        media: venus: hfi: add Host Firmware Interface (HFI)
>        media: venus: hfi: add Venus HFI files
>        media: venus: enable building of Venus video driver
>        media: venus: hfi: fix mutex unlock
>        media: venus: hfi_cmds: fix variable dereferenced before check
>        media: venus: helpers: fix variable dereferenced before check
>        media: venus: hfi_venus: fix variable dereferenced before check
>        media: venus: hfi_msgs: fix set but not used variables
>        media: venus: vdec: fix compile error in vdec_close
>        media: venus: venc: fix compile error in venc_close
>        media: venus: vdec: add support for min buffers for capture
>        media: venus: update firmware path with linux-firmware place


>        media: venus: enable building with COMPILE_TEST

It is too early for this patch. I merged from 4.12-rc6, and it
still complains about those missing symbols:

WARNING: "qcom_scm_is_available" [drivers/media/platform/qcom/venus/venus-core.ko] undefined!
WARNING: "qcom_scm_pas_shutdown" [drivers/media/platform/qcom/venus/venus-core.ko] undefined!
WARNING: "qcom_scm_set_remote_state" [drivers/media/platform/qcom/venus/venus-core.ko] undefined!

Probably, some patch is needed somewhere to replace those functions
by stubs if not the right arch, in order to make it build with
COMPILE_TEST.

For now, I'm excluding this patch on today's pull.


Thanks,
Mauro

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [GIT PULL FOR v4.13] Add qcom venus driver
  2017-06-20 11:59 ` Mauro Carvalho Chehab
@ 2017-06-20 12:42   ` Stanimir Varbanov
  0 siblings, 0 replies; 3+ messages in thread
From: Stanimir Varbanov @ 2017-06-20 12:42 UTC (permalink / raw)
  To: Mauro Carvalho Chehab, Hans Verkuil
  Cc: Linux Media Mailing List, Stanimir Varbanov

Hi Mauro,

On 06/20/2017 02:59 PM, Mauro Carvalho Chehab wrote:
> Em Fri, 16 Jun 2017 10:19:46 +0200
> Hans Verkuil <hverkuil@xs4all.nl> escreveu:
> 
>> Hi Mauro,
>>
>> Second attempt to add the venus driver.
>>
>> Regards,
>>
>> 	Hans
>>
>> The following changes since commit acec3630155763c170c7ae6508cf973355464508:
>>
>>    [media] s3c-camif: fix arguments position in a function call (2017-06-13 14:21:24 -0300)
>>
>> are available in the git repository at:
>>
>>    git://linuxtv.org/hverkuil/media_tree.git venus
>>
>> for you to fetch changes up to 3bf1c3aacb172db8fcbd25c62b042fc265c5a494:
>>
>>    media: venus: enable building with COMPILE_TEST (2017-06-16 09:59:36 +0200)
>>
>> ----------------------------------------------------------------
>> Stanimir Varbanov (19):
>>        media: v4l2-mem2mem: extend m2m APIs for more accurate buffer management
>>        doc: DT: venus: binding document for Qualcomm video driver
>>        MAINTAINERS: Add Qualcomm Venus video accelerator driver
>>        media: venus: adding core part and helper functions
>>        media: venus: vdec: add video decoder files
>>        media: venus: venc: add video encoder files
>>        media: venus: hfi: add Host Firmware Interface (HFI)
>>        media: venus: hfi: add Venus HFI files
>>        media: venus: enable building of Venus video driver
>>        media: venus: hfi: fix mutex unlock
>>        media: venus: hfi_cmds: fix variable dereferenced before check
>>        media: venus: helpers: fix variable dereferenced before check
>>        media: venus: hfi_venus: fix variable dereferenced before check
>>        media: venus: hfi_msgs: fix set but not used variables
>>        media: venus: vdec: fix compile error in vdec_close
>>        media: venus: venc: fix compile error in venc_close
>>        media: venus: vdec: add support for min buffers for capture
>>        media: venus: update firmware path with linux-firmware place
> 
> 
>>        media: venus: enable building with COMPILE_TEST
> 
> It is too early for this patch. I merged from 4.12-rc6, and it
> still complains about those missing symbols:
> 
> WARNING: "qcom_scm_is_available" [drivers/media/platform/qcom/venus/venus-core.ko] undefined!
> WARNING: "qcom_scm_pas_shutdown" [drivers/media/platform/qcom/venus/venus-core.ko] undefined!
> WARNING: "qcom_scm_set_remote_state" [drivers/media/platform/qcom/venus/venus-core.ko] undefined!
> 
> Probably, some patch is needed somewhere to replace those functions
> by stubs if not the right arch, in order to make it build with
> COMPILE_TEST.
> 
> For now, I'm excluding this patch on today's pull.

It seems that the patch for the qcom_scm will be delayed, so I have to
fix this in the Venus Kconfig, which doesn't seem too bad because we
want to allow compile test for the venus driver itself not for its
dependencies.

diff --git a/drivers/media/platform/Kconfig b/drivers/media/platform/Kconfig
index f9bbba5c5dd6..b7381a4722e2 100644
--- a/drivers/media/platform/Kconfig
+++ b/drivers/media/platform/Kconfig
@@ -468,7 +468,8 @@ config VIDEO_QCOM_VENUS
        tristate "Qualcomm Venus V4L2 encoder/decoder driver"
        depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
        depends on (ARCH_QCOM && IOMMU_DMA) || COMPILE_TEST
-       select QCOM_MDT_LOADER
+       select QCOM_MDT_LOADER if (ARM || ARM64)
+       select QCOM_SCM if (ARM || ARM64)
        select VIDEOBUF2_DMA_SG
        select V4L2_MEM2MEM_DEV
        ---help---

So if you are fine with the above change I can cook a patch?

-- 
regards,
Stan

^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2017-06-20 12:42 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-06-16  8:19 [GIT PULL FOR v4.13] Add qcom venus driver Hans Verkuil
2017-06-20 11:59 ` Mauro Carvalho Chehab
2017-06-20 12:42   ` Stanimir Varbanov

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.