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

Commit 52c47b63 authored by Alison Chaiken's avatar Alison Chaiken Committed by Shawn Guo
Browse files

bus: imx-weim: improve error handling upon child probe-failure



Probe all children of the WEIM node, reporting any failures.  Report
failure from parsing of WEIM node itself if probes of all children fail.

Signed-off-by: default avatarAlison Chaiken <alison_chaiken@mentor.com>
Acked-by: default avatarSascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: default avatarShawn Guo <shawn.guo@linaro.org>
parent e654df7a
Loading
Loading
Loading
Loading
+7 −6
Original line number Diff line number Diff line
@@ -142,7 +142,7 @@ static int __init weim_parse_dt(struct platform_device *pdev,
							   &pdev->dev);
	const struct imx_weim_devtype *devtype = of_id->data;
	struct device_node *child;
	int ret;
	int ret, have_child = 0;

	if (devtype == &imx50_weim_devtype) {
		ret = imx_weim_gpr_setup(pdev);
@@ -155,13 +155,14 @@ static int __init weim_parse_dt(struct platform_device *pdev,
			continue;

		ret = weim_timing_setup(child, base, devtype);
		if (ret) {
			dev_err(&pdev->dev, "%s set timing failed.\n",
		if (ret)
			dev_warn(&pdev->dev, "%s set timing failed.\n",
				child->full_name);
			return ret;
		}
		else
			have_child = 1;
	}

	if (have_child)
		ret = of_platform_populate(pdev->dev.of_node,
				   of_default_bus_match_table,
				   NULL, &pdev->dev);