Track the coresight device instead of the real device.

Cc: Mathieu Poirier <[email protected]>
Signed-off-by: Suzuki K Poulose <[email protected]>
---
 drivers/hwtracing/coresight/coresight-etm3x.c | 6 +++---
 drivers/hwtracing/coresight/coresight-etm4x.c | 4 ++--
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/drivers/hwtracing/coresight/coresight-etm3x.c 
b/drivers/hwtracing/coresight/coresight-etm3x.c
index be302ec..1b9ae3a 100644
--- a/drivers/hwtracing/coresight/coresight-etm3x.c
+++ b/drivers/hwtracing/coresight/coresight-etm3x.c
@@ -462,7 +462,7 @@ int etm_get_trace_id(struct etm_drvdata *drvdata)
        if (!local_read(&drvdata->mode))
                return drvdata->traceid;
 
-       pm_runtime_get_sync(drvdata->dev);
+       pm_runtime_get_sync(drvdata->dev->parent);
 
        spin_lock_irqsave(&drvdata->spinlock, flags);
 
@@ -471,7 +471,7 @@ int etm_get_trace_id(struct etm_drvdata *drvdata)
        CS_LOCK(drvdata->base);
 
        spin_unlock_irqrestore(&drvdata->spinlock, flags);
-       pm_runtime_put(drvdata->dev);
+       pm_runtime_put(drvdata->dev->parent);
 
 out:
        return trace_id;
@@ -803,7 +803,6 @@ static int etm_probe(struct amba_device *adev, const struct 
amba_id *id)
                drvdata->use_cp14 = of_property_read_bool(np, "arm,cp14");
        }
 
-       drvdata->dev = &adev->dev;
        dev_set_drvdata(dev, drvdata);
 
        /* Validity for the resource is already checked by the AMBA core */
@@ -864,6 +863,7 @@ static int etm_probe(struct amba_device *adev, const struct 
amba_id *id)
                goto err_arch_supported;
        }
 
+       drvdata->dev = &drvdata->csdev->dev;
        ret = etm_perf_symlink(drvdata->csdev, true);
        if (ret) {
                coresight_unregister(drvdata->csdev);
diff --git a/drivers/hwtracing/coresight/coresight-etm4x.c 
b/drivers/hwtracing/coresight/coresight-etm4x.c
index 08ce37c..8d5ee3b 100644
--- a/drivers/hwtracing/coresight/coresight-etm4x.c
+++ b/drivers/hwtracing/coresight/coresight-etm4x.c
@@ -987,7 +987,6 @@ static int etm4_probe(struct amba_device *adev, const 
struct amba_id *id)
                adev->dev.platform_data = pdata;
        }
 
-       drvdata->dev = &adev->dev;
        dev_set_drvdata(dev, drvdata);
 
        /* Validity for the resource is already checked by the AMBA core */
@@ -1042,6 +1041,7 @@ static int etm4_probe(struct amba_device *adev, const 
struct amba_id *id)
                goto err_arch_supported;
        }
 
+       drvdata->dev = &drvdata->csdev->dev;
        ret = etm_perf_symlink(drvdata->csdev, true);
        if (ret) {
                coresight_unregister(drvdata->csdev);
@@ -1049,7 +1049,7 @@ static int etm4_probe(struct amba_device *adev, const 
struct amba_id *id)
        }
 
        pm_runtime_put(&adev->dev);
-       dev_info(dev, "CPU%d: ETM v%d.%d initialized\n",
+       dev_info(drvdata->dev, "CPU%d: ETM v%d.%d initialized\n",
                 drvdata->cpu, drvdata->arch >> 4, drvdata->arch & 0xf);
 
        if (boot_enable) {
-- 
2.7.4

Reply via email to