From 7380bf04bafcfbfde3d8b2cfaa9c5e8768bb2ac7 Mon Sep 17 00:00:00 2001 From: Amit Blay Date: Tue, 25 Jul 2017 10:38:33 +0300 Subject: [PATCH] misc: qseecom: Support qseecom deferred probing During qseecom driver probing, the ION driver is invoked. This commit supports the case where the ION driver still hasn't probed. In that case, the qseecom probing will be deferred, and retried at a later stage. Change-Id: Ic780e8fa1d48a9f5b8b98773c034b280475f5fd0 Signed-off-by: Amit Blay --- drivers/misc/qseecom.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/misc/qseecom.c b/drivers/misc/qseecom.c index 7d09f22d3bc6..763cb5e8d52e 100644 --- a/drivers/misc/qseecom.c +++ b/drivers/misc/qseecom.c @@ -8448,7 +8448,11 @@ static int qseecom_probe(struct platform_device *pdev) qseecom.ion_clnt = msm_ion_client_create("qseecom-kernel"); if (IS_ERR_OR_NULL(qseecom.ion_clnt)) { pr_err("Ion client cannot be created\n"); - rc = -ENOMEM; + + if (qseecom.ion_clnt != ERR_PTR(-EPROBE_DEFER)) + rc = -ENOMEM; + else + rc = -EPROBE_DEFER; goto exit_del_cdev; }