All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mathieu Poirier <mathieu.poirier@linaro.org>
To: Suzuki K Poulose <suzuki.poulose@arm.com>
Cc: linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, coresight@lists.linaro.org,
	mike.leach@linaro.org, rjw@rjwysocki.net, robert.walker@arm.com
Subject: Re: [PATCH v2 11/36] coresight: stm: Cleanup device specific data
Date: Thu, 18 Apr 2019 10:50:30 -0600	[thread overview]
Message-ID: <20190418165030.GA10675@xps15> (raw)
In-Reply-To: <1555344260-12375-12-git-send-email-suzuki.poulose@arm.com>

On Mon, Apr 15, 2019 at 05:03:54PM +0100, Suzuki K Poulose wrote:
> Keep track of the STM coresight device which is a child device
> of the AMBA device. Since we can get to the coresight_device
> from the "device" instance, remove the explicit field.
> 
> Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
> Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
> ---
>  drivers/hwtracing/coresight/coresight-stm.c | 21 ++++++++++-----------
>  1 file changed, 10 insertions(+), 11 deletions(-)
> 
> diff --git a/drivers/hwtracing/coresight/coresight-stm.c b/drivers/hwtracing/coresight/coresight-stm.c
> index 9f8a844..8f50484 100644
> --- a/drivers/hwtracing/coresight/coresight-stm.c
> +++ b/drivers/hwtracing/coresight/coresight-stm.c
> @@ -110,7 +110,6 @@ struct channel_space {
>  /**
>   * struct stm_drvdata - specifics associated to an STM component
>   * @base:		memory mapped base address for this component.
> - * @dev:		the device entity associated to this component.
>   * @atclk:		optional clock for the core parts of the STM.
>   * @csdev:		component vitals needed by the framework.
>   * @spinlock:		only one at a time pls.
> @@ -128,7 +127,6 @@ struct channel_space {
>   */
>  struct stm_drvdata {
>  	void __iomem		*base;
> -	struct device		*dev;
>  	struct clk		*atclk;
>  	struct coresight_device	*csdev;
>  	spinlock_t		spinlock;
> @@ -205,13 +203,13 @@ static int stm_enable(struct coresight_device *csdev,
>  	if (val)
>  		return -EBUSY;
>  
> -	pm_runtime_get_sync(drvdata->dev);
> +	pm_runtime_get_sync(csdev->dev.parent);
>  
>  	spin_lock(&drvdata->spinlock);
>  	stm_enable_hw(drvdata);
>  	spin_unlock(&drvdata->spinlock);
>  
> -	dev_dbg(drvdata->dev, "STM tracing enabled\n");
> +	dev_dbg(&csdev->dev, "STM tracing enabled\n");
>  	return 0;
>  }
>  
> @@ -271,10 +269,10 @@ static void stm_disable(struct coresight_device *csdev,
>  		/* Wait until the engine has completely stopped */
>  		coresight_timeout(drvdata->base, STMTCSR, STMTCSR_BUSY_BIT, 0);
>  
> -		pm_runtime_put(drvdata->dev);
> +		pm_runtime_put(csdev->dev.parent);
>  
>  		local_set(&drvdata->mode, CS_MODE_DISABLED);
> -		dev_dbg(drvdata->dev, "STM tracing disabled\n");
> +		dev_dbg(&csdev->dev, "STM tracing disabled\n");
>  	}
>  }
>  
> @@ -763,9 +761,10 @@ static void stm_init_default_data(struct stm_drvdata *drvdata)
>  	bitmap_clear(drvdata->chs.guaranteed, 0, drvdata->numsp);
>  }
>  
> -static void stm_init_generic_data(struct stm_drvdata *drvdata)
> +static void stm_init_generic_data(struct stm_drvdata *drvdata,
> +				  const char *name)
>  {
> -	drvdata->stm.name = dev_name(drvdata->dev);
> +	drvdata->stm.name = name;
>  
>  	/*
>  	 * MasterIDs are assigned at HW design phase. As such the core is
> @@ -807,7 +806,6 @@ static int stm_probe(struct amba_device *adev, const struct amba_id *id)
>  	if (!drvdata)
>  		return -ENOMEM;
>  
> -	drvdata->dev = &adev->dev;
>  	drvdata->atclk = devm_clk_get(&adev->dev, "atclk"); /* optional */
>  	if (!IS_ERR(drvdata->atclk)) {
>  		ret = clk_prepare_enable(drvdata->atclk);
> @@ -848,7 +846,7 @@ static int stm_probe(struct amba_device *adev, const struct amba_id *id)
>  	spin_lock_init(&drvdata->spinlock);
>  
>  	stm_init_default_data(drvdata);
> -	stm_init_generic_data(drvdata);
> +	stm_init_generic_data(drvdata, dev_name(dev));
>  
>  	if (stm_register_device(dev, &drvdata->stm, THIS_MODULE)) {
>  		dev_info(dev,
> @@ -870,7 +868,8 @@ static int stm_probe(struct amba_device *adev, const struct amba_id *id)
>  
>  	pm_runtime_put(&adev->dev);
>  
> -	dev_info(dev, "%s initialized\n", (char *)coresight_get_uci_data(id));
> +	dev_info(&drvdata->csdev->dev, "%s initialized\n",
> +		 (char *)coresight_get_uci_data(id));
>  	return 0;
>  
>  stm_unregister:

Reviewed-by: Mathieu Poirier <mathieu.poirier@linaro.org>

> -- 
> 2.7.4
> 

WARNING: multiple messages have this Message-ID (diff)
From: Mathieu Poirier <mathieu.poirier@linaro.org>
To: Suzuki K Poulose <suzuki.poulose@arm.com>
Cc: coresight@lists.linaro.org, rjw@rjwysocki.net,
	linux-kernel@vger.kernel.org, robert.walker@arm.com,
	linux-arm-kernel@lists.infradead.org, mike.leach@linaro.org
Subject: Re: [PATCH v2 11/36] coresight: stm: Cleanup device specific data
Date: Thu, 18 Apr 2019 10:50:30 -0600	[thread overview]
Message-ID: <20190418165030.GA10675@xps15> (raw)
In-Reply-To: <1555344260-12375-12-git-send-email-suzuki.poulose@arm.com>

On Mon, Apr 15, 2019 at 05:03:54PM +0100, Suzuki K Poulose wrote:
> Keep track of the STM coresight device which is a child device
> of the AMBA device. Since we can get to the coresight_device
> from the "device" instance, remove the explicit field.
> 
> Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
> Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
> ---
>  drivers/hwtracing/coresight/coresight-stm.c | 21 ++++++++++-----------
>  1 file changed, 10 insertions(+), 11 deletions(-)
> 
> diff --git a/drivers/hwtracing/coresight/coresight-stm.c b/drivers/hwtracing/coresight/coresight-stm.c
> index 9f8a844..8f50484 100644
> --- a/drivers/hwtracing/coresight/coresight-stm.c
> +++ b/drivers/hwtracing/coresight/coresight-stm.c
> @@ -110,7 +110,6 @@ struct channel_space {
>  /**
>   * struct stm_drvdata - specifics associated to an STM component
>   * @base:		memory mapped base address for this component.
> - * @dev:		the device entity associated to this component.
>   * @atclk:		optional clock for the core parts of the STM.
>   * @csdev:		component vitals needed by the framework.
>   * @spinlock:		only one at a time pls.
> @@ -128,7 +127,6 @@ struct channel_space {
>   */
>  struct stm_drvdata {
>  	void __iomem		*base;
> -	struct device		*dev;
>  	struct clk		*atclk;
>  	struct coresight_device	*csdev;
>  	spinlock_t		spinlock;
> @@ -205,13 +203,13 @@ static int stm_enable(struct coresight_device *csdev,
>  	if (val)
>  		return -EBUSY;
>  
> -	pm_runtime_get_sync(drvdata->dev);
> +	pm_runtime_get_sync(csdev->dev.parent);
>  
>  	spin_lock(&drvdata->spinlock);
>  	stm_enable_hw(drvdata);
>  	spin_unlock(&drvdata->spinlock);
>  
> -	dev_dbg(drvdata->dev, "STM tracing enabled\n");
> +	dev_dbg(&csdev->dev, "STM tracing enabled\n");
>  	return 0;
>  }
>  
> @@ -271,10 +269,10 @@ static void stm_disable(struct coresight_device *csdev,
>  		/* Wait until the engine has completely stopped */
>  		coresight_timeout(drvdata->base, STMTCSR, STMTCSR_BUSY_BIT, 0);
>  
> -		pm_runtime_put(drvdata->dev);
> +		pm_runtime_put(csdev->dev.parent);
>  
>  		local_set(&drvdata->mode, CS_MODE_DISABLED);
> -		dev_dbg(drvdata->dev, "STM tracing disabled\n");
> +		dev_dbg(&csdev->dev, "STM tracing disabled\n");
>  	}
>  }
>  
> @@ -763,9 +761,10 @@ static void stm_init_default_data(struct stm_drvdata *drvdata)
>  	bitmap_clear(drvdata->chs.guaranteed, 0, drvdata->numsp);
>  }
>  
> -static void stm_init_generic_data(struct stm_drvdata *drvdata)
> +static void stm_init_generic_data(struct stm_drvdata *drvdata,
> +				  const char *name)
>  {
> -	drvdata->stm.name = dev_name(drvdata->dev);
> +	drvdata->stm.name = name;
>  
>  	/*
>  	 * MasterIDs are assigned at HW design phase. As such the core is
> @@ -807,7 +806,6 @@ static int stm_probe(struct amba_device *adev, const struct amba_id *id)
>  	if (!drvdata)
>  		return -ENOMEM;
>  
> -	drvdata->dev = &adev->dev;
>  	drvdata->atclk = devm_clk_get(&adev->dev, "atclk"); /* optional */
>  	if (!IS_ERR(drvdata->atclk)) {
>  		ret = clk_prepare_enable(drvdata->atclk);
> @@ -848,7 +846,7 @@ static int stm_probe(struct amba_device *adev, const struct amba_id *id)
>  	spin_lock_init(&drvdata->spinlock);
>  
>  	stm_init_default_data(drvdata);
> -	stm_init_generic_data(drvdata);
> +	stm_init_generic_data(drvdata, dev_name(dev));
>  
>  	if (stm_register_device(dev, &drvdata->stm, THIS_MODULE)) {
>  		dev_info(dev,
> @@ -870,7 +868,8 @@ static int stm_probe(struct amba_device *adev, const struct amba_id *id)
>  
>  	pm_runtime_put(&adev->dev);
>  
> -	dev_info(dev, "%s initialized\n", (char *)coresight_get_uci_data(id));
> +	dev_info(&drvdata->csdev->dev, "%s initialized\n",
> +		 (char *)coresight_get_uci_data(id));
>  	return 0;
>  
>  stm_unregister:

Reviewed-by: Mathieu Poirier <mathieu.poirier@linaro.org>

> -- 
> 2.7.4
> 

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2019-04-18 16:50 UTC|newest]

Thread overview: 148+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-15 16:03 [PATCH v2 00/36] coresight: Support for ACPI bindings Suzuki K Poulose
2019-04-15 16:03 ` Suzuki K Poulose
2019-04-15 16:03 ` [PATCH v2 01/36] coresight: Fix freeing up the coresight connections Suzuki K Poulose
2019-04-15 16:03   ` Suzuki K Poulose
2019-04-15 16:03 ` [PATCH v2 02/36] coresight: etb10: Cleanup power management Suzuki K Poulose
2019-04-15 16:03   ` Suzuki K Poulose
2019-04-15 16:03 ` [PATCH v2 03/36] coresight: tpiu: " Suzuki K Poulose
2019-04-15 16:03   ` Suzuki K Poulose
2019-04-15 16:03 ` [PATCH v2 04/36] coresight: catu: " Suzuki K Poulose
2019-04-15 16:03   ` Suzuki K Poulose
2019-04-15 16:03 ` [PATCH v2 05/36] coresight: tmc: " Suzuki K Poulose
2019-04-15 16:03   ` Suzuki K Poulose
2019-04-17 20:03   ` Mathieu Poirier
2019-04-17 20:03     ` Mathieu Poirier
2019-04-23  9:33     ` Suzuki K Poulose
2019-04-23  9:33       ` Suzuki K Poulose
2019-04-15 16:03 ` [PATCH v2 06/36] coresight: funnel: Clean up device book keeping Suzuki K Poulose
2019-04-15 16:03   ` Suzuki K Poulose
2019-04-17 20:14   ` Mathieu Poirier
2019-04-17 20:14     ` Mathieu Poirier
2019-04-15 16:03 ` [PATCH v2 07/36] coresight: replicator: Cleanup device tracking Suzuki K Poulose
2019-04-15 16:03   ` Suzuki K Poulose
2019-04-17 20:34   ` Mathieu Poirier
2019-04-17 20:34     ` Mathieu Poirier
2019-04-15 16:03 ` [PATCH v2 08/36] coresight: tmc: Clean up device specific data Suzuki K Poulose
2019-04-15 16:03   ` Suzuki K Poulose
2019-04-17 21:23   ` Mathieu Poirier
2019-04-17 21:23     ` Mathieu Poirier
2019-05-03 17:13     ` Suzuki K Poulose
2019-05-03 17:13       ` Suzuki K Poulose
2019-04-15 16:03 ` [PATCH v2 09/36] coresight: catu: Cleanup " Suzuki K Poulose
2019-04-15 16:03   ` Suzuki K Poulose
2019-04-17 21:40   ` Mathieu Poirier
2019-04-17 21:40     ` Mathieu Poirier
2019-04-15 16:03 ` [PATCH v2 10/36] coresight: tpiu: Clean up " Suzuki K Poulose
2019-04-15 16:03   ` Suzuki K Poulose
2019-04-17 21:41   ` Mathieu Poirier
2019-04-17 21:41     ` Mathieu Poirier
2019-04-15 16:03 ` [PATCH v2 11/36] coresight: stm: Cleanup " Suzuki K Poulose
2019-04-15 16:03   ` Suzuki K Poulose
2019-04-18 16:50   ` Mathieu Poirier [this message]
2019-04-18 16:50     ` Mathieu Poirier
2019-04-15 16:03 ` [PATCH v2 12/36] coresight: etm: Clean up " Suzuki K Poulose
2019-04-15 16:03   ` Suzuki K Poulose
2019-04-15 16:03 ` [PATCH v2 13/36] coresight: etb10: " Suzuki K Poulose
2019-04-15 16:03   ` Suzuki K Poulose
2019-04-15 16:03 ` [PATCH v2 14/36] coresight: Rename of_coresight to coresight-platform Suzuki K Poulose
2019-04-15 16:03   ` Suzuki K Poulose
2019-04-18 17:22   ` Mathieu Poirier
2019-04-18 17:22     ` Mathieu Poirier
2019-04-15 16:03 ` [PATCH v2 15/36] coresight: etm3x: Rearrange cp14 access detection Suzuki K Poulose
2019-04-15 16:03   ` Suzuki K Poulose
2019-04-15 16:03 ` [PATCH v2 16/36] coresight: stm: Rearrange probing the stimulus area Suzuki K Poulose
2019-04-15 16:03   ` Suzuki K Poulose
2019-04-15 16:04 ` [PATCH v2 17/36] coresight: tmc-etr: Rearrange probing default buffer size Suzuki K Poulose
2019-04-15 16:04   ` Suzuki K Poulose
2019-04-15 16:04 ` [PATCH v2 18/36] coresight: platform: Make memory allocation helper generic Suzuki K Poulose
2019-04-15 16:04   ` Suzuki K Poulose
2019-04-15 16:04 ` [PATCH v2 19/36] coresight: Introduce generic platform data helper Suzuki K Poulose
2019-04-15 16:04   ` Suzuki K Poulose
2019-04-22 18:09   ` Mathieu Poirier
2019-04-22 18:09     ` Mathieu Poirier
2019-04-23  9:43     ` Suzuki K Poulose
2019-04-23  9:43       ` Suzuki K Poulose
2019-04-15 16:04 ` [PATCH v2 20/36] coresight: Make device to CPU mapping generic Suzuki K Poulose
2019-04-15 16:04   ` Suzuki K Poulose
2019-04-18 18:14   ` Mathieu Poirier
2019-04-18 18:14     ` Mathieu Poirier
2019-04-15 16:04 ` [PATCH v2 21/36] coresight: Remove cpu field from platform data Suzuki K Poulose
2019-04-15 16:04   ` Suzuki K Poulose
2019-04-15 16:04 ` [PATCH v2 22/36] coresight: Remove name from platform description Suzuki K Poulose
2019-04-15 16:04   ` Suzuki K Poulose
2019-04-15 16:04 ` [PATCH v2 23/36] coresight: Cleanup coresight_remove_conns Suzuki K Poulose
2019-04-15 16:04   ` Suzuki K Poulose
2019-04-15 16:04 ` [PATCH v2 24/36] coresight: Reuse platform data structure for connection tracking Suzuki K Poulose
2019-04-15 16:04   ` Suzuki K Poulose
2019-04-22 17:06   ` Mathieu Poirier
2019-04-22 17:06     ` Mathieu Poirier
2019-04-15 16:04 ` [PATCH v2 25/36] coresight: Rearrange platform data probing Suzuki K Poulose
2019-04-15 16:04   ` Suzuki K Poulose
2019-04-22 17:16   ` Mathieu Poirier
2019-04-22 17:16     ` Mathieu Poirier
2019-04-25 17:12     ` Suzuki K Poulose
2019-04-25 17:12       ` Suzuki K Poulose
2019-04-15 16:04 ` [PATCH v2 26/36] coresight: Add support for releasing platform specific data Suzuki K Poulose
2019-04-15 16:04   ` Suzuki K Poulose
2019-04-15 16:04 ` [PATCH v2 27/36] drivers: Add a generic helper to match device by fwnode handle Suzuki K Poulose
2019-04-15 16:04   ` Suzuki K Poulose
2019-04-16 10:20   ` Rafael J. Wysocki
2019-04-16 10:20     ` Rafael J. Wysocki
2019-04-16 10:34     ` Suzuki K Poulose
2019-04-16 10:34       ` Suzuki K Poulose
2019-04-16 10:45       ` Rafael J. Wysocki
2019-04-16 10:45         ` Rafael J. Wysocki
2019-04-16 10:39   ` [RESEND][PATCH " Suzuki K Poulose
2019-04-16 10:39     ` Suzuki K Poulose
2019-04-16 10:48     ` Rafael J. Wysocki
2019-04-16 10:48       ` Rafael J. Wysocki
2019-04-16 10:56       ` Suzuki K Poulose
2019-04-16 10:56         ` Suzuki K Poulose
2019-04-18 14:39         ` Rafael J. Wysocki
2019-04-18 14:39           ` Rafael J. Wysocki
2019-04-18 15:18           ` Suzuki K Poulose
2019-04-18 15:18             ` Suzuki K Poulose
2019-04-15 16:04 ` [PATCH v2 28/36] coresight: platform: Use fwnode handle for device search Suzuki K Poulose
2019-04-15 16:04   ` Suzuki K Poulose
2019-04-23 16:17   ` Mathieu Poirier
2019-04-23 16:17     ` Mathieu Poirier
2019-04-15 16:04 ` [PATCH v2 29/36] coresight: Use fwnode handle instead of device names Suzuki K Poulose
2019-04-15 16:04   ` Suzuki K Poulose
2019-04-23 16:14   ` Mathieu Poirier
2019-04-23 16:14     ` Mathieu Poirier
2019-04-15 16:04 ` [PATCH v2 30/36] coresight: Use platform agnostic names Suzuki K Poulose
2019-04-15 16:04   ` Suzuki K Poulose
2019-04-23 17:38   ` Mathieu Poirier
2019-04-23 17:38     ` Mathieu Poirier
2019-04-15 16:04 ` [PATCH v2 31/36] coresight: stm: ACPI support for parsing stimulus base Suzuki K Poulose
2019-04-15 16:04   ` Suzuki K Poulose
2019-04-23 17:59   ` Mathieu Poirier
2019-04-23 17:59     ` Mathieu Poirier
2019-04-25 16:17     ` Suzuki K Poulose
2019-04-25 16:17       ` Suzuki K Poulose
2019-04-15 16:04 ` [PATCH v2 32/36] coresight: Support for ACPI bindings Suzuki K Poulose
2019-04-15 16:04   ` Suzuki K Poulose
2019-04-25 16:50   ` Mathieu Poirier
2019-04-25 16:50     ` Mathieu Poirier
2019-04-25 17:30     ` Suzuki K Poulose
2019-04-25 17:30       ` Suzuki K Poulose
2019-04-15 16:04 ` [PATCH v2 33/36] coresight: acpi: Support for components Suzuki K Poulose
2019-04-15 16:04   ` Suzuki K Poulose
2019-04-25 17:45   ` Mathieu Poirier
2019-04-25 17:45     ` Mathieu Poirier
2019-04-29  8:54     ` Suzuki K Poulose
2019-04-29  8:54       ` Suzuki K Poulose
2019-04-15 16:04 ` [PATCH v2 34/36] [RFC] coresight: Pass coresight_device for coresight_release_platform_data Suzuki K Poulose
2019-04-15 16:04   ` Suzuki K Poulose
2019-04-29 17:40   ` Mathieu Poirier
2019-04-29 17:40     ` Mathieu Poirier
2019-04-15 16:04 ` [PATCH v2 35/36] [RFC] coresight: add return value for fixup connections Suzuki K Poulose
2019-04-15 16:04   ` Suzuki K Poulose
2019-04-29 17:44   ` Mathieu Poirier
2019-04-29 17:44     ` Mathieu Poirier
2019-04-15 16:04 ` [PATCH v2 36/36] [RFC] coresight: Expose device connections via sysfs Suzuki K Poulose
2019-04-15 16:04   ` Suzuki K Poulose
2019-04-29 20:50   ` Mathieu Poirier
2019-04-29 20:50     ` Mathieu Poirier
2019-04-15 16:04 ` [TEST PATCH 37/36][EDK2] edk2-platform: juno: Update ACPI CoreSight Bindings Suzuki K Poulose
2019-04-15 16:04   ` Suzuki K Poulose

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190418165030.GA10675@xps15 \
    --to=mathieu.poirier@linaro.org \
    --cc=coresight@lists.linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mike.leach@linaro.org \
    --cc=rjw@rjwysocki.net \
    --cc=robert.walker@arm.com \
    --cc=suzuki.poulose@arm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.