From: Krzysztof Kozlowski <krzk@kernel.org>
To: Atanas Filipov <atanas.filipov@oss.qualcomm.com>,
linux-media@vger.kernel.org
Cc: bryan.odonoghue@linaro.org, vladimir.zapolskiy@linaro.org,
loic.poulain@oss.qualcomm.com, mchehab@kernel.org,
robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org,
andersson@kernel.org, konradybcio@kernel.org,
linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org,
devicetree@vger.kernel.org
Subject: Re: [PATCH v4 5/5] media: qcom: jpeg: Add Qualcomm JPEG V4L2 encoder
Date: Mon, 6 Jul 2026 14:19:51 +0200 [thread overview]
Message-ID: <06834dd6-1221-463f-9543-600814c8fc83@kernel.org> (raw)
In-Reply-To: <20260706071113.383215-6-atanas.filipov@oss.qualcomm.com>
On 06/07/2026 09:11, Atanas Filipov wrote:
> Add a Qualcomm JPEG encoder driver implemented on top of the
> V4L2 mem2mem framework.
>
> The driver wires vb2 queue handling, format negotiation, JPEG header
> handling, interrupt-driven job completion, and runtime PM/clock/ICC
> integration for the standalone JPEG encode hardware block.
>
> This series targets SM8250 (Kona) platforms.
>
> The jpeg-encoder node is described as a child node of the CAMSS block
> and is probed automatically via of_platform_populate() in camss_probe().
>
> Usage examples:
>
> - Check of related video node: v4l2-ctl --list-devices
> The expected result:
> qcom-jpeg-enc (platform:qcom-jpeg-enc):
> /dev/videoX
>
> V4L2 Examples:
>
> v4l2-ctl -d /dev/video14 \
> --set-fmt-video-out=width=1920,height=1080,pixelformat=NM12 \
> --stream-mmap --stream-out-mmap
>
> v4l2-ctl -d /dev/video14 \
> -c compression_quality=100 \
> --set-fmt-video-out=width=1920,height=1080,pixelformat=NM12 \
> --stream-mmap --stream-out-mmap \
> --stream-count=100
>
> v4l2-ctl -d /dev/video14 \
> --set-fmt-video-out=width=1920,height=1080,pixelformat=NM12 \
> --stream-mmap --stream-out-mmap \
> --set-ctrl=perf_level_auto=1 \
> --set-ctrl=fps_target=30 \
> --stream-count=100
>
> v4l2-ctl -d /dev/video14 \
> --set-fmt-video-out=width=8192,height=8192,pixelformat=NM12 \
> --stream-mmap --stream-out-mmap \
> --stream-count=1 \
> --stream-to=8192x8192_NM12.jpg
>
> v4l2-ctl -d /dev/video14 \
> --set-fmt-video-out=width=8192,height=8192,pixelformat=GREY \
> --stream-mmap --stream-out-mmap \
> --stream-count=1 \
> --stream-to=OUT_8192x8192.jpg
>
> v4l2-ctl -d /dev/video14 \
> -c compression_quality=100 \
> --set-fmt-video-out=width=1920,height=1088,pixelformat=NM12 \
> --stream-mmap=4 --stream-out-mmap=4 \
> --stream-count=100 \
> --stream-out-pattern=21 \
> --stream-to=OUT_1920x1088_100F.mjpg
>
> GStreamer examples:
>
> gst-launch-1.0 videotestsrc \
> is-live=false pattern=ball num-buffers=50 ! \
> video/x-raw,format=NV12,width=1920,height=1080 ! \
> videoscale ! videoconvert ! \
> video/x-raw,format=NV12,width=1920,height=1088 ! \
> v4l2jpegenc ! \
> fakesink sync=false
>
> gst-launch-1.0 videotestsrc is-live=true pattern=smpte ! \
> video/x-raw,format=NV12,width=1920,height=1088 ! \
> v4l2jpegenc extra-controls="controls,compression_quality=85" ! \
> fpsdisplaysink -v sync=false
>
> Performance measurements on SM8250
> (NV12, quality=100, GStreamer v4l2jpegenc vs jpegenc):
>
> +------------+-----------------------------+-------------------+
> | Resolution | HW v4l2jpegenc (q100) | SW jpegenc (q100) |
> | | Execution | avrFPS | maxFPS | Execution | FPS |
> +------------+-----------+--------+--------+-----------+-------+
> | 512x512 | 2.2332 | 1139.1 | 1195.4 | 7.1055 | 358.0 |
> | 1280x720 | 1.7300 | 418.5 | 457.2 | 5.0585 | 143.1 |
> | 1024x1024 | 1.6991 | 374.3 | 397.4 | 4.7304 | 134.4 |
> | 1920x1088 | 1.6596 | 192.8 | 193.8 | 3.7913 | 84.4 |
> | 2048x2048 | 1.7277 | 92.0 | 91.6 | 3.6343 | 43.7 |
> | 4096x4096 | 1.5887 | 25.2 | 25.3 | 4.2163 | 9.5 |
> | 8192x8192 | 1.3104 | 7.6 | 8.0 | 2.9987 | 3.3 |
> +------------+-----------+--------+--------+-----------+-------+
>
> Signed-off-by: Atanas Filipov <atanas.filipov@oss.qualcomm.com>
> ---
> .../bindings/media/qcom,jpeg-encoder.yaml | 143 +-
NAK
...
> diff --git a/drivers/media/platform/qcom/Kconfig b/drivers/media/platform/qcom/Kconfig
> index 4f4d3a68e6e5..f33d53a754a0 100644
> --- a/drivers/media/platform/qcom/Kconfig
> +++ b/drivers/media/platform/qcom/Kconfig
> @@ -5,3 +5,4 @@ comment "Qualcomm media platform drivers"
> source "drivers/media/platform/qcom/camss/Kconfig"
> source "drivers/media/platform/qcom/iris/Kconfig"
> source "drivers/media/platform/qcom/venus/Kconfig"
> +source "drivers/media/platform/qcom/jpeg/Kconfig"
Just like for other patch, you ignored reviewers' feedback.
I already asked you to go through previous comments around v3. I do not
see improvements, so I assume you do it deliberately.
NAK
Best regards,
Krzysztof
next prev parent reply other threads:[~2026-07-06 12:19 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-06 7:11 [PATCH v4 0/5] Add Qualcomm JPEG V4L2 encoder for SM8250 Atanas Filipov
2026-07-06 7:11 ` [PATCH v4 1/5] media: qcom: camss: Populate CAMSS child devices via DT Atanas Filipov
2026-07-06 7:23 ` sashiko-bot
2026-07-06 12:09 ` Krzysztof Kozlowski
2026-07-06 12:27 ` Bryan O'Donoghue
2026-07-06 12:36 ` Krzysztof Kozlowski
2026-07-06 12:38 ` Bryan O'Donoghue
2026-07-06 12:41 ` Dmitry Baryshkov
2026-07-06 7:11 ` [PATCH v4 2/5] dt-bindings: media: qcom,sm8250-camss: allow JPEG encoder child node Atanas Filipov
2026-07-06 7:24 ` sashiko-bot
2026-07-06 10:07 ` Bryan O'Donoghue
2026-07-06 12:11 ` Krzysztof Kozlowski
2026-07-06 7:11 ` [PATCH v4 3/5] dt-bindings: media: qcom: Add JPEG encoder binding Atanas Filipov
2026-07-06 7:18 ` sashiko-bot
2026-07-06 10:19 ` Bryan O'Donoghue
2026-07-06 12:17 ` Krzysztof Kozlowski
2026-07-06 7:11 ` [PATCH v4 4/5] arm64: dts: qcom: sm8250: Add JPEG encoder node Atanas Filipov
2026-07-06 7:29 ` sashiko-bot
2026-07-06 12:18 ` Krzysztof Kozlowski
2026-07-06 12:45 ` Dmitry Baryshkov
2026-07-06 7:11 ` [PATCH v4 5/5] media: qcom: jpeg: Add Qualcomm JPEG V4L2 encoder Atanas Filipov
2026-07-06 7:33 ` sashiko-bot
2026-07-06 7:46 ` Vladimir Zapolskiy
2026-07-06 10:21 ` Bryan O'Donoghue
2026-07-06 12:19 ` Krzysztof Kozlowski [this message]
2026-07-06 13:11 ` Dmitry Baryshkov
2026-07-06 17:13 ` Uwe Kleine-König
2026-07-06 10:12 ` [PATCH v4 0/5] Add Qualcomm JPEG V4L2 encoder for SM8250 Bryan O'Donoghue
2026-07-06 12:00 ` Vladimir Zapolskiy
2026-07-06 12:11 ` Bryan O'Donoghue
2026-07-06 13:02 ` Vladimir Zapolskiy
2026-07-06 13:37 ` Bryan O'Donoghue
2026-07-06 13:57 ` Vladimir Zapolskiy
2026-07-06 14:12 ` Bryan O'Donoghue
2026-07-06 14:35 ` Vladimir Zapolskiy
2026-07-06 14:49 ` Bryan O'Donoghue
2026-07-06 15:00 ` Vladimir Zapolskiy
2026-07-06 12:24 ` Krzysztof Kozlowski
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=06834dd6-1221-463f-9543-600814c8fc83@kernel.org \
--to=krzk@kernel.org \
--cc=andersson@kernel.org \
--cc=atanas.filipov@oss.qualcomm.com \
--cc=bryan.odonoghue@linaro.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=konradybcio@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=loic.poulain@oss.qualcomm.com \
--cc=mchehab@kernel.org \
--cc=robh@kernel.org \
--cc=vladimir.zapolskiy@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox