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

Commit 331ab2c2 authored by qctecmdr Service's avatar qctecmdr Service Committed by Gerrit - the friendly Code Review server
Browse files

Merge "Coresight: Modify reset channel for tmc-etf"

parents e11dd129 d3b1b316
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -325,7 +325,7 @@
		arm,buffer-size = <0x400000>;

		coresight-name = "coresight-tmc-etr";
		coresight-ctis = <&cti0>;
		coresight-ctis = <&cti0 &cti0>;
		coresight-csr = <&csr>;

		clocks = <&clock_aop QDSS_CLK>;
@@ -350,7 +350,7 @@
		reg-names = "tmc-base";

		coresight-name = "coresight-tmc-etf";
		coresight-ctis = <&cti0>;
		coresight-ctis = <&cti0 &cti0>;
		coresight-csr = <&csr>;
		arm,default-sink;

+2 −2
Original line number Diff line number Diff line
@@ -184,7 +184,7 @@ static int tmc_enable_etf_sink_sysfs(struct coresight_device *csdev)
		kfree(buf);

	if (!ret) {
		coresight_cti_map_trigin(drvdata->cti_reset, 2, 0);
		coresight_cti_map_trigin(drvdata->cti_reset, 0, 0);
		coresight_cti_map_trigout(drvdata->cti_flush, 1, 0);
		dev_info(drvdata->dev, "TMC-ETB/ETF enabled\n");
	}
@@ -266,7 +266,7 @@ static void tmc_disable_etf_sink(struct coresight_device *csdev)

	spin_unlock_irqrestore(&drvdata->spinlock, flags);

	coresight_cti_unmap_trigin(drvdata->cti_reset, 2, 0);
	coresight_cti_unmap_trigin(drvdata->cti_reset, 0, 0);
	coresight_cti_unmap_trigout(drvdata->cti_flush, 1, 0);

	dev_info(drvdata->dev, "TMC-ETB/ETF disabled\n");
+10 −4
Original line number Diff line number Diff line
@@ -719,12 +719,18 @@ static int tmc_probe(struct amba_device *adev, const struct amba_id *id)
		dev_err(dev, "invalid cti data\n");
	} else if (ctidata && ctidata->nr_ctis == 2) {
		drvdata->cti_flush = coresight_cti_get(ctidata->names[0]);
		if (IS_ERR(drvdata->cti_flush))
			dev_err(dev, "failed to get flush cti\n");
		if (IS_ERR(drvdata->cti_flush)) {
			dev_err(dev, "failed to get flush cti, defer probe\n");
			tmc_iommu_deinit(drvdata);
			return -EPROBE_DEFER;
		}

		drvdata->cti_reset = coresight_cti_get(ctidata->names[1]);
		if (IS_ERR(drvdata->cti_reset))
			dev_err(dev, "failed to get reset cti\n");
		if (IS_ERR(drvdata->cti_reset)) {
			dev_err(dev, "failed to get reset cti, defer probe\n");
			tmc_iommu_deinit(drvdata);
			return -EPROBE_DEFER;
		}
	}

	ret = of_get_coresight_csr_name(adev->dev.of_node, &drvdata->csr_name);