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

Commit 278e185c authored by Ravinder Konka's avatar Ravinder Konka Committed by Matt Wagantall
Browse files

msm: ipa: fix to get bus scale handle



Bus scale handle is invalidated after every IPA driver probe.
Make a change to fetch bus scale handle just before calling ipa_init.

Change-Id: I58497d77e59202e9bac29a42223e544dc0361fba
Acked-by: default avatarChaitanya Pratapa <cpratapa@qti.qualcomm.com>
Signed-off-by: default avatarRavinder Konka <rkonka@codeaurora.org>
parent 6f13eda1
Loading
Loading
Loading
Loading
+9 −3
Original line number Diff line number Diff line
@@ -194,6 +194,7 @@ static struct clk *ipa_inactivity_clk;

struct ipa_context *ipa_ctx;
static struct device *master_dev;
struct platform_device *ipa_pdev;
static bool smmu_present;
static bool arm_smmu;
static bool smmu_disable_htw;
@@ -3848,6 +3849,9 @@ static int ipa_smmu_ap_cb_probe(struct device *dev)
	cb->valid = true;
	smmu_present = true;

	if (!bus_scale_table)
		bus_scale_table = msm_bus_cl_get_pdata(ipa_pdev);

	/* Proceed to real initialization */
	result = ipa_init(&ipa_res, dev);
	if (result) {
@@ -3877,6 +3881,8 @@ static int ipa_plat_drv_probe(struct platform_device *pdev_p)
		return ipa_smmu_uc_cb_probe(dev);

	master_dev = dev;
	if (!ipa_pdev)
		ipa_pdev = pdev_p;

	result = get_ipa_dts_configuration(pdev_p, &ipa_res);
	if (result) {
@@ -3884,9 +3890,6 @@ static int ipa_plat_drv_probe(struct platform_device *pdev_p)
		return result;
	}

	if (!bus_scale_table)
		bus_scale_table = msm_bus_cl_get_pdata(pdev_p);

	if (of_property_read_bool(pdev_p->dev.of_node, "qcom,arm-smmu")) {
		arm_smmu = true;
		result = of_platform_populate(pdev_p->dev.of_node,
@@ -3903,6 +3906,9 @@ static int ipa_plat_drv_probe(struct platform_device *pdev_p)
			return -EOPNOTSUPP;
		}

		if (!bus_scale_table)
			bus_scale_table = msm_bus_cl_get_pdata(pdev_p);

		/* Proceed to real initialization */
		result = ipa_init(&ipa_res, dev);
		if (result) {