diff options
author | Linux Build Service Account <lnxbuild@localhost> | 2018-11-15 07:18:05 -0800 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2018-11-15 07:18:05 -0800 |
commit | 8950f61a30d68754a957dee84920c8a431df0dda (patch) | |
tree | e9bd8c1109daa958806730003d398c5d44cfa429 | |
parent | b9a74674735268bf6449c25c11dd22104f1aa5ac (diff) | |
parent | 925880204d46361bd24d3a62f28828cfb167a3ca (diff) |
Merge "coresight: place pm_runtime_put() properly" into kernel.lnx.4.9.r22-relLA.UM.6.8.2.r1-01300-SDM710.0
-rw-r--r-- | drivers/hwtracing/coresight/coresight-etb10.c | 4 | ||||
-rw-r--r-- | drivers/hwtracing/coresight/coresight-replicator-qcom.c | 4 | ||||
-rw-r--r-- | drivers/hwtracing/coresight/coresight-tmc.c | 6 | ||||
-rw-r--r-- | drivers/hwtracing/coresight/coresight-tpda.c | 6 | ||||
-rw-r--r-- | drivers/hwtracing/coresight/coresight-tpdm.c | 4 |
5 files changed, 13 insertions, 11 deletions
diff --git a/drivers/hwtracing/coresight/coresight-etb10.c b/drivers/hwtracing/coresight/coresight-etb10.c index d7325c6534ad..7e041d9cdbec 100644 --- a/drivers/hwtracing/coresight/coresight-etb10.c +++ b/drivers/hwtracing/coresight/coresight-etb10.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2011-2012, The Linux Foundation. All rights reserved. +/* Copyright (c) 2011-2012,2018 The Linux Foundation. All rights reserved. * * Description: CoreSight Embedded Trace Buffer driver * @@ -669,7 +669,6 @@ static int etb_probe(struct amba_device *adev, const struct amba_id *id) spin_lock_init(&drvdata->spinlock); drvdata->buffer_depth = etb_get_buffer_depth(drvdata); - pm_runtime_put(&adev->dev); if (drvdata->buffer_depth & 0x80000000) return -EINVAL; @@ -698,6 +697,7 @@ static int etb_probe(struct amba_device *adev, const struct amba_id *id) ret = misc_register(&drvdata->miscdev); if (ret) goto err_misc_register; + pm_runtime_put(&adev->dev); return 0; diff --git a/drivers/hwtracing/coresight/coresight-replicator-qcom.c b/drivers/hwtracing/coresight/coresight-replicator-qcom.c index 98547a926a13..09901643b041 100644 --- a/drivers/hwtracing/coresight/coresight-replicator-qcom.c +++ b/drivers/hwtracing/coresight/coresight-replicator-qcom.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2011-2015, 2017, The Linux Foundation. All rights reserved. + * Copyright (c) 2011-2015,2017-2018, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and @@ -132,7 +132,6 @@ static int replicator_probe(struct amba_device *adev, const struct amba_id *id) drvdata->base = base; dev_set_drvdata(dev, drvdata); - pm_runtime_put(&adev->dev); desc.type = CORESIGHT_DEV_TYPE_LINK; desc.subtype.link_subtype = CORESIGHT_DEV_SUBTYPE_LINK_SPLIT; @@ -143,6 +142,7 @@ static int replicator_probe(struct amba_device *adev, const struct amba_id *id) if (IS_ERR(drvdata->csdev)) return PTR_ERR(drvdata->csdev); + pm_runtime_put(&adev->dev); dev_info(dev, "%s initialized\n", (char *)id->data); return 0; } diff --git a/drivers/hwtracing/coresight/coresight-tmc.c b/drivers/hwtracing/coresight/coresight-tmc.c index 117eea36b41b..d1234107cda3 100644 --- a/drivers/hwtracing/coresight/coresight-tmc.c +++ b/drivers/hwtracing/coresight/coresight-tmc.c @@ -612,8 +612,6 @@ static int tmc_probe(struct amba_device *adev, const struct amba_id *id) drvdata->size = readl_relaxed(drvdata->base + TMC_RSZ) * 4; } - pm_runtime_put(&adev->dev); - ctidata = of_get_coresight_cti_data(dev, adev->dev.of_node); if (IS_ERR(ctidata)) { dev_err(dev, "invalid cti data\n"); @@ -675,6 +673,10 @@ static int tmc_probe(struct amba_device *adev, const struct amba_id *id) ret = misc_register(&drvdata->miscdev); if (ret) coresight_unregister(drvdata->csdev); + + if (!ret) + pm_runtime_put(&adev->dev); + out: return ret; } diff --git a/drivers/hwtracing/coresight/coresight-tpda.c b/drivers/hwtracing/coresight/coresight-tpda.c index 5d2d0879bb55..261b8c8fc157 100644 --- a/drivers/hwtracing/coresight/coresight-tpda.c +++ b/drivers/hwtracing/coresight/coresight-tpda.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2014-2017, The Linux Foundation. All rights reserved. +/* Copyright (c) 2014-2018, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and @@ -678,8 +678,6 @@ static int tpda_probe(struct amba_device *adev, const struct amba_id *id) if (!coresight_authstatus_enabled(drvdata->base)) goto err; - pm_runtime_put(&adev->dev); - tpda_init_default_data(drvdata); desc = devm_kzalloc(dev, sizeof(*desc), GFP_KERNEL); @@ -695,6 +693,8 @@ static int tpda_probe(struct amba_device *adev, const struct amba_id *id) if (IS_ERR(drvdata->csdev)) return PTR_ERR(drvdata->csdev); + pm_runtime_put(&adev->dev); + dev_dbg(drvdata->dev, "TPDA initialized\n"); return 0; err: diff --git a/drivers/hwtracing/coresight/coresight-tpdm.c b/drivers/hwtracing/coresight/coresight-tpdm.c index 0bc9439f2791..32d5a5fddb2e 100644 --- a/drivers/hwtracing/coresight/coresight-tpdm.c +++ b/drivers/hwtracing/coresight/coresight-tpdm.c @@ -4024,8 +4024,6 @@ static int tpdm_probe(struct amba_device *adev, const struct amba_id *id) drvdata->bc_counters_avail = BMVAL(devid, 6, 10) + 1; drvdata->tc_counters_avail = BMVAL(devid, 4, 5) + 1; - pm_runtime_put(&adev->dev); - drvdata->traceid = traceid++; desc = devm_kzalloc(dev, sizeof(*desc), GFP_KERNEL); @@ -4046,6 +4044,8 @@ static int tpdm_probe(struct amba_device *adev, const struct amba_id *id) if (boot_enable) coresight_enable(drvdata->csdev); + pm_runtime_put(&adev->dev); + return 0; } |