public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
To: "CK Hu (胡俊光)" <ck.hu@mediatek.com>
Cc: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-mediatek@lists.infradead.org"
	<linux-mediatek@lists.infradead.org>,
	"linux-media@vger.kernel.org" <linux-media@vger.kernel.org>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	"paul.elder@ideasonboard.com" <paul.elder@ideasonboard.com>,
	"mchehab@kernel.org" <mchehab@kernel.org>,
	"conor+dt@kernel.org" <conor+dt@kernel.org>,
	"robh@kernel.org" <robh@kernel.org>,
	"Andy Hsieh (謝智皓)" <Andy.Hsieh@mediatek.com>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>,
	"Julien Stephan" <jstephan@baylibre.com>,
	"matthias.bgg@gmail.com" <matthias.bgg@gmail.com>,
	"krzk+dt@kernel.org" <krzk+dt@kernel.org>,
	"fsylvestre@baylibre.com" <fsylvestre@baylibre.com>,
	"AngeloGioacchino Del Regno"
	<angelogioacchino.delregno@collabora.com>
Subject: Re: [PATCH v7 4/5] media: platform: mediatek: isp: add mediatek ISP3.0 camsv
Date: Mon, 25 Nov 2024 12:22:50 +0200	[thread overview]
Message-ID: <20241125102250.GO19381@pendragon.ideasonboard.com> (raw)
In-Reply-To: <25f70693c81eb86c832378fee89792f6754b7ca0.camel@mediatek.com>

On Mon, Nov 25, 2024 at 09:56:54AM +0000, CK Hu (胡俊光) wrote:
> On Mon, 2024-11-25 at 11:39 +0200, Laurent Pinchart wrote:
> > On Mon, Nov 25, 2024 at 06:59:59AM +0000, CK Hu (胡俊光) wrote:
> > > On Thu, 2024-11-21 at 09:53 +0100, Julien Stephan wrote:
> > > >
> > > > From: Phi-bang Nguyen <pnguyen@baylibre.com>
> > > >
> > > > This driver provides a path to bypass the SoC ISP so that image data
> > > > coming from the SENINF can go directly into memory without any image
> > > > processing. This allows the use of an external ISP.
> > > >
> > > > Signed-off-by: Phi-bang Nguyen <pnguyen@baylibre.com>
> > > > Signed-off-by: Florian Sylvestre <fsylvestre@baylibre.com>
> > > > [Paul Elder fix irq locking]
> > > > Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
> > > > Co-developed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> > > > Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> > > > Co-developed-by: Julien Stephan <jstephan@baylibre.com>
> > > > Signed-off-by: Julien Stephan <jstephan@baylibre.com>
> > > > ---
> > >
> > > [snip]
> > >
> > > > +static const struct mtk_cam_conf camsv30_conf = {
> > > > +       .tg_sen_mode = 0x00010002U, /* TIME_STP_EN = 1. DBL_DATA_BUS = 1 */
> > > > +       .module_en = 0x40000001U, /* enable double buffer and TG */
> > > > +       .imgo_con = 0x80000080U, /* DMA FIFO depth and burst */
> > > > +       .imgo_con2 = 0x00020002U, /* DMA priority */
> > >
> > > Now support only one SoC, so it's not necessary make these SoC variable.
> > > They could be constant symbol now.
> >
> > This I would keep as a mtk_cam_conf structure instance, as I think it
> > makes it clear what we consider to be model-specific without hindering
> > readability. I don't have a very strong opinion though.
> 
> If this is a configuration table, I would like it to be
> 
> {
> .time_stp_en = true;
> .dbl_data_bus = 1;
> .double_buffer_en = true;
> .tg = 0x4;
> ...
> }

I like that too, it's more readable than raw register values.

> If next SoC has only one parameter is different, we duplicate all
> other parameter?

That's what we usually do when the amount of parameters is not too
large. When it becomes larger, we sometimes split the configuration data
in multiple chunks. For instance,

static const char * const family_a_clks[] = {
	"core",
	"io",
};

static sont char * const family_b_clks[] = {
	"main",
	"ram",
	"bus",
};

static const foo_dev_info soc_1_info = {
	.has_time_machine = false,
	.clks = family_a_clks,
	.num_clks = ARRAY_SIZE(family_a_clks),
};

static const foo_dev_info soc_2_info = {
	.has_time_machine = false,
	.clks = family_b_clks,
	.num_clks = ARRAY_SIZE(family_b_clks),
};

static const foo_dev_info soc_3_info = {
	.has_time_machine = true,
	.clks = family_b_clks,
	.num_clks = ARRAY_SIZE(family_b_clks),
};

There's no clear rule, it's on a case-by-case basis.

> > > > +};
> > > > +

