[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250814140943.22531-7-inbaraj.e@samsung.com>
Date: Thu, 14 Aug 2025 19:39:37 +0530
From: Inbaraj E <inbaraj.e@...sung.com>
To: mturquette@...libre.com, sboyd@...nel.org, robh@...nel.org,
krzk+dt@...nel.org, conor+dt@...nel.org, krzk@...nel.org,
s.nawrocki@...sung.com, s.hauer@...gutronix.de, shawnguo@...nel.org,
cw00.choi@...sung.com, rmfrfs@...il.com, laurent.pinchart@...asonboard.com,
martink@...teo.de, mchehab@...nel.org, linux-fsd@...la.com, will@...nel.org,
catalin.marinas@....com, pankaj.dubey@...sung.com, shradha.t@...sung.com,
ravi.patel@...sung.com
Cc: linux-clk@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, alim.akhtar@...sung.com,
linux-samsung-soc@...r.kernel.org, kernel@...i.sm, kernel@...gutronix.de,
festevam@...il.com, linux-media@...r.kernel.org, imx@...ts.linux.dev,
linux-arm-kernel@...ts.infradead.org, Inbaraj E <inbaraj.e@...sung.com>
Subject: [PATCH v2 06/12] media: imx-mipi-csis: Move irq flag and handler to
mipi_csis_info structure
FSD CSI IP has only one IRQ line, shared between imx-mipi-csis and
fsd-csi-media drivers. To extend this driver for FSD SoC support,
move the IRQ flag and IRQ handler to the device data(structure
mipi_csis_info).
Signed-off-by: Inbaraj E <inbaraj.e@...sung.com>
---
drivers/media/platform/nxp/imx-mipi-csis.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/drivers/media/platform/nxp/imx-mipi-csis.c b/drivers/media/platform/nxp/imx-mipi-csis.c
index 4afa75734f05..a3e2c8ae332f 100644
--- a/drivers/media/platform/nxp/imx-mipi-csis.c
+++ b/drivers/media/platform/nxp/imx-mipi-csis.c
@@ -285,6 +285,8 @@ struct mipi_csis_info {
enum mipi_csis_version version;
unsigned int num_clocks;
const char *clk_names[MIPI_CSIS_MAX_CLOCKS];
+ unsigned int irq_flag;
+ irq_handler_t irq_handler;
};
struct mipi_csis_device {
@@ -1462,7 +1464,7 @@ static int mipi_csis_probe(struct platform_device *pdev)
mipi_csis_phy_reset(csis);
/* Now that the hardware is initialized, request the interrupt. */
- ret = devm_request_irq(dev, irq, mipi_csis_irq_handler, 0,
+ ret = devm_request_irq(dev, irq, csis->info->irq_handler, csis->info->irq_flag,
dev_name(dev), csis);
if (ret) {
dev_err(dev, "Interrupt request failed\n");
@@ -1536,6 +1538,8 @@ static const struct of_device_id mipi_csis_of_match[] = {
.version = MIPI_CSIS_V3_3,
.num_clocks = 3,
.clk_names = {"pclk", "wrap", "phy"},
+ .irq_flag = 0,
+ .irq_handler = mipi_csis_irq_handler,
},
}, {
.compatible = "fsl,imx8mm-mipi-csi2",
@@ -1543,6 +1547,8 @@ static const struct of_device_id mipi_csis_of_match[] = {
.version = MIPI_CSIS_V3_6_3,
.num_clocks = 4,
.clk_names = {"pclk", "wrap", "phy", "axi"},
+ .irq_flag = 0,
+ .irq_handler = mipi_csis_irq_handler,
},
},
{ /* sentinel */ },
--
2.49.0
Powered by blists - more mailing lists