From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
To: "CK Hu (胡俊光)" <ck.hu@mediatek.com>
Cc: "sumit.semwal@linaro.org" <sumit.semwal@linaro.org>,
"christian.koenig@amd.com" <christian.koenig@amd.com>,
"mchehab@kernel.org" <mchehab@kernel.org>,
"conor+dt@kernel.org" <conor+dt@kernel.org>,
"robh@kernel.org" <robh@kernel.org>,
"matthias.bgg@gmail.com" <matthias.bgg@gmail.com>,
"krzk+dt@kernel.org" <krzk+dt@kernel.org>,
"AngeloGioacchino Del Regno"
<angelogioacchino.delregno@collabora.com>,
"Shu-hsiang Yang (楊舒翔)" <Shu-hsiang.Yang@mediatek.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"linux-mediatek@lists.infradead.org"
<linux-mediatek@lists.infradead.org>,
"yunkec@chromium.org" <yunkec@chromium.org>,
"linaro-mm-sig@lists.linaro.org" <linaro-mm-sig@lists.linaro.org>,
"linux-media@vger.kernel.org" <linux-media@vger.kernel.org>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
"Yaya Chang (張雅清)" <Yaya.Chang@mediatek.com>,
Project_Global_Chrome_Upstream_Group
<Project_Global_Chrome_Upstream_Group@mediatek.com>,
"dri-devel@lists.freedesktop.org"
<dri-devel@lists.freedesktop.org>,
"Teddy Chen (陳乾元)" <Teddy.Chen@mediatek.com>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>,
"hidenorik@chromium.org" <hidenorik@chromium.org>,
"Shun-Yi Wang (王順億)" <Shun-Yi.Wang@mediatek.com>
Subject: Re: [PATCH v1 10/10] uapi: linux: add mediatek isp_7x camsys user api
Date: Mon, 18 Nov 2024 11:58:50 +0200 [thread overview]
Message-ID: <20241118095850.GA30268@pendragon.ideasonboard.com> (raw)
In-Reply-To: <20241106130437.GA16791@pendragon.ideasonboard.com>
On Wed, Nov 06, 2024 at 03:04:37PM +0200, Laurent Pinchart wrote:
> On Mon, Oct 14, 2024 at 05:56:40AM +0000, CK Hu (胡俊光) wrote:
> > Hi, Shu-hsiang:
> >
> > On Wed, 2024-10-09 at 19:15 +0800, Shu-hsiang Yang wrote:
> > > Add UAPI for MediaTek ISP platform, providing user-space
> > > interfaces for the new camsys driver.
> > >
> > > Signed-off-by: Shu-hsiang Yang <Shu-hsiang.Yang@mediatek.com>
> > > ---
> >
> > [snip]
> >
> > > +
> > > +/* MTK ISP camsys controls */
> > > +#define V4L2_CID_MTK_CAM_USED_ENGINE_LIMIT (V4L2_CID_USER_MTK_CAM_BASE + 1)
> > > +#define V4L2_CID_MTK_CAM_BIN_LIMIT (V4L2_CID_USER_MTK_CAM_BASE + 2)
> > > +#define V4L2_CID_MTK_CAM_FRZ_LIMIT (V4L2_CID_USER_MTK_CAM_BASE + 3)
> > > +#define V4L2_CID_MTK_CAM_RESOURCE_PLAN_POLICY (V4L2_CID_USER_MTK_CAM_BASE + 4)
> > > +#define V4L2_CID_MTK_CAM_USED_ENGINE (V4L2_CID_USER_MTK_CAM_BASE + 5)
> > > +#define V4L2_CID_MTK_CAM_BIN (V4L2_CID_USER_MTK_CAM_BASE + 6)
> > > +#define V4L2_CID_MTK_CAM_FRZ (V4L2_CID_USER_MTK_CAM_BASE + 7)
> > > +#define V4L2_CID_MTK_CAM_USED_ENGINE_TRY (V4L2_CID_USER_MTK_CAM_BASE + 8)
> > > +#define V4L2_CID_MTK_CAM_BIN_TRY (V4L2_CID_USER_MTK_CAM_BASE + 9)
> > > +#define V4L2_CID_MTK_CAM_FRZ_TRY (V4L2_CID_USER_MTK_CAM_BASE + 10)
> > > +#define V4L2_CID_MTK_CAM_PIXEL_RATE (V4L2_CID_USER_MTK_CAM_BASE + 11)
> > > +#define V4L2_CID_MTK_CAM_FEATURE (V4L2_CID_USER_MTK_CAM_BASE + 12)
> > > +#define V4L2_CID_MTK_CAM_SYNC_ID (V4L2_CID_USER_MTK_CAM_BASE + 13)
> > > +#define V4L2_CID_MTK_CAM_RAW_PATH_SELECT (V4L2_CID_USER_MTK_CAM_BASE + 14)
> > > +#define V4L2_CID_MTK_CAM_HSF_EN (V4L2_CID_USER_MTK_CAM_BASE + 15)
> > > +#define V4L2_CID_MTK_CAM_PDE_INFO (V4L2_CID_USER_MTK_CAM_BASE + 16)
> > > +#define V4L2_CID_MTK_CAM_MSTREAM_EXPOSURE (V4L2_CID_USER_MTK_CAM_BASE + 17)
> > > +#define V4L2_CID_MTK_CAM_RAW_RESOURCE_CALC (V4L2_CID_USER_MTK_CAM_BASE + 18)
> > > +#define V4L2_CID_MTK_CAM_TG_FLASH_CFG (V4L2_CID_USER_MTK_CAM_BASE + 19)
> > > +#define V4L2_CID_MTK_CAM_RAW_RESOURCE_UPDATE (V4L2_CID_USER_MTK_CAM_BASE + 20)
> > > +#define V4L2_CID_MTK_CAM_CAMSYS_HW_MODE (V4L2_CID_USER_MTK_CAM_BASE + 21)
> > > +
> >
> > Please give introduction of how to use these user space interface.
>
> I'm very, very *not* thrilled by all this. It looks like a big pile of
> hacks really. Every single parameter used by those controls needs to be
> clearly documented, including explaining how they are used, in order for
> us to review the API. I suspect that many of the parameters should
> instead be handled through the ISP parameters buffers, or be controlled
> from standard V4L2 APIs.
While on the topic of documentation, we also need a high-level
architecture document. This patch series adds 30000 lines of code, it's
very hard for reviewers to understand the architecture of the driver
just by looking at the code. At the very least, a high-level description
of the hardware (at least from the view point of the interface the
firmware exposes) is needed.
--
Regards,
Laurent Pinchart
next prev parent reply other threads:[~2024-11-18 10:00 UTC|newest]
Thread overview: 88+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-09 11:15 [PATCH v1 00/10] Add MediaTek ISP7 camera system driver Shu-hsiang Yang
2024-10-09 11:15 ` [PATCH v1 01/10] dt-bindings: media: mediatek: add camsys device Shu-hsiang Yang
2024-10-09 21:00 ` Rob Herring
2024-10-11 1:29 ` CK Hu (胡俊光)
2024-10-11 3:20 ` CK Hu (胡俊光)
2024-10-22 5:36 ` Krzysztof Kozlowski
2024-11-11 1:37 ` CK Hu (胡俊光)
2024-11-11 2:38 ` CK Hu (胡俊光)
2024-10-09 11:15 ` [PATCH v1 03/10] media: platform: mediatek: add isp_7x seninf unit Shu-hsiang Yang
2024-10-14 9:25 ` CK Hu (胡俊光)
2024-10-18 8:54 ` CK Hu (胡俊光)
2024-10-28 1:27 ` CK Hu (胡俊光)
2024-10-28 1:30 ` CK Hu (胡俊光)
2024-11-06 5:58 ` CK Hu (胡俊光)
2024-11-18 9:23 ` CK Hu (胡俊光)
2024-11-18 9:28 ` CK Hu (胡俊光)
2024-11-19 1:46 ` CK Hu (胡俊光)
2024-11-19 1:50 ` CK Hu (胡俊光)
2024-11-20 6:35 ` CK Hu (胡俊光)
2024-10-09 11:15 ` [PATCH v1 07/10] media: platform: mediatek: add isp_7x video ops Shu-hsiang Yang
2024-11-04 3:24 ` CK Hu (胡俊光)
2024-11-20 1:05 ` CK Hu (胡俊光)
2024-10-09 11:15 ` [PATCH v1 09/10] media: platform: mediatek: add isp_7x build config Shu-hsiang Yang
2024-10-16 1:56 ` CK Hu (胡俊光)
2024-10-09 11:15 ` [PATCH v1 10/10] uapi: linux: add mediatek isp_7x camsys user api Shu-hsiang Yang
2024-10-11 7:47 ` CK Hu (胡俊光)
2024-10-14 5:56 ` CK Hu (胡俊光)
2024-11-06 13:04 ` Laurent Pinchart
2024-11-18 9:58 ` Laurent Pinchart [this message]
2024-11-05 5:36 ` CK Hu (胡俊光)
[not found] ` <20241009111551.27052-3-Shu-hsiang.Yang@mediatek.com>
2024-10-09 12:50 ` [PATCH v1 02/10] media: platform: mediatek: add seninf controller AngeloGioacchino Del Regno
2024-10-11 1:36 ` CK Hu (胡俊光)
2024-10-11 2:38 ` CK Hu (胡俊光)
2024-10-22 4:16 ` CK Hu (胡俊光)
2024-10-28 1:55 ` CK Hu (胡俊光)
[not found] ` <20241009111551.27052-5-Shu-hsiang.Yang@mediatek.com>
2024-10-10 12:49 ` [PATCH v1 04/10] media: platform: mediatek: add isp_7x cam-raw unit AngeloGioacchino Del Regno
2024-10-11 2:23 ` CK Hu (胡俊光)
2024-10-11 2:55 ` CK Hu (胡俊光)
2024-10-11 5:40 ` CK Hu (胡俊光)
2024-10-11 6:03 ` CK Hu (胡俊光)
2024-10-22 5:43 ` Krzysztof Kozlowski
2024-10-22 6:14 ` CK Hu (胡俊光)
2024-10-22 6:30 ` CK Hu (胡俊光)
2024-10-23 10:05 ` CK Hu (胡俊光)
2024-10-25 6:30 ` CK Hu (胡俊光)
2024-10-28 6:48 ` CK Hu (胡俊光)
2024-11-04 2:35 ` CK Hu (胡俊光)
2024-11-04 8:04 ` CK Hu (胡俊光)
2024-11-05 3:01 ` CK Hu (胡俊光)
2024-10-15 18:40 ` [PATCH v1 00/10] Add MediaTek ISP7 camera system driver Nicolas Dufresne
[not found] ` <20241009111551.27052-9-Shu-hsiang.Yang@mediatek.com>
2024-10-16 1:35 ` [PATCH v1 08/10] media: platform: mediatek: add isp_7x state ctrl CK Hu (胡俊光)
2024-10-28 5:20 ` CK Hu (胡俊光)
2024-10-28 5:25 ` CK Hu (胡俊光)
2024-10-28 5:34 ` CK Hu (胡俊光)
[not found] ` <20241009111551.27052-6-Shu-hsiang.Yang@mediatek.com>
2024-10-14 9:40 ` [PATCH v1 05/10] media: platform: mediatek: add isp_7x camsys unit CK Hu (胡俊光)
2024-10-16 3:43 ` CK Hu (胡俊光)
2024-11-19 5:56 ` CK Hu (胡俊光)
2024-10-22 5:44 ` Krzysztof Kozlowski
2024-10-22 6:48 ` CK Hu (胡俊光)
2024-10-29 2:35 ` CK Hu (胡俊光)
2024-10-29 6:47 ` CK Hu (胡俊光)
2024-10-29 7:03 ` CK Hu (胡俊光)
2024-10-30 3:20 ` CK Hu (胡俊光)
2024-10-30 5:43 ` CK Hu (胡俊光)
2024-11-04 6:08 ` CK Hu (胡俊光)
2024-11-04 13:06 ` [PATCH " Markus Elfring
2024-11-06 7:52 ` [PATCH v1 " CK Hu (胡俊光)
2024-11-13 7:24 ` CK Hu (胡俊光)
2024-11-20 6:10 ` CK Hu (胡俊光)
2024-11-18 10:00 ` [PATCH v1 00/10] Add MediaTek ISP7 camera system driver Laurent Pinchart
[not found] ` <20241009111551.27052-7-Shu-hsiang.Yang@mediatek.com>
2024-10-14 5:21 ` [PATCH v1 06/10] media: platform: mediatek: add isp_7x utility CK Hu (胡俊光)
2024-10-22 5:30 ` CK Hu (胡俊光)
2024-10-28 3:46 ` CK Hu (胡俊光)
2024-10-29 5:35 ` CK Hu (胡俊光)
2024-11-04 2:26 ` CK Hu (胡俊光)
2024-11-05 3:33 ` CK Hu (胡俊光)
2024-11-05 8:43 ` CK Hu (胡俊光)
2024-11-05 9:14 ` CK Hu (胡俊光)
2024-11-06 3:35 ` CK Hu (胡俊光)
2024-11-06 3:41 ` CK Hu (胡俊光)
2024-11-06 3:48 ` CK Hu (胡俊光)
2024-11-06 7:01 ` CK Hu (胡俊光)
2024-11-19 8:23 ` CK Hu (胡俊光)
2024-11-19 8:29 ` CK Hu (胡俊光)
2024-11-19 9:41 ` CK Hu (胡俊光)
2024-11-20 2:21 ` CK Hu (胡俊光)
2024-11-20 6:03 ` CK Hu (胡俊光)
2024-11-20 5:21 ` CK Hu (胡俊光)
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=20241118095850.GA30268@pendragon.ideasonboard.com \
--to=laurent.pinchart@ideasonboard.com \
--cc=Project_Global_Chrome_Upstream_Group@mediatek.com \
--cc=Shu-hsiang.Yang@mediatek.com \
--cc=Shun-Yi.Wang@mediatek.com \
--cc=Teddy.Chen@mediatek.com \
--cc=Yaya.Chang@mediatek.com \
--cc=angelogioacchino.delregno@collabora.com \
--cc=christian.koenig@amd.com \
--cc=ck.hu@mediatek.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=hidenorik@chromium.org \
--cc=krzk+dt@kernel.org \
--cc=linaro-mm-sig@lists.linaro.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=robh@kernel.org \
--cc=sumit.semwal@linaro.org \
--cc=yunkec@chromium.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;
as well as URLs for NNTP newsgroup(s).