public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: <Balamanikandan.Gunasundar@microchip.com>
To: <kieran.bingham@ideasonboard.com>, <eugen.hristev@linaro.org>
Cc: <3chas3@gmail.com>, <Nicolas.Ferre@microchip.com>,
	<alexandre.belloni@bootlin.com>, <claudiu.beznea@tuxon.dev>,
	<Balakrishnan.S@microchip.com>, <hverkuil@kernel.org>,
	<ribalda@chromium.org>,
	<laurent.pinchart+renesas@ideasonboard.com>,
	<jacopo.mondi@ideasonboard.com>,
	<dan.scally+renesas@ideasonboard.com>,
	<tomi.valkeinen@ideasonboard.com>, <linux-kernel@vger.kernel.org>,
	<linux-media@vger.kernel.org>,
	<linux-atm-general@lists.sourceforge.net>,
	<netdev@vger.kernel.org>, <linux-arm-kernel@lists.infradead.org>,
	<mchehab@kernel.org>
Subject: Re: [PATCH 00/18] media: microchip-isc: Color correction and histogram stats
Date: Wed, 15 Oct 2025 06:33:29 +0000	[thread overview]
Message-ID: <54d623e2-f883-4113-9b89-be34a556e708@microchip.com> (raw)
In-Reply-To: <176008451125.756374.6436397947711705101@ping.linuxembedded.co.uk>

Hi Kieran,

On 10/10/25 1:51 pm, Kieran Bingham wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
>
> Quoting Eugen Hristev (2025-10-09 21:11:17)
>> Hi Bala,
>>
>> On 10/9/25 18:52, Balamanikandan Gunasundar wrote:
>>> Hi,
>>>
>>> This patch series has a set of enhancements to the Microchip Image Sensor
>>> Controller driver. The objective is to expand its image processing
>>> capabilities and to improve the colors.
>>>
>>> This series also introduces a new stats driver that exposes the histogram
>>> data to userspace via v4l2 controls. This allows applications such as


My apologies. I made a mistake clarifying this earlier. The new stats 
driver does not use V4L2 controls, it exports the buffer through the 
v4l2 meta data| (|V4L2_BUF_TYPE_META_CAPTURE)||instead. So I guess this 
is the approach you are suggesting.

The controls like brightness, contrast, hue and saturation are exported 
as V4L2 controls.

root@sam9x75-curiosity-sd:~# v4l2-ctl -l

User Controls

                      brightness 0x00980900 (int)    : min=-1024 
max=1023 step=1 default=0 value=0 flags=slider
                        contrast 0x00980901 (int)    : min=-2048 
max=2047 step=1 default=16 value=16 flags=slider
                      saturation 0x00980902 (int)    : min=0 max=100 
step=1 default=16 value=16 flags=slider
                             hue 0x00980903 (int)    : min=-180 max=180 
step=1 default=0 value=0 flags=slider

<snip>


Thanks,

Bala.


