From: Marek Vasut <marek.vasut@mailbox.org>
To: "Niklas Söderlund" <niklas.soderlund+renesas@ragnatech.se>,
"Mauro Carvalho Chehab" <mchehab@kernel.org>,
"Kuninori Morimoto" <kuninori.morimoto.gx@renesas.com>,
"Jacopo Mondi" <jacopo.mondi@ideasonboard.com>,
"Laurent Pinchart" <laurent.pinchart@ideasonboard.com>,
linux-media@vger.kernel.org, linux-renesas-soc@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH v5 01/12] media: rppx1: Add framework to support Dreamchip RPPX1 ISP
Date: Thu, 25 Dec 2025 21:59:43 +0100 [thread overview]
Message-ID: <5401228b-e8e3-4f2b-b91c-7e202afd9fdb@mailbox.org> (raw)
In-Reply-To: <20251225171054.1370856-2-niklas.soderlund+renesas@ragnatech.se>
On 12/25/25 6:10 PM, Niklas Söderlund wrote:
> Add a framework driver for Dreamchip RPPX1 ISP. The driver aims to
> provide a framework for other V4L2 based drivers to drive the RPPX1
> functionality. The reason for this split is that the RPPX1 IP itself do
> not provide any DMA engines to drive data to/from the device, instead it
> depends on other IP blocks to implement these features.
>
> While the peripherals around the RPPX1 ISP used in different designs and
> by different vendors are different the RPPX1 core itself is the same.
> For this reason the framework solution to be able to split the Dreamchip
> RPPX1 driver from vendors usage of it have been picked in hope to reduce
> duplication of the common parts.
>
> The functions provided by the RPPX1 is similar to what is exposed by
> other ISP drivers already in tree (RkISP1 primarily), but the
> implementation of them are different. It do however open up for the
> possibility to reuse the RkISP1 parameter and statistics pixel formats
> in an initial implementation.
>
> The design is to try and keep the surface of this framework as small as
> possible. The intention of this change is to be able to fill all needs
> of this.
>
> * Two functions to create and destroy a RPPX1 instance, rppx1_create()
> and rppx1_destory(). These are intended to be called in the users
> probe and remove code paths.
>
> * Two functions to start and stop the RPPX1 processing, rppx1_start()
> and rppx1_stop(). These are intended to be called in the users
> stream on and stream off code paths.
>
> * One function to ask the RPPX1 to process parameters buffer prepared
> by user space, rppx1_params_rkisp1(). This is intended to translate
> the parameter buffer (RkISP1 format) to the register writes needed
> to be preformed on the RPPX1. The intention is to call this function
> when the parameter buffer is queued to the V4L2 driver and the
> result stored by the driver until the time it needs to be written to
> the RPPX1. It's the users responsibility to write it either using
> MMIO or other means.
>
> * One function to fill in a statistic buffer (RkISP1 format) based on
> the current status of the RPPX1, rppx1_stats_fill_isr(). The
> intention is that the user call's this in its interrupt handler when
> it knows the RPPX1 is done processing a frame.
>
> * One function to ack and retrieve the interrupts generated by the
> RPPX1, rppx1_interrupt(). The intention is to call this function
> when the users interrupt handler detects the RPPX1 have raised and
> interrupt. There is no need for the user to understand, or act, on
> the actual RPPX1 interrupt, but it can if it wants too.
>
> The initial support in the framework is limited and do not implement any
> ISP processing algorithms other then configuring the RPPX1 to process
> any Bayer (8-, 10, or 12-bit) image and produce either a RGB or YUYV
> output. It do however probe all function blocks of the RPPX1 and provide
> an interface to interact with both parameter and statistic bufferers.
> The user of the framework will not change as algorithms for the
> different function blocks of the ISP are being added.
>
> Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
> Tested-by: Marek Vasut'<marek.vasut+renesas@mailbox.org> ^
Tested-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
(in case the apostrophe corrupted the TB tag)
Thank you for your hard work !
next prev parent reply other threads:[~2025-12-25 20:59 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-12-25 17:10 [PATCH v5 00/12] media: Add support for R-Car ISP using " Niklas Söderlund
2025-12-25 17:10 ` [PATCH v5 01/12] media: rppx1: Add framework to support " Niklas Söderlund
2025-12-25 20:59 ` Marek Vasut [this message]
2025-12-25 17:10 ` [PATCH v5 02/12] media: rcar-isp: Add support for ISPCORE Niklas Söderlund
2026-02-04 16:29 ` Jacopo Mondi
2025-12-25 17:10 ` [PATCH v5 03/12] media: rppx1: Add support for AWB measurement parameters and statistics Niklas Söderlund
2025-12-25 17:10 ` [PATCH v5 04/12] media: rppx1: Add support for AWB gain settings Niklas Söderlund
2025-12-25 17:10 ` [PATCH v5 05/12] media: rppx1: Add support for Auto Exposure Measurement Niklas Söderlund
2025-12-25 17:10 ` [PATCH v5 06/12] media: rppx1: Add support for Histogram Measurement Niklas Söderlund
2025-12-25 17:10 ` [PATCH v5 07/12] media: rppx1: Add support for Black Level Subtraction Niklas Söderlund
2025-12-25 17:10 ` [PATCH v5 08/12] media: rppx1: Add support for Color Correction Matrix Niklas Söderlund
2025-12-25 17:10 ` [PATCH v5 09/12] media: rppx1: Add support for Lens Shade Correction Niklas Söderlund
2025-12-25 17:10 ` [PATCH v5 10/12] media: rppx1: Add support for Gamma Correction Niklas Söderlund
2025-12-25 17:10 ` [PATCH v5 11/12] media: rppx1: Add support for Bayer Demosaicing Niklas Söderlund
2025-12-25 17:10 ` [PATCH v5 12/12] media: rppx1: Add support for Bilateral Denoising Niklas Söderlund
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=5401228b-e8e3-4f2b-b91c-7e202afd9fdb@mailbox.org \
--to=marek.vasut@mailbox.org \
--cc=jacopo.mondi@ideasonboard.com \
--cc=kuninori.morimoto.gx@renesas.com \
--cc=laurent.pinchart@ideasonboard.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-renesas-soc@vger.kernel.org \
--cc=mchehab@kernel.org \
--cc=niklas.soderlund+renesas@ragnatech.se \
/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
Powered by JetHome