Thread (74 messages) 74 messages, 3 authors, 2019-05-03

Re: [PATCH v2 25/36] coresight: Rearrange platform data probing

From: Suzuki K Poulose <suzuki.poulose@arm.com>
Date: 2019-04-25 17:12:40
Also in: lkml


On 22/04/2019 18:16, Mathieu Poirier wrote:
On Mon, Apr 15, 2019 at 05:04:08PM +0100, Suzuki K Poulose wrote:
quoted
We are about to introduce methods to clean up the platform data
as we switch to tracking the device reference from "name" to "fwnode
handles" for device connections. This requires us to drop the fwnode
handle references when the data is no longer required - i.e, when
the device probe fails or the device gets unregistered.

In order to consolidate the invocation of the cleanup, we delay the
platform probing to the very last minute, possibly before invoking
the coresight_register. Then, we leave the coresight core code to
do the clean up. i.e, if the coresight_register fails, it takes
care of freeing the data. Otherwise, coresight_unregister will
do the necessary operations.

Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
...
quoted
diff --git a/drivers/hwtracing/coresight/coresight-etm4x.c b/drivers/hwtracing/coresight/coresight-etm4x.c
index 7ff0989..7c53fb2 100644
--- a/drivers/hwtracing/coresight/coresight-etm4x.c
+++ b/drivers/hwtracing/coresight/coresight-etm4x.c
@@ -981,11 +981,6 @@ static int etm4_probe(struct amba_device *adev, const struct amba_id *id)
  	if (!drvdata)
  		return -ENOMEM;
  
-	pdata = coresight_get_platform_data(dev);
-	if (IS_ERR(pdata))
-		return PTR_ERR(pdata);
-	adev->dev.platform_data = pdata;
-
  	dev_set_drvdata(dev, drvdata);
  
  	/* Validity for the resource is already checked by the AMBA core */
@@ -1028,6 +1023,11 @@ static int etm4_probe(struct amba_device *adev, const struct amba_id *id)
  	etm4_init_trace_id(drvdata);
  	etm4_set_default(&drvdata->config);
  
+	pdata = coresight_get_platform_data(dev);
+	if (IS_ERR(pdata))
+		return PTR_ERR(pdata);
Here you need to "goto err_arch_supported" instead of returning.
Thanks for catching that ! Fixed.

Suzuki


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help