>>> libcamera to access real time image statistics for advanced image
>>> processing like automatic exposure, white balance adjustments etc.
> How much data do you anticipate to be passing through controls? (What
> can the hardware provide in total if we look at the bigger picture to
> support the full device?)
>
> For all other ISPs we've been working towards using structured parameter
> buffers to pass data - and we've been making that format extensible,
> which I think could also be a design that can apply to statistics.
>
> This would greatly reduce the overhead of managing 'one control per
> value' ... or things like passing large tables (like a lens shading
> table perhaps) through controls.
>
> --
> Kieran
>
>>> Balakrishnan Sambath (11):
>>>    media: microchip-isc: Enable GDC and CBC module flags for RGB formats
>>>    media: microchip-isc: Improve histogram calculation with outlier
>>>      rejection
>>>    media: microchip-isc: Use channel averages for Grey World AWB
>>>    media: microchip-isc: Add range based black level correction
>>>    media: platform: microchip: Extend gamma table and control range
>>>    media: platform: microchip: Add new histogram submodule
>>>    media: microchip-isc: Register and unregister statistics device
>>>    media: microchip-isc: Always enable histogram for all RAW formats
>>>    media: microchip-isc: fix histogram state initialization order
>>>    media: microchip-isc: decouple histogram cycling from AWB mode
>>>    media: microchip-isc: enable userspace histogram statistics export
>>>
>>> Balamanikandan Gunasundar (7):
>>>    media: platform: microchip: set maximum resolution for sam9x7
>>>    media: platform: microchip: Include DPC modules flags in pipeline
>>>    media: microchip-isc: expose hue and saturation as v4l2 controls
>>>    media: microchip-isc: Rename CBC to CBHS
>>>    media: microchip-isc: Store histogram data of all channels
>>>    media: videodev2.h, v4l2-ioctl: Add microchip statistics format
>>>    media: microchip-isc: expose color correction registers as v4l2
>>>      controls
>>>
>>>   drivers/media/platform/microchip/Kconfig      |   2 +
>>>   drivers/media/platform/microchip/Makefile     |   2 +-
>>>   .../platform/microchip/microchip-isc-base.c   | 373 ++++++++++--
>>>   .../platform/microchip/microchip-isc-regs.h   |   3 +
>>>   .../platform/microchip/microchip-isc-stats.c  | 549 ++++++++++++++++++
>>>   .../media/platform/microchip/microchip-isc.h  |  44 +-
>>>   .../microchip/microchip-sama5d2-isc.c         |   2 +-
>>>   .../microchip/microchip-sama7g5-isc.c         |  73 ++-
>>>   drivers/media/v4l2-core/v4l2-ioctl.c          |   1 +
>>>   include/linux/atmel-isc-media.h               |  13 +
>>>   include/uapi/linux/videodev2.h                |   3 +
>>>   11 files changed, 1001 insertions(+), 64 deletions(-)
>>>   create mode 100644 drivers/media/platform/microchip/microchip-isc-stats.c
>>>
>> This looks interesting.
>> I would like to see the compliance tool output for more platforms
>> (sama7g5, sama5d2, and the new sam9x7), also the media-ctl -p , to see
>> the topology with your new driver.
>>
>> Thanks,
>> Eugen



  parent reply	other threads:[~2025-10-15  6:33 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-10-09 15:52 [PATCH 00/18] media: microchip-isc: Color correction and histogram stats Balamanikandan Gunasundar
2025-10-09 15:52 ` [PATCH 01/18] media: platform: microchip: set maximum resolution for sam9x7 Balamanikandan Gunasundar
2025-10-09 15:52 ` [PATCH 02/18] media: platform: microchip: Include DPC modules flags in pipeline Balamanikandan Gunasundar
2025-10-09 15:52 ` [PATCH 03/18] media: microchip-isc: Enable GDC and CBC module flags for RGB formats Balamanikandan Gunasundar
2025-10-09 15:52 ` [PATCH 04/18] media: microchip-isc: Improve histogram calculation with outlier rejection Balamanikandan Gunasundar
2025-10-09 15:52 ` [PATCH 05/18] media: microchip-isc: Use channel averages for Grey World AWB Balamanikandan Gunasundar
2025-10-09 15:52 ` [PATCH 06/18] media: microchip-isc: Add range based black level correction Balamanikandan Gunasundar
2025-10-09 15:52 ` [PATCH 07/18] media: platform: microchip: Extend gamma table and control range Balamanikandan Gunasundar
2025-10-09 15:52 ` [PATCH 08/18] media: platform: microchip: Add new histogram submodule Balamanikandan Gunasundar
2025-11-10  8:41   ` Hans Verkuil
2025-11-10  8:55   ` Hans Verkuil
2025-10-09 15:52 ` [PATCH 09/18] media: microchip-isc: Register and unregister statistics device Balamanikandan Gunasundar
2025-10-09 15:52 ` [PATCH 10/18] media: microchip-isc: Always enable histogram for all RAW formats Balamanikandan Gunasundar
2025-10-09 15:52 ` [PATCH 11/18] media: microchip-isc: expose hue and saturation as v4l2 controls Balamanikandan Gunasundar
2025-10-09 15:52 ` [PATCH 12/18] media: microchip-isc: Rename CBC to CBHS Balamanikandan Gunasundar
2025-10-09 15:52 ` [PATCH 13/18] media: microchip-isc: Store histogram data of all channels Balamanikandan Gunasundar
2025-10-09 15:52 ` [PATCH 14/18] media: microchip-isc: fix histogram state initialization order Balamanikandan Gunasundar
2025-10-09 15:52 ` [PATCH 15/18] media: microchip-isc: decouple histogram cycling from AWB mode Balamanikandan Gunasundar
2025-10-09 15:52 ` [PATCH 16/18] media: microchip-isc: enable userspace histogram statistics export Balamanikandan Gunasundar
2025-10-09 15:52 ` [PATCH 17/18] media: videodev2.h, v4l2-ioctl: Add microchip statistics format Balamanikandan Gunasundar
2025-11-10  8:49   ` Hans Verkuil
2025-10-09 15:52 ` [PATCH 18/18] media: microchip-isc: expose color correction registers as v4l2 controls Balamanikandan Gunasundar
2025-10-09 20:11 ` [PATCH 00/18] media: microchip-isc: Color correction and histogram stats Eugen Hristev
2025-10-10  8:21   ` Kieran Bingham
2025-10-10  8:27     ` Laurent Pinchart
2025-10-15  6:05     ` Balamanikandan.Gunasundar
2025-10-15  6:45       ` Balamanikandan.Gunasundar
2025-10-15  6:33     ` Balamanikandan.Gunasundar [this message]
2025-10-15  5:26   ` Balamanikandan.Gunasundar
2025-11-10  9:01 ` Hans Verkuil
2025-11-10  9:26 ` Hans Verkuil

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=54d623e2-f883-4113-9b89-be34a556e708@microchip.com \
    --to=balamanikandan.gunasundar@microchip.com \
    --cc=3chas3@gmail.com \
    --cc=Balakrishnan.S@microchip.com \
    --cc=Nicolas.Ferre@microchip.com \
    --cc=alexandre.belloni@bootlin.com \
    --cc=claudiu.beznea@tuxon.dev \
    --cc=dan.scally+renesas@ideasonboard.com \
    --cc=eugen.hristev@linaro.org \
    --cc=hverkuil@kernel.org \
    --cc=jacopo.mondi@ideasonboard.com \
    --cc=kieran.bingham@ideasonboard.com \
    --cc=laurent.pinchart+renesas@ideasonboard.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-atm-general@lists.sourceforge.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=mchehab@kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=ribalda@chromium.org \
    --cc=tomi.valkeinen@ideasonboard.com \
    /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