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

Commit 4c227304 authored by Ashok Vuyyuru's avatar Ashok Vuyyuru
Browse files

msm: ipa3: Fix to differ ipa probe if msm bus driver register fails



Because of msm bus driver initialization is delayed,
msm bus driver registration was failing. Differing the ipa probe
until msm bus driver registration was success.

Change-Id: I55cd01fc0a6775c70bb9ef969174abadbd5d0299
Signed-off-by: default avatarAshok Vuyyuru <avuyyuru@codeaurora.org>
parent 0abc9ea7
Loading
Loading
Loading
Loading
+14 −1
Original line number Diff line number Diff line
@@ -5410,7 +5410,8 @@ static int ipa3_pre_init(const struct ipa3_plat_drv_res *resource_p,
				ipa3_ctx->ctrl->msm_bus_data_ptr);
		if (!ipa3_ctx->ipa_bus_hdl) {
			IPAERR("fail to register with bus mgr!\n");
			result = -ENODEV;
			ipa3_ctx->ctrl->msm_bus_data_ptr = NULL;
			result = -EPROBE_DEFER;
			goto fail_bus_reg;
		}
	}
@@ -6799,6 +6800,10 @@ int ipa3_plat_drv_probe(struct platform_device *pdev_p,
	IPADBG("dev->of_node->name = %s\n", dev->of_node->name);

	if (of_device_is_compatible(dev->of_node, "qcom,ipa-smmu-ap-cb")) {
		if (ipa3_ctx == NULL) {
			IPAERR("ipa3_ctx was not initialized\n");
			return -EPROBE_DEFER;
		}
		cb = ipa3_get_smmu_ctx(IPA_SMMU_CB_AP);
		cb->dev = dev;
		smmu_info.present[IPA_SMMU_CB_AP] = true;
@@ -6807,6 +6812,10 @@ int ipa3_plat_drv_probe(struct platform_device *pdev_p,
	}

	if (of_device_is_compatible(dev->of_node, "qcom,ipa-smmu-wlan-cb")) {
		if (ipa3_ctx == NULL) {
			IPAERR("ipa3_ctx was not initialized\n");
			return -EPROBE_DEFER;
		}
		cb = ipa3_get_smmu_ctx(IPA_SMMU_CB_WLAN);
		cb->dev = dev;
		smmu_info.present[IPA_SMMU_CB_WLAN] = true;
@@ -6815,6 +6824,10 @@ int ipa3_plat_drv_probe(struct platform_device *pdev_p,
	}

	if (of_device_is_compatible(dev->of_node, "qcom,ipa-smmu-uc-cb")) {
		if (ipa3_ctx == NULL) {
			IPAERR("ipa3_ctx was not initialized\n");
			return -EPROBE_DEFER;
		}
		cb =  ipa3_get_smmu_ctx(IPA_SMMU_CB_UC);
		cb->dev = dev;
		smmu_info.present[IPA_SMMU_CB_UC] = true;