-- 
Regards,

Laurent Pinchart

  reply	other threads:[~2024-11-25 10:23 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-11-21  8:53 [PATCH v7 0/5] Add Mediatek ISP3.0 Julien Stephan
2024-11-21  8:53 ` [PATCH v7 1/5] dt-bindings: media: add mediatek ISP3.0 sensor interface Julien Stephan
2024-11-21  8:53 ` [PATCH v7 2/5] dt-bindings: media: add mediatek ISP3.0 camsv Julien Stephan
2024-11-25 11:24   ` Laurent Pinchart
2024-11-21  8:53 ` [PATCH v7 3/5] media: platform: mediatek: isp: add mediatek ISP3.0 sensor interface Julien Stephan
2024-11-25 17:33   ` Laurent Pinchart
2024-11-25 19:45     ` Laurent Pinchart
2025-01-22 14:04     ` Julien Stephan
2024-11-21  8:53 ` [PATCH v7 4/5] media: platform: mediatek: isp: add mediatek ISP3.0 camsv Julien Stephan
2024-11-22  7:54   ` CK Hu (胡俊光)
2024-11-22  9:16     ` Julien Stephan
2024-11-22  9:28       ` CK Hu (胡俊光)
2024-11-24  6:11         ` Laurent Pinchart
2024-11-25  8:26         ` CK Hu (胡俊光)
2024-11-22  8:41   ` CK Hu (胡俊光)
2024-11-22  9:25     ` Julien Stephan
2024-11-22  9:49       ` CK Hu (胡俊光)
2024-11-22  9:50         ` Julien Stephan
2024-11-22 10:01           ` CK Hu (胡俊光)
2024-11-22 12:05             ` Julien Stephan
2024-11-22  9:18   ` CK Hu (胡俊光)
2024-11-22  9:44     ` Julien Stephan
2024-11-25  5:54       ` CK Hu (胡俊光)
2024-11-25  6:05   ` CK Hu (胡俊光)
2024-11-25  6:34   ` CK Hu (胡俊光)
2024-11-25  6:59   ` CK Hu (胡俊光)
2024-11-25  9:39     ` Laurent Pinchart
2024-11-25  9:56       ` CK Hu (胡俊光)
2024-11-25 10:22         ` Laurent Pinchart [this message]
2024-11-26  1:08           ` CK Hu (胡俊光)
2024-11-25  8:14   ` CK Hu (胡俊光)
2024-11-25 14:40     ` Julien Stephan
2024-11-25 17:36       ` Laurent Pinchart
2024-11-25  9:30   ` CK Hu (胡俊光)
2024-11-25 20:33   ` Laurent Pinchart
2024-11-26  2:07   ` CK Hu (胡俊光)
2024-11-26  8:43     ` Laurent Pinchart
2024-11-26  3:40   ` CK Hu (胡俊光)
2024-11-21  8:53 ` [PATCH v7 5/5] arm64: dts: mediatek: mt8365: Add support for camera Julien Stephan

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=20241125102250.GO19381@pendragon.ideasonboard.com \
    --to=laurent.pinchart@ideasonboard.com \
    --cc=Andy.Hsieh@mediatek.com \
    --cc=angelogioacchino.delregno@collabora.com \
    --cc=ck.hu@mediatek.com \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=fsylvestre@baylibre.com \
    --cc=jstephan@baylibre.com \
    --cc=krzk+dt@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=linux-mediatek@lists.infradead.org \
    --cc=matthias.bgg@gmail.com \
    --cc=mchehab@kernel.org \
    --cc=paul.elder@ideasonboard.com \
    --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