Re: [RESEND PATCH v4 0/4] Add features to an existing driver

From: sebastian.fricke@xxxxxxxxxxxxx
Date: Thu Jun 06 2024 - 08:43:51 EST


Hey Jackson,

On 20.05.2024 01:45, jackson.lee wrote:
Hi sebastian and Nicolas

I sent the v4 patch. Can you please review them ?

so overall this looks good now, but there are still a few warnings:
https://linux-media.pages.freedesktop.org/-/users/sebastianfricke/-/jobs/59559963/artifacts/report.htm

Could you please look into those? (Please tell me if you can't access
the link)


https://lore.kernel.org/linux-media/20240510112252.800-1-jackson.lee@xxxxxxxxxxxxxxx/


thanks
Jackson

Regards,
Sebastian


-----Original Message-----
From: jackson.lee <jackson.lee@xxxxxxxxxxxxxxx>
Sent: Friday, May 10, 2024 8:23 PM
To: mchehab@xxxxxxxxxx; nicolas@xxxxxxxxxxxx; sebastian.fricke@xxxxxxxxxxxxx
Cc: linux-media@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
hverkuil@xxxxxxxxx; Nas Chung <nas.chung@xxxxxxxxxxxxxxx>; lafley.kim
<lafley.kim@xxxxxxxxxxxxxxx>; b-brnich@xxxxxx; jackson.lee
<jackson.lee@xxxxxxxxxxxxxxx>
Subject: [RESEND PATCH v4 0/4] Add features to an existing driver

From: "Jackson.lee" <jackson.lee@xxxxxxxxxxxxxxx>

The wave5 codec driver is a stateful encoder/decoder.
The following patches is for supporting yuv422 inpuy format, supporting
runtime suspend/resume feature and extra things.

v4l2-compliance results:
========================

v4l2-compliance 1.24.1, 64 bits, 64-bit time_t

Buffer ioctls:
warn: v4l2-test-buffers.cpp(693): VIDIOC_CREATE_BUFS not supported
warn: v4l2-test-buffers.cpp(693): VIDIOC_CREATE_BUFS not supported
test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK
test VIDIOC_EXPBUF: OK
test Requests: OK (Not Supported)

Total for wave5-dec device /dev/video0: 45, Succeeded: 45, Failed: 0,
Warnings: 2 Total for wave5-enc device /dev/video1: 45, Succeeded: 45, Failed:
0, Warnings: 0

Fluster test results:
=====================

Running test suite JCT-VC-HEVC_V1 with decoder GStreamer-H.265-V4L2-Gst1.0
Using 1 parallel job(s)
Ran 132/147 tests successfully in 97.421 secs

(1 test fails because of not supporting to parse multi frames, 1 test fails
because of a missing frame and slight corruption,
2 tests fail because of sizes which are incompatible with the IP, 11 tests
fail because of unsupported 10 bit format)

Running test suite JVT-AVC_V1 with decoder GStreamer-H.264-V4L2-Gst1.0 Using
1 parallel job(s)
Ran 77/135 tests successfully in 37.233 secs

(58 fail because the hardware is unable to decode MBAFF / FMO / Field /
Extended profile streams.)

Change since v3:
=================

* For [PATCH v4 1/4] media: chips-media: wave5: Support SPS/PPS generation
for each IDR
- add Reviewed-By tag

* For [PATCH v4 2/4] media: chips-media: wave5: Support runtime
suspend/resume
- add Reviewed-By tag

* For [PATCH v4 3/4] media: chips-media: wave5: Use helpers to calculate
bytesperline and sizeimage.
- modify the commit message
- define three framesize structures for decoder

* For [PATCH v4 4/4] media: chips-media: wave5: Support YUV422 raw pixel-
formats on the encoder
- modify the commit message
- use the v4l2_format_info to calculate luma, chroma size

Change since v2:
=================

* For [PATCH v3 0/4] media: chips-media: wave5: Support SPS/PPS generation
for each IDR
- add the suggested _SHIFT suffix

* For [PATCH v3 1/4] media: chips-media: wave5: Support runtime
suspend/resume
- change a commit message

* For [PATCH v3 2/4] media: chips-media: wave5: Use helpers to calculate
bytesperline and sizeimage
- add pix_fmt_type parameter into wave5_update_pix_fmt function
- add min/max width/height values into dec_fmt_list

Change since v1:
=================

* For [PATCH v2 0/4] media: chips-media: wave5: Support SPS/PPS generation
for each IDR
- define a macro for register addresses

* For [PATCH v2 1/4] media: chips-media: wave5: Support runtime
suspend/resume
- add auto suspend/resume

* For [PATCH v2 2/4] media: chips-media: wave5: Use helpers to calculate
bytesperline and sizeimage
- use helper functions to calculate bytesperline and sizeimage

* For [PATCH v2 3/4] media: chips-media: wave5: Support YUV422 raw pixel-
formats on the encoder
- remove unnecessary codes

Change since v0:
=================
The DEFAULT_SRC_SIZE macro was defined using multiple lines, To make a simple
define, tab and multiple lines has been removed, The macro is defined using
one line.

Jackson.lee (4):
media: chips-media: wave5: Support SPS/PPS generation for each IDR
media: chips-media: wave5: Support runtime suspend/resume
media: chips-media: wave5: Use helpers to calculate bytesperline and
sizeimage.
media: chips-media: wave5: Support YUV422 raw pixel-formats on the
encoder.

.../platform/chips-media/wave5/wave5-helper.c | 24 ++
.../platform/chips-media/wave5/wave5-helper.h | 5 +
.../platform/chips-media/wave5/wave5-hw.c | 23 +-
.../chips-media/wave5/wave5-vpu-dec.c | 312 +++++++-----------
.../chips-media/wave5/wave5-vpu-enc.c | 300 +++++++++--------
.../platform/chips-media/wave5/wave5-vpu.c | 43 +++
.../platform/chips-media/wave5/wave5-vpu.h | 5 +-
.../platform/chips-media/wave5/wave5-vpuapi.c | 14 +-
.../platform/chips-media/wave5/wave5-vpuapi.h | 1 +
.../chips-media/wave5/wave5-vpuconfig.h | 27 +-
.../media/platform/chips-media/wave5/wave5.h | 3 +
11 files changed, 414 insertions(+), 343 deletions(-)

--
2.43.0