From: Atanas Filipov <atanas.filipov@oss.qualcomm.com>
To: linux-media@vger.kernel.org
Cc: mchehab@kernel.org, bod@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,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v1 0/4] This series adds support for the Qualcomm JPEG V4L2 mem2mem encoder.
Date: Thu, 25 Jun 2026 16:43:49 +0300 [thread overview]
Message-ID: <364a79bf-e424-4237-ab13-18e38299ecec@oss.qualcomm.com> (raw)
In-Reply-To: <20260612194417.1737009-1-atanas.filipov@oss.qualcomm.com>
On 6/12/2026 10:44 PM, Atanas Filipov wrote:
> The goal is to upstream a standards-based JPEG encode path using the V4L2 M2M
> framework, with DT-described hardware resources and SoC DTS integration.
>
> Patch layout:
> - 1/4: devicetree bindings for the standalone Qualcomm JPEG encoder block
> - 2/4: SM8550 devicetree integration
> - 3/4: SM8250 devicetree integration
> - 4/4: qcom-jenc V4L2 mem2mem encoder driver
>
> Supported compatibles:
> - qcom,sm8250-jenc
> - qcom,qcm6490-jenc
> - qcom,sm8550-jenc
>
> Driver scope and design choices:
> - uses the standard V4L2 mem2mem + vb2 workflow
> - maps runtime resources from DT (clocks/interconnects/iommu/etc.)
> - keeps userspace interface within existing V4L2 JPEG controls/framework
> - uses runtime PM for balanced power transitions across stream/probe/remove
>
> Functional validation (hardware):
> - platforms (codename / SoC / compatible / board):
> - Kona / SM8250 (QRB5165 class) / qcom,sm8250-jenc / RB5
> - Kailua / SM8550 / qcom,sm8550-jenc / RB5 Gen2
> - Kodiak / QCM6490 (QCS6490 derivative line) / qcom,qcm6490-jenc / RB3 Gen2
> - validated SoC coverage: SM8250, SM8550, QCM6490
> - tested flows:
> - single-frame encode: 8192x8192 NV12 (v4l2-ctl)
> - single-frame encode: 1920x1080 NV12 (v4l2-ctl)
> - single-frame encode: 1920x1080 GREY (v4l2-ctl)
> - GStreamer NV12 pipeline to JPEG files (v4l2jpegenc)
> - GStreamer GRAY8 pipeline to MJPEG output (v4l2jpegenc)
>
> Known limitations:
> - scaling is not supported
> - width and height must be aligned to 16 pixels
>
> Atanas Filipov (4):
> dt-bindings: media: qcom: Add JPEG encoder binding
> arm64: dts: qcom: sm8550: Add JPEG encoder node
> arm64: dts: qcom: sm8250: Add JPEG encoder node
> media: qcom: jpeg: Add Qualcomm JPEG V4L2 encoder
>
> .../bindings/media/qcom,jpeg-encoder.yaml | 142 ++
> arch/arm64/boot/dts/qcom/sm8250.dtsi | 35 +
> arch/arm64/boot/dts/qcom/sm8550.dtsi | 42 +
> drivers/media/platform/qcom/Kconfig | 1 +
> drivers/media/platform/qcom/Makefile | 1 +
> drivers/media/platform/qcom/jpeg/Kconfig | 18 +
> drivers/media/platform/qcom/jpeg/Makefile | 9 +
> .../media/platform/qcom/jpeg/qcom_jenc_defs.h | 244 +++
> .../media/platform/qcom/jpeg/qcom_jenc_dev.c | 336 ++++
> .../media/platform/qcom/jpeg/qcom_jenc_dev.h | 107 ++
> .../media/platform/qcom/jpeg/qcom_jenc_hdr.c | 360 ++++
> .../media/platform/qcom/jpeg/qcom_jenc_hdr.h | 119 ++
> .../media/platform/qcom/jpeg/qcom_jenc_ops.c | 1658 +++++++++++++++++
> .../media/platform/qcom/jpeg/qcom_jenc_ops.h | 52 +
> .../media/platform/qcom/jpeg/qcom_jenc_res.c | 226 +++
> .../media/platform/qcom/jpeg/qcom_jenc_res.h | 54 +
> .../qcom/jpeg/qcom_jenc_v420_hw_info.h | 529 ++++++
> .../media/platform/qcom/jpeg/qcom_jenc_v4l2.c | 1109 +++++++++++
> .../media/platform/qcom/jpeg/qcom_jenc_v4l2.h | 25 +
> 19 files changed, 5067 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/media/qcom,jpeg-encoder.yaml
> create mode 100644 drivers/media/platform/qcom/jpeg/Kconfig
> create mode 100644 drivers/media/platform/qcom/jpeg/Makefile
> create mode 100644 drivers/media/platform/qcom/jpeg/qcom_jenc_defs.h
> create mode 100644 drivers/media/platform/qcom/jpeg/qcom_jenc_dev.c
> create mode 100644 drivers/media/platform/qcom/jpeg/qcom_jenc_dev.h
> create mode 100644 drivers/media/platform/qcom/jpeg/qcom_jenc_hdr.c
> create mode 100644 drivers/media/platform/qcom/jpeg/qcom_jenc_hdr.h
> create mode 100644 drivers/media/platform/qcom/jpeg/qcom_jenc_ops.c
> create mode 100644 drivers/media/platform/qcom/jpeg/qcom_jenc_ops.h
> create mode 100644 drivers/media/platform/qcom/jpeg/qcom_jenc_res.c
> create mode 100644 drivers/media/platform/qcom/jpeg/qcom_jenc_res.h
> create mode 100644 drivers/media/platform/qcom/jpeg/qcom_jenc_v420_hw_info.h
> create mode 100644 drivers/media/platform/qcom/jpeg/qcom_jenc_v4l2.c
> create mode 100644 drivers/media/platform/qcom/jpeg/qcom_jenc_v4l2.h
>
>
> base-commit: e7ae89a0c97ce2b68b0983cd01eda67cf373517d
Hi all,
Thank you for the review. v2 has been sent and addresses all comments:
https://lore.kernel.org/linux-media/20260625133828.3221781-1-atanas.filipov@oss.qualcomm.com/T/#t
Regards,
Atanas
next prev parent reply other threads:[~2026-06-25 13:43 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-06-12 19:44 [PATCH v1 0/4] This series adds support for the Qualcomm JPEG V4L2 mem2mem encoder Atanas Filipov
2026-06-12 19:44 ` [PATCH v1 1/4] dt-bindings: media: qcom: Add JPEG encoder binding Atanas Filipov
2026-06-12 19:57 ` sashiko-bot
2026-06-12 20:42 ` Frank Li
2026-06-12 23:17 ` Bryan O'Donoghue
2026-06-12 23:38 ` Bryan O'Donoghue
2026-06-13 18:42 ` Krzysztof Kozlowski
2026-06-23 6:41 ` Luca Weiss
2026-06-12 19:44 ` [PATCH v1 2/4] arm64: dts: qcom: sm8550: Add JPEG encoder node Atanas Filipov
2026-06-12 20:06 ` sashiko-bot
2026-06-12 23:14 ` Bryan O'Donoghue
2026-06-13 9:24 ` Atanas Filipov
2026-06-13 9:52 ` Bryan O'Donoghue
2026-06-13 11:16 ` Atanas Filipov
2026-06-14 1:13 ` Bryan O'Donoghue
2026-06-19 14:38 ` Konrad Dybcio
2026-06-19 14:57 ` Vladimir Zapolskiy
2026-06-12 23:52 ` Bryan O'Donoghue
2026-06-13 16:05 ` Atanas Filipov
2026-06-14 0:53 ` Bryan O'Donoghue
2026-06-14 21:28 ` Dmitry Baryshkov
2026-06-12 19:44 ` [PATCH v1 3/4] arm64: dts: qcom: sm8250: " Atanas Filipov
2026-06-12 19:44 ` [PATCH v1 4/4] media: qcom: jpeg: Add Qualcomm JPEG V4L2 encoder Atanas Filipov
2026-06-12 20:23 ` sashiko-bot
2026-06-12 20:53 ` Frank Li
2026-06-13 18:43 ` Krzysztof Kozlowski
2026-06-25 13:43 ` Atanas Filipov [this message]
2026-06-25 13:53 ` [PATCH v1 0/4] This series adds support for the Qualcomm JPEG V4L2 mem2mem encoder 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=364a79bf-e424-4237-ab13-18e38299ecec@oss.qualcomm.com \
--to=atanas.filipov@oss.qualcomm.com \
--cc=andersson@kernel.org \
--cc=bod@kernel.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=mchehab@kernel.org \
--cc=robh@kernel.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