lkml.org 
[lkml]   [2022]   [Sep]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRE: [Patch v2 00/15] Add MFC v12 support.
    Date
    Hi All,

    I have attached the v4l2-complaince complete log (mfc encoder and decoder) along with this mail for reference.

    Regards,
    Smitha

    > -----Original Message-----
    > From: Smitha T Murthy [mailto:smitha.t@samsung.com]
    > Sent: Wednesday, September 7, 2022 12:17 PM
    > To: linux-arm-kernel@lists.infradead.org; linux-media@vger.kernel.org;
    > linux-kernel@vger.kernel.org; devicetree@vger.kernel.org
    > Cc: m.szyprowski@samsung.com; andrzej.hajda@intel.com;
    > mchehab@kernel.org; hverkuil-cisco@xs4all.nl;
    > ezequiel@vanguardiasur.com.ar; jernej.skrabec@gmail.com;
    > benjamin.gaignard@collabora.com; stanimir.varbanov@linaro.org;
    > dillon.minfei@gmail.com; david.plowman@raspberrypi.com;
    > mark.rutland@arm.com; robh+dt@kernel.org; krzk+dt@kernel.org;
    > andi@etezian.org; alim.akhtar@samsung.com; aswani.reddy@samsung.com;
    > pankaj.dubey@samsung.com; linux-fsd@tesla.com;
    > smitha.t@samsung.com; aakarsh.jain@samsung.com
    > Subject: [Patch v2 00/15] Add MFC v12 support.
    >
    > From: aakarsh jain <aakarsh.jain@samsung.com>
    >
    > This patch series adds MFC v12 support. MFC v12 is used in Tesla FSD SoC.
    >
    > This adds support for following:
    >
    > * Add support for VP9 encoder
    > * Add support for YV12 and I420 format (3-plane)
    > * Add support for Rate Control, UHD and DMABUF for encoder
    > * Add support for DPB buffers allocation based on MFC requirement
    > * Update documentation for control id definitions
    >
    > Changes since v1:
    > - Addressed review comments by Andrzej Hajda.
    > - Addressed review comments by Rob Herring.
    > - Addressed review comments by Krzysztof Kozlowski.
    > - Addressed review comments by Hans Verkuil.
    > - Addressed review comments by Nicolas Dufresne.
    > - Rebased on latest krzk/for-next tree.
    >
    > v4l2-complaince:
    > Total for s5p-mfc device /dev/video0: 45, Succeeded: 39, Failed: 6, Warnings:
    > 0 Total for s5p-mfc device /dev/video1: 45, Succeeded: 34, Failed: 11,
    > Warnings: 3
    >
    > Smitha T Murthy (15):
    > dt-bindings: media: s5p-mfc: Add new DT schema for MFC
    > dt-bindings: media: s5p-mfc: Add mfcv12 variant
    > media: s5p-mfc: Rename IS_MFCV10 macro
    > media: s5p-mfc: Add initial support for MFCv12
    > Documention: v4l: Documentation for VP9 CIDs.
    > media: v4l2: Add v4l2 control IDs for VP9 encoder.
    > media: s5p-mfc: Add support for VP9 encoder.
    > media: s5p-mfc: Add YV12 and I420 multiplanar format support
    > media: s5p-mfc: Add support for rate controls in MFCv12
    > media: s5p-mfc: Add support for UHD encoding.
    > media: s5p-mfc: Add support for DMABUF for encoder
    > media: s5p-mfc: Set context for valid case before calling try_run
    > media: s5p-mfc: Load firmware for each run in MFCv12.
    > media: s5p-mfc: DPB Count Independent of VIDIOC_REQBUF
    > arm64: dts: fsd: Add MFC related DT enteries
    >
    > .../devicetree/bindings/media/s5p-mfc.txt | 77 +---
    > .../bindings/media/samsung,s5p-mfc.yaml | 110 +++++
    > .../media/v4l/ext-ctrls-codec.rst | 167 +++++++
    > arch/arm64/boot/dts/tesla/fsd-evb.dts | 4 +
    > arch/arm64/boot/dts/tesla/fsd.dtsi | 22 +
    > .../platform/samsung/s5p-mfc/regs-mfc-v12.h | 60 +++
    > .../platform/samsung/s5p-mfc/regs-mfc-v7.h | 1 +
    > .../platform/samsung/s5p-mfc/regs-mfc-v8.h | 3 +
    > .../media/platform/samsung/s5p-mfc/s5p_mfc.c | 36 +-
    > .../platform/samsung/s5p-mfc/s5p_mfc_cmd_v6.c | 3 +
    > .../platform/samsung/s5p-mfc/s5p_mfc_common.h | 54 ++-
    > .../platform/samsung/s5p-mfc/s5p_mfc_ctrl.c | 9 +-
    > .../platform/samsung/s5p-mfc/s5p_mfc_dec.c | 51 ++-
    > .../platform/samsung/s5p-mfc/s5p_mfc_enc.c | 410 +++++++++++++++--
    > .../platform/samsung/s5p-mfc/s5p_mfc_opr.h | 16 +-
    > .../platform/samsung/s5p-mfc/s5p_mfc_opr_v5.c | 12 +-
    > .../platform/samsung/s5p-mfc/s5p_mfc_opr_v6.c | 433
    > ++++++++++++++++--
    > .../platform/samsung/s5p-mfc/s5p_mfc_opr_v6.h | 7 +-
    > drivers/media/v4l2-core/v4l2-ctrls-defs.c | 44 ++
    > include/uapi/linux/v4l2-controls.h | 33 ++
    > 20 files changed, 1349 insertions(+), 203 deletions(-) create mode 100644
    > Documentation/devicetree/bindings/media/samsung,s5p-mfc.yaml
    > create mode 100644 drivers/media/platform/samsung/s5p-mfc/regs-mfc-
    > v12.h
    >
    > --
    > 2.17.1

    # v4l2-compliance -d /dev/video1
    v4l2-compliance 1.22.1, 64 bits, 64-bit time_t

    Compliance test for s5p-mfc device /dev/video1:

    Dr[ 95.014797] vidioc_g_parm:2576: Setting FPS is only possible for the output queue
    [ 95.022670] s5p-mfc 12880000.mfc: Encoding not initialised
    [ 95.022728] s5p-mfc 12880000.mfc: Encoding not initialised
    [ 95.022812] vidioc_g_parm:2576: Setting FPS is only possible for the output queue
    [ 95.022871] vidioc_try_fmt:1607: failed to try output format
    [ 95.047169] s5p_mfc_queue_setup:2690: invalid state: 0
    [ 95.047181] vidioc_reqbufs:1725: error in vb2_reqbufs() for E(D)
    iver Info:
    Driver name : s5p-mfc
    Card type : s5p-mfc-enc
    Bus info : platform:12880000.mfc
    Driver version : 5.19.0
    Capabilities : 0x84204000
    Video Memory-to-Memory Multiplanar
    Streaming
    Extended Pix Format
    Device Capabilities
    Device Caps : 0x04204000
    Video Memory-to-Memory Multiplanar
    Streaming
    Extended Pix Format
    Detected Stateful Encoder

    Required ioctls:
    test VIDIOC_QUERYCAP: OK
    test invalid ioctls: OK

    Allow for multiple opens:
    test second /dev/video1 open: OK
    test VIDIOC_QUERYCAP: OK
    test VIDIOC_G/S_PRIORITY: OK
    fail: v4l2-compliance.cpp(736): !ok
    test for unlimited opens: FAIL

    Debug ioctls:
    test VIDIOC_DBG_G/S_REGISTER: OK (Not Supported)
    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)
    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)

    Control ioctls:
    test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK
    test VIDIOC_QUERYCTRL: OK
    fail: v4l2-test-controls.cpp(473): g_ctrl returned an error (22)
    test VIDIOC_G/S_CTRL: FAIL
    fail: v4l2-test-controls.cpp(704): g_ext_ctrls returned an error (22)
    test VIDIOC_G/S/TRY_EXT_CTRLS: FAIL
    fail: v4l2-test-controls.cpp(872): subscribe event for control 'User Controls' failed
    test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: FAIL
    test VIDIOC_G/S_JPEGCOMP: OK (Not Supported)
    Standard Controls: 128 Private Controls: 11

    Format ioctls:
    fail: v4l2-test-formats.cpp(282): node->codec_mask & STATEFUL_ENCODER
    test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: FAIL
    fail: v4l2-test-formats.cpp(1310): is_stateful_enc && !out->capability
    test VIDIOC_G/S_PARM: FAIL
    test VIDIOC_G_FBUF: OK (Not Supported)
    fail: v4l2-test-formats.cpp(474): !pix_mp.width || !pix_mp.height
    test VIDIOC_G_FMT: FAIL
    fail: v4l2-test-formats.cpp(474): !pix_mp.width || !pix_mp.height
    test VIDIOC_TRY_FMT: FAIL
    warn: v4l2-test-formats.cpp(1147): S_FMT cannot handle an invalid pixelformat.
    warn: v4l2-test-formats.cpp(1148): This may or may not be a problem. For more information see:
    warn: v4l2-test-formats.cpp(1149): http://www.mail-archive.com/linux-media@vger.kernel.org/msg56550.html
    fail: v4l2-test-formats.cpp(478): pixelformat 34363248 (H264) for buftype 9 not reported by ENUM_FMT
    test VIDIOC_S_FMT: FAIL
    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:
    fail: v4l2-test-codecs.cpp(35): node->function != MEDIA_ENT_F_PROC_VIDEO_ENCODER
    test VIDIOC_(TRY_)ENCODER_CMD: FAIL
    test VIDIOC_G_ENC_INDEX: OK (Not Supported)
    test VIDIOC_(TRY_)DECODER_CMD: OK (Not Suppor[ 95.403655] vidioc_g_parm:2576: Setting FPS is only possible for the output queue
    ted)

    Buffer ioctls:
    fail: v4l2-test-buffers.cpp(607): q.reqbufs(node, 1)
    test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: FAIL
    fail: v4l2-test-buffers.cpp(783): VIDIOC_EXPBUF is supported, but the V4L2_MEMORY_MMAP support is missing or malfunctioning.
    fail: v4l2-test-buffers.cpp(784): VIDIOC_EXPBUF is supported, but the V4L2_MEMORY_MMAP support is missing, probably due to earlier failing format tests.
    test VIDIOC_EXPBUF: OK (Not Supported)
    test Requests: OK (Not Supported)

    Total for s5p-mfc device /dev/video1: 45, Succeeded: 34, Failed: 11, Warnings: 3
    #


    # v4l2-compliance -d /dev/video0
    v4l2-compliance 1.22.1, 64 bits, 64-bit time_t

    Compliance test for s5p-mfc device /dev/video0:

    Drive[ 198.767611] vidioc_g_selection:816: Can not get compose information
    [ 198.768087] vidioc_g_selection:816: Can not get compose information
    [ 198.768175] vidioc_g_fmt:397: Format could not be read
    [ 198.768179] vidioc_g_selection:816: Can not get compose information
    [ 198.768182] vidioc_g_selection:816: Can not get compose information
    [ 198.768448] s5p-mfc 12880000.mfc: Decoding not initialised
    [ 198.768469] s5p-mfc 12880000.mfc: Decoding not initialised
    [ 198.768610] vidioc_g_fmt:397: Format could not be read
    [ 198.768640] vidioc_g_selection:816: Can not get compose information
    [ 198.768643] vidioc_g_selection:816: Can not get compose information
    [ 198.768646] vidioc_g_selection:816: Can not get compose information
    [ 198.768648] vidioc_g_selection:816: Can not get compose information
    [ 198.768650] vidioc_g_selection:816: Can not get compose information
    [ 198.768658] vidioc_g_selection:816: Can not get compose information
    [ 198.768731] vidioc_g_selection:816: Can not get compose information
    [ 198.768760] vidioc_g_selection:816: Can not get compose information
    [ 198.768837] vidioc_g_selection:816: Can not get compose information
    [ 198.768861] vidioc_g_selection:816: Can not get compose information
    [ 198.768866] vidioc_try_fmt:429: Unsupported format for destination.
    [ 198.768894] vidioc_g_selection:816: Can not get compose information
    [ 198.768915] vidioc_g_selection:816: Can not get compose information
    [ 198.768917] vidioc_try_fmt:429: Unsupported format for destination.
    [ 198.768939] vidioc_g_selection:816: Can not get compose information
    r Info:
    Driver name : s5p-mfc
    Card type : s5p-mfc-dec
    Bus info : platform:12880000.mfc
    Driver version : 5.19.0
    Capabilities : 0x84204000
    Video Memory-to-Memory Multiplanar
    Streaming
    Extended Pix Format
    Device Capabilities
    Device Caps : 0x04204000
    Video Memory-to-Memory Multiplanar
    Streaming
    Extended Pix Format
    Detected Stateful Decoder

    Required ioctls:
    test VIDIOC_QUERYCAP: OK
    test invalid ioctls: OK

    Allow for multiple opens:
    test second /dev/video0 open: OK
    test VIDIOC_QUERYCAP: OK
    test VIDIOC_G/S_PRIORITY: OK
    fail: v4l2-compliance.cpp(736): !ok
    test for unlimited opens: FAIL

    Debug ioctls:
    test VIDIOC_DBG_G/S_REGISTER: OK (Not Supported)
    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)
    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)

    Control ioctls:
    test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK
    test VIDIOC_QUERYCTRL: OK
    fail: v4l2-test-controls.cpp(473): g_ctrl returned an error (22)
    test VIDIOC_G/S_CTRL: FAIL
    fail: v4l2-test-controls.cpp(704): g_ext_ctrls returned an error (22)
    test VIDIOC_G/S/TRY_EXT_CTRLS: FAIL
    fail: v4l2-test-controls.cpp(872): subscribe event for control 'User Controls' failed
    test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: FAIL
    test VIDIOC_G/S_JPEGCOMP: OK (Not Supported)
    Standard Controls: 7 Private Controls: 2

    Format ioctls:
    test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK
    test VIDIOC_G/S_PARM: OK (Not Supported)
    test VIDIOC_G_FBUF: OK (Not Supported)
    fail: v4l2-test-formats.cpp(620): Video Capture Multiplanar cap set, but no Video Capture Multiplanar formats defined
    test VIDIOC_G_FMT: FAIL
    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)
    fail: v4l2-test-codecs.cpp(104): node->function != MEDIA_ENT_F_PROC_VIDEO_DECODER
    test VIDIOC_(TRY_)DECODER_CMD: FAIL

    Buffer ioctls:
    test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK
    test VIDIOC_EXPBUF: OK (Not Supported)
    test Requests: OK (Not Supported)

    Total for s5p-mfc device /dev/video0: 45, Succeeded: 39, Failed: 6, Warnings: 0
    #
    \
     
     \ /
      Last update: 2022-09-07 09:51    [W:6.458 / U:0.024 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site