Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e4875d6e authored by Tanmay Shah's avatar Tanmay Shah Committed by Greg Kroah-Hartman
Browse files

mailbox: zynqmp: Fix counts of child nodes



[ Upstream commit f72f805e72882c361e2a612c64a6e549f3da7152 ]

If child mailbox node status is disabled it causes
crash in interrupt handler. Fix this by assigning
only available child node during driver probe.

Fixes: 4981b82b ("mailbox: ZynqMP IPI mailbox controller")
Signed-off-by: default avatarTanmay Shah <tanmay.shah@amd.com>
Acked-by: default avatarMichal Simek <michal.simek@amd.com>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20230311012407.1292118-2-tanmay.shah@amd.com


Signed-off-by: default avatarMathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent ff0d64f5
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -634,7 +634,12 @@ static int zynqmp_ipi_probe(struct platform_device *pdev)
	struct zynqmp_ipi_mbox *mbox;
	int num_mboxes, ret = -EINVAL;

	num_mboxes = of_get_child_count(np);
	num_mboxes = of_get_available_child_count(np);
	if (num_mboxes == 0) {
		dev_err(dev, "mailbox nodes not available\n");
		return -EINVAL;
	}

	pdata = devm_kzalloc(dev, struct_size(pdata, ipi_mboxes, num_mboxes),
			     GFP_KERNEL);
	if (!pdata)