Commit 8866f4e5 authored by Tomasz Michalec's avatar Tomasz Michalec Committed by Tzung-Bi Shih
Browse files

platform/chrome: cros_ec_typec: Defer probe on missing EC parent



If cros_typec_probe is called before EC device is registered,
cros_typec_probe will fail. It may happen when cros-ec-typec.ko is
loaded before EC bus layer module (e.g. cros_ec_lpcs.ko,
cros_ec_spi.ko).

Return -EPROBE_DEFER when cros_typec_probe doesn't get EC device, so
the probe function can be called again after EC device is registered.

Signed-off-by: default avatarTomasz Michalec <tmichalec@google.com>
Reviewed-by: default avatarAbhishek Pandit-Subedi <abhishekpandit@chromium.org>
Link: https://lore.kernel.org/r/20250610153748.1858519-1-tmichalec@google.com


Signed-off-by: default avatarTzung-Bi Shih <tzungbi@kernel.org>
parent 19272b37
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -1272,8 +1272,8 @@ static int cros_typec_probe(struct platform_device *pdev)

	typec->ec = dev_get_drvdata(pdev->dev.parent);
	if (!typec->ec) {
		dev_err(dev, "couldn't find parent EC device\n");
		return -ENODEV;
		dev_warn(dev, "couldn't find parent EC device\n");
		return -EPROBE_DEFER;
	}

	platform_set_drvdata(pdev, typec);