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

Commit 9b0f0857 authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "coresight: remove cti-ack-atomic support"

parents 44a0d67a 08c003ea
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -135,8 +135,6 @@ Optional properties:
- qcom,cti-save : boolean, indicating cti context needs to be saved and restored
- qcom,cti-hwclk : boolean, indicating support of hardware clock to access cti
		   registers to be saved and restored
- qcom,cti-ack-atomic : boolean, indicating cti interrupt acknowledgement needs
			to be done in atomic context
- qcom,cti-gpio-trigin : cti trigger input driven by gpio
- qcom,cti-gpio-trigout : cti trigger output sent to gpio
- qcom,pc-save : program counter save implemented
+0 −8
Original line number Diff line number Diff line
@@ -550,7 +550,6 @@
			 <&clock_rpm clk_qdss_a_clk>;
		clock-names = "core_clk", "core_a_clk";

		qcom,cti-ack-atomic;
		qcom,cti-save;
	};

@@ -568,7 +567,6 @@
			 <&clock_rpm clk_qdss_a_clk>;
		clock-names = "core_clk", "core_a_clk";

		qcom,cti-ack-atomic;
		qcom,cti-save;
	};

@@ -586,7 +584,6 @@
			 <&clock_rpm clk_qdss_a_clk>;
		clock-names = "core_clk", "core_a_clk";

		qcom,cti-ack-atomic;
		qcom,cti-save;
	};

@@ -604,7 +601,6 @@
			 <&clock_rpm clk_qdss_a_clk>;
		clock-names = "core_clk", "core_a_clk";

		qcom,cti-ack-atomic;
		qcom,cti-save;
	};

@@ -622,7 +618,6 @@
			 <&clock_rpm clk_qdss_a_clk>;
		clock-names = "core_clk", "core_a_clk";

		qcom,cti-ack-atomic;
		qcom,cti-save;
	};

@@ -640,7 +635,6 @@
			 <&clock_rpm clk_qdss_a_clk>;
		clock-names = "core_clk", "core_a_clk";

		qcom,cti-ack-atomic;
		qcom,cti-save;
	};

@@ -658,7 +652,6 @@
			 <&clock_rpm clk_qdss_a_clk>;
		clock-names = "core_clk", "core_a_clk";

		qcom,cti-ack-atomic;
		qcom,cti-save;
	};

@@ -676,7 +669,6 @@
			 <&clock_rpm clk_qdss_a_clk>;
		clock-names = "core_clk", "core_a_clk";

		qcom,cti-ack-atomic;
		qcom,cti-save;
	};

+4 −24
Original line number Diff line number Diff line
@@ -94,7 +94,6 @@ struct cti_drvdata {
	int				cpu;
	bool				cti_save;
	bool				cti_hwclk;
	bool				cti_ack_atomic;
	bool				l2_off;
	struct cti_state		*state;
	struct cti_pctrl		*gpio_trigin;
@@ -702,12 +701,6 @@ int coresight_cti_ack_trig(struct coresight_cti *cti, int trig)

	drvdata = to_cti_drvdata(cti);

	if (!drvdata->cti_ack_atomic) {
		ret = clk_prepare_enable(drvdata->clk);
		if (ret)
			return ret;
	}

	spin_lock_irqsave(&drvdata->spinlock, flag);
	ret = cti_cpu_verify_access(drvdata);
	if (ret)
@@ -716,9 +709,6 @@ int coresight_cti_ack_trig(struct coresight_cti *cti, int trig)
	ret = __cti_ack_trig(drvdata, trig);
err:
	spin_unlock_irqrestore(&drvdata->spinlock, flag);

	if (!drvdata->cti_ack_atomic)
		clk_disable_unprepare(drvdata->clk);
	return ret;
}
EXPORT_SYMBOL(coresight_cti_ack_trig);
@@ -1291,21 +1281,13 @@ static int cti_probe(struct platform_device *pdev)
			return ret;
	}

	if (pdev->dev.of_node) {
		drvdata->cti_ack_atomic =
			 of_property_read_bool(pdev->dev.of_node,
					       "qcom,cti-ack-atomic");

	if (pdev->dev.of_node)
		drvdata->cti_save = of_property_read_bool(pdev->dev.of_node,
							  "qcom,cti-save");
	}

	if (drvdata->cti_save)
		drvdata->cti_hwclk = of_property_read_bool(pdev->dev.of_node,
							   "qcom,cti-hwclk");

	if ((drvdata->cti_save && !drvdata->cti_hwclk) ||
	    drvdata->cti_ack_atomic) {
	if (drvdata->cti_save && !drvdata->cti_hwclk) {
		ret = clk_prepare_enable(drvdata->clk);
		if (ret)
			return ret;
@@ -1368,8 +1350,7 @@ static int cti_probe(struct platform_device *pdev)
	dev_info(dev, "CTI initialized\n");
	return 0;
err:
	if ((drvdata->cti_save && !drvdata->cti_hwclk) ||
	    drvdata->cti_ack_atomic)
	if (drvdata->cti_save && !drvdata->cti_hwclk)
		clk_disable_unprepare(drvdata->clk);
	return ret;
}
@@ -1378,8 +1359,7 @@ static int cti_remove(struct platform_device *pdev)
{
	struct cti_drvdata *drvdata = platform_get_drvdata(pdev);

	if ((drvdata->cti_save && !drvdata->cti_hwclk) ||
	    drvdata->cti_ack_atomic)
	if (drvdata->cti_save && !drvdata->cti_hwclk)
		clk_disable_unprepare(drvdata->clk);
	coresight_unregister(drvdata->csdev);
	return 0;