From: "Inbaraj E" <inbaraj.e@samsung.com>
To: "'Krzysztof Kozlowski'" <krzk@kernel.org>,
<mturquette@baylibre.com>, <sboyd@kernel.org>, <robh@kernel.org>,
<krzk+dt@kernel.org>, <conor+dt@kernel.org>,
<s.nawrocki@samsung.com>, <s.hauer@pengutronix.de>,
<shawnguo@kernel.org>, <cw00.choi@samsung.com>,
<rmfrfs@gmail.com>, <laurent.pinchart@ideasonboard.com>,
<martink@posteo.de>, <mchehab@kernel.org>, <linux-fsd@tesla.com>,
<will@kernel.org>, <catalin.marinas@arm.com>,
<pankaj.dubey@samsung.com>, <shradha.t@samsung.com>,
<ravi.patel@samsung.com>
Cc: <linux-clk@vger.kernel.org>, <devicetree@vger.kernel.org>,
<linux-kernel@vger.kernel.org>, <alim.akhtar@samsung.com>,
<linux-samsung-soc@vger.kernel.org>, <kernel@puri.sm>,
<kernel@pengutronix.de>, <festevam@gmail.com>,
<linux-media@vger.kernel.org>, <imx@lists.linux.dev>,
<linux-arm-kernel@lists.infradead.org>
Subject: RE: [PATCH v2 12/12] media: fsd-csis: Add support for FSD CSIS DMA
Date: Sat, 23 Aug 2025 17:29:32 +0530 [thread overview]
Message-ID: <00e401dc1425$65ea9490$31bfbdb0$@samsung.com> (raw)
In-Reply-To:
> -----Original Message-----
> From: Inbaraj E <inbaraj.e@samsung.com>
> Sent: 23 August 2025 17:20
> To: 'Krzysztof Kozlowski' <krzk@kernel.org>; 'mturquette@baylibre.com'
> <mturquette@baylibre.com>; 'sboyd@kernel.org' <sboyd@kernel.org>;
> 'robh@kernel.org' <robh@kernel.org>; 'krzk+dt@kernel.org'
> <krzk+dt@kernel.org>; 'conor+dt@kernel.org' <conor+dt@kernel.org>;
> 's.nawrocki@samsung.com' <s.nawrocki@samsung.com>;
> 's.hauer@pengutronix.de' <s.hauer@pengutronix.de>;
> 'shawnguo@kernel.org' <shawnguo@kernel.org>;
> 'cw00.choi@samsung.com' <cw00.choi@samsung.com>; 'rmfrfs@gmail.com'
> <rmfrfs@gmail.com>; 'laurent.pinchart@ideasonboard.com'
> <laurent.pinchart@ideasonboard.com>; 'martink@posteo.de'
> <martink@posteo.de>; 'mchehab@kernel.org' <mchehab@kernel.org>;
> 'linux-fsd@tesla.com' <linux-fsd@tesla.com>; 'will@kernel.org'
> <will@kernel.org>; 'catalin.marinas@arm.com' <catalin.marinas@arm.com>;
> 'pankaj.dubey@samsung.com' <pankaj.dubey@samsung.com>;
> 'shradha.t@samsung.com' <shradha.t@samsung.com>;
> 'ravi.patel@samsung.com' <ravi.patel@samsung.com>
> Cc: 'linux-clk@vger.kernel.org' <linux-clk@vger.kernel.org>;
> 'devicetree@vger.kernel.org' <devicetree@vger.kernel.org>; 'linux-
> kernel@vger.kernel.org' <linux-kernel@vger.kernel.org>;
> 'alim.akhtar@samsung.com' <alim.akhtar@samsung.com>; 'linux-samsung-
> soc@vger.kernel.org' <linux-samsung-soc@vger.kernel.org>;
> 'kernel@puri.sm' <kernel@puri.sm>; 'kernel@pengutronix.de'
> <kernel@pengutronix.de>; 'festevam@gmail.com' <festevam@gmail.com>;
> 'linux-media@vger.kernel.org' <linux-media@vger.kernel.org>;
> 'imx@lists.linux.dev' <imx@lists.linux.dev>; 'linux-arm-
> kernel@lists.infradead.org' <linux-arm-kernel@lists.infradead.org>
> Subject: RE: [PATCH v2 12/12] media: fsd-csis: Add support for FSD CSIS DMA
>
> Hi Krzysztof,
>
> Thanks for the review.
>
> >
> > On 14/08/2025 16:09, Inbaraj E wrote:
> > > FSD CSIS IP bundles DMA engine for receiving frames from MIPI-CSI2 bus.
> > > Add support internal DMA controller to capture the frames.
> > >
> > > Signed-off-by: Inbaraj E <inbaraj.e@samsung.com>
> >
> > I commented on order of patches and got more surprise - final driver
> > patch after DTS defconfig. It's really wrong order.
>
> I'll fix in next patchset.
>
> > > --- a/MAINTAINERS
> > > +++ b/MAINTAINERS
> > > @@ -3334,6 +3334,14 @@ S: Maintained
> > > F: Documentation/devicetree/bindings/media/samsung,s5p-mfc.yaml
> > > F: drivers/media/platform/samsung/s5p-mfc/
> > >
> > > +ARM/SAMSUNG FSD BRIDGE DRIVER
> >
> > TESLA FSD BRIDGE DRIVER
> > (because ARM/foo are only SoC maintainer entries)
> >
>
> I'll change in next patchset.
>
> > > +M: Inbaraj E <inbaraj.e@samsung.com>
> > > +L: linux-arm-kernel@lists.infradead.org (moderated for non-
> > subscribers)
> >
> > Replace above list with samsung-soc list.
> >
>
> I'll change in next patchset.
>
> > > +L: linux-media@vger.kernel.org
> > > +S: Maintained
> > > source "drivers/media/platform/samsung/exynos-gsc/Kconfig"
> > > source "drivers/media/platform/samsung/exynos4-is/Kconfig"
> > > +
> > > +config VIDEO_FSD_CSIS
> >
> > VIDEO_TSLA_FSD_CSIS
>
> I'll change in next patchset.
>
> >
> > > + tristate "FSD SoC MIPI-CSI2 media controller driver"
> > > + depends on VIDEO_DEV && VIDEO_V4L2_SUBDEV_API
> > > + depends on HAS_DMA
> > > + depends on OF
> >
> > OF seems unneeded dependency
> >
> > But you miss ARCH_TESLA_FSD instead.
> >
> >
>
> I'll remove OF and add ARCH_TESLA_FSD in next patchset.
>
> > > + select VIDEOBUF2_DMA_CONTIG
> > > + select V4L2_FWNODE
> > > + help
> > > + This is a video4linux2 driver for FSD SoC MIPI-CSI2 Rx.
> >
> > Tesla FSD
>
> I'll add in next patchset.
>
> > > new file mode 100644
> > > index 000000000000..74f46038d506
> > > --- /dev/null
> > > +++ b/drivers/media/platform/samsung/fsd-csis/fsd-csis.c
> > > @@ -0,0 +1,1709 @@
> > > +// SPDX-License-Identifier: GPL-2.0-only
> > > +/*
> > > + * Copyright (c) 2022-2025 Samsung Electronics Co., Ltd.
> > > + * https://www.samsung.com
> > > + *
> > > + * FSD CSIS V4L2 Capture driver for FSD SoC.
> >
> > "Tesla FSD" in both places
>
> I'll change in next patchset.
>
> >
> > > + */
> > > +
> > > +#include <linux/clk.h>
> > > +#include <linux/pm_runtime.h>
> > > +#include <linux/regmap.h>
> > > +#include <media/v4l2-device.h>
> > > +#include <media/v4l2-ioctl.h>
> > > +#include <media/videobuf2-dma-contig.h> #include <media/v4l2-mc.h>
> >
> > How can you depend on OF if there is no single OF header?
>
> > > +
> > > + ret = devm_request_irq(dev, irq,
> > > + csis_irq_handler, IRQF_SHARED, pdev->name, csis);
> >
> > Please align these (checkpatch --strict)
>
> I'll fix in next patchset
>
> >
> > > +
> > > + ret = fsd_csis_clk_get(csis);
> > > + if (ret < 0)
> > > + return ret;
> > > +
> > > + pm_runtime_enable(dev);
> > > + if (!pm_runtime_enabled(dev)) {
> >
> > That's odd code. Why?
> >
> > > + ret = fsd_csis_runtime_resume(dev);
> >
> > Even more questions why?
>
Sorry I made typo here
If CONFIG_PM is disabled, the clocks are enabled manually in the driver
through fsd_csis_runtime_resume API.
If CONFIG_PM is enabled, the clocks are managed through the PM runtime
framework.
> Can you please help me understand what wrong here?
>
> >
> > > + if (ret < 0)
> > > + return ret;
> > > + }
> > > +
> > > + platform_set_drvdata(pdev, csis);
> > > +
> > > + ret = fsd_csis_enable_pll(csis);
> > > + if (ret)
> > > + return ret;
> > > +
> > > + ret = fsd_csis_media_init(csis);
> > > + if (ret)
> > > + return ret;
> >
> > I think you miss clean up of csis->pll completely. Just use
> > devm_clk_get_enabled and convert everything here to devm.
> >
> >
>
> I'll fix in next patchset.
>
> > > +
> > > + ret = fsd_csis_async_register(csis);
> > > + if (ret)
> > > + goto err_media_cleanup;
> > > +
> > > + return 0;
> > > +
> > > +err_media_cleanup:
> > > + fsd_csis_media_cleanup(csis);
> >
> > Also this...
> >
>
> if fsd_csis_media_init fails, the cleanup is handled internally.
> Here, cleanup is used only for fsd_csis_async_register failure.
>
> can you please help me understand what is wrong here?
>
> > > +
> > > + return ret;
> > > +}
> > > +
> > > +static void fsd_csis_remove(struct platform_device *pdev) {
> > > + struct fsd_csis *csis = platform_get_drvdata(pdev);
> > > +
> > > +static struct platform_driver fsd_csis_driver = {
> > > + .probe = fsd_csis_probe,
> > > + .remove = fsd_csis_remove,
> > > + .driver = {
> > > + .name = FSD_CSIS_MODULE_NAME,
> > > + .of_match_table = of_match_ptr(fsd_csis_of_match),
> >
> > Drop of_match_ptr, it is not really correct.
>
> Will drop in next patchset.
>
> Regards,
> Inbaraj E
next prev parent reply other threads:[~2025-08-23 11:59 UTC|newest]
Thread overview: 54+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CGME20250814140956epcas5p480aa24441933523484da5c241a201d3c@epcas5p4.samsung.com>
2025-08-14 14:09 ` [PATCH v2 00/12] Add FSD CSI support Inbaraj E
2025-08-14 14:09 ` [PATCH v2 01/12] dt-bindings: clock: Add CAM_CSI clock macro for FSD Inbaraj E
2025-08-18 8:47 ` (subset) " Krzysztof Kozlowski
2025-08-14 14:09 ` [PATCH v2 02/12] clk: samsung: fsd: Add clk id for PCLK and PLL in CAM_CSI block Inbaraj E
2025-08-18 8:47 ` (subset) " Krzysztof Kozlowski
2025-08-14 14:09 ` [PATCH v2 03/12] dt-bindings: media: nxp: Add support for FSD SoC Inbaraj E
2025-08-18 8:24 ` Krzysztof Kozlowski
2025-08-22 13:39 ` Inbaraj E
2025-08-22 13:50 ` Krzysztof Kozlowski
2025-08-22 14:00 ` Inbaraj E
2025-08-23 15:37 ` Krzysztof Kozlowski
2025-08-25 12:50 ` Inbaraj E
2025-08-14 14:09 ` [PATCH v2 04/12] arm64: dts: fsd: Add CSI nodes Inbaraj E
2025-08-18 8:26 ` Krzysztof Kozlowski
2025-08-22 13:57 ` Inbaraj E
2025-08-23 15:39 ` Krzysztof Kozlowski
2025-08-25 13:05 ` Inbaraj E
2025-08-26 8:36 ` Krzysztof Kozlowski
2025-08-26 10:08 ` Inbaraj E
2025-08-26 11:43 ` Laurent Pinchart
2025-08-14 14:09 ` [PATCH v2 05/12] media: imx-mipi-csis: Move clk to mipi_csis_info structure Inbaraj E
2025-08-18 9:21 ` Laurent Pinchart
2025-08-23 13:11 ` Inbaraj E
2025-08-14 14:09 ` [PATCH v2 06/12] media: imx-mipi-csis: Move irq flag and handler " Inbaraj E
2025-08-14 14:09 ` [PATCH v2 07/12] media: imx-mipi-csis: Add support to configure specific vc Inbaraj E
2025-08-18 9:33 ` Laurent Pinchart
2025-08-23 13:29 ` Inbaraj E
2025-08-14 14:09 ` [PATCH v2 08/12] media: imx-mipi-csis: Add support to dump all vc regs Inbaraj E
2025-08-18 9:30 ` Laurent Pinchart
2025-08-23 13:15 ` Inbaraj E
2025-08-14 14:09 ` [PATCH v2 09/12] media: imx-mipi-csis: Add support for FSD CSI Rx Inbaraj E
2025-08-14 14:09 ` [PATCH v2 10/12] dt-bindings: media: fsd: Document CSIS DMA controller Inbaraj E
2025-08-18 8:29 ` Krzysztof Kozlowski
2025-08-23 1:54 ` Inbaraj E
2025-08-18 8:45 ` Krzysztof Kozlowski
2025-08-23 2:39 ` Inbaraj E
2025-08-23 15:32 ` Krzysztof Kozlowski
2025-08-25 12:01 ` Inbaraj E
2025-08-25 12:25 ` Krzysztof Kozlowski
2025-08-24 21:15 ` Laurent Pinchart
2025-08-25 7:34 ` Krzysztof Kozlowski
2025-08-14 14:09 ` [PATCH v2 11/12] arm64: defconfig: Enable FSD CSIS DMA driver Inbaraj E
2025-08-18 8:32 ` Krzysztof Kozlowski
2025-08-23 2:05 ` Inbaraj E
2025-08-23 15:31 ` Krzysztof Kozlowski
2025-08-25 11:54 ` Inbaraj E
2025-08-14 14:09 ` [PATCH v2 12/12] media: fsd-csis: Add support for FSD CSIS DMA Inbaraj E
2025-08-18 8:49 ` Krzysztof Kozlowski
2025-08-23 11:49 ` Inbaraj E
2025-08-23 15:34 ` Krzysztof Kozlowski
2025-08-25 12:46 ` Inbaraj E
2025-08-23 11:59 ` Inbaraj E [this message]
2025-08-18 8:22 ` [PATCH v2 00/12] Add FSD CSI support Krzysztof Kozlowski
2025-08-22 13:16 ` Inbaraj E
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='00e401dc1425$65ea9490$31bfbdb0$@samsung.com' \
--to=inbaraj.e@samsung.com \
--cc=alim.akhtar@samsung.com \
--cc=catalin.marinas@arm.com \
--cc=conor+dt@kernel.org \
--cc=cw00.choi@samsung.com \
--cc=devicetree@vger.kernel.org \
--cc=festevam@gmail.com \
--cc=imx@lists.linux.dev \
--cc=kernel@pengutronix.de \
--cc=kernel@puri.sm \
--cc=krzk+dt@kernel.org \
--cc=krzk@kernel.org \
--cc=laurent.pinchart@ideasonboard.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-clk@vger.kernel.org \
--cc=linux-fsd@tesla.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-samsung-soc@vger.kernel.org \
--cc=martink@posteo.de \
--cc=mchehab@kernel.org \
--cc=mturquette@baylibre.com \
--cc=pankaj.dubey@samsung.com \
--cc=ravi.patel@samsung.com \
--cc=rmfrfs@gmail.com \
--cc=robh@kernel.org \
--cc=s.hauer@pengutronix.de \
--cc=s.nawrocki@samsung.com \
--cc=sboyd@kernel.org \
--cc=shawnguo@kernel.org \
--cc=shradha.t@samsung.com \
--cc=will@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.