| From 5d8712e92b59f2a090a22ae3fdcf5b84ba5400e6 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Fri, 17 Oct 2025 09:56:24 +0800 |
| Subject: firmware: imx: scu-irq: fix OF node leak in |
| |
| From: Peng Fan <peng.fan@nxp.com> |
| |
| [ Upstream commit ee67247843a2b62d1473cfa4df300e69b5190ccf ] |
| |
| imx_scu_enable_general_irq_channel() calls of_parse_phandle_with_args(), |
| but does not release the OF node reference. Add a of_node_put() call |
| to release the reference. |
| |
| Fixes: 851826c7566e ("firmware: imx: enable imx scu general irq function") |
| Reviewed-by: Frank Li <Frank.Li@nxp.com> |
| Signed-off-by: Peng Fan <peng.fan@nxp.com> |
| Signed-off-by: Shawn Guo <shawnguo@kernel.org> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/firmware/imx/imx-scu-irq.c | 4 +++- |
| 1 file changed, 3 insertions(+), 1 deletion(-) |
| |
| diff --git a/drivers/firmware/imx/imx-scu-irq.c b/drivers/firmware/imx/imx-scu-irq.c |
| index d9dcc20945c6a..32b1ca4e10508 100644 |
| --- a/drivers/firmware/imx/imx-scu-irq.c |
| +++ b/drivers/firmware/imx/imx-scu-irq.c |
| @@ -160,8 +160,10 @@ int imx_scu_enable_general_irq_channel(struct device *dev) |
| INIT_WORK(&imx_sc_irq_work, imx_scu_irq_work_handler); |
| |
| if (!of_parse_phandle_with_args(dev->of_node, "mboxes", |
| - "#mbox-cells", 0, &spec)) |
| + "#mbox-cells", 0, &spec)) { |
| i = of_alias_get_id(spec.np, "mu"); |
| + of_node_put(spec.np); |
| + } |
| |
| /* use mu1 as general mu irq channel if failed */ |
| if (i < 0) |
| -- |
| 2.51.0 |
| |