[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <921173d2-c996-4a0f-b3a5-b660036fa254@arm.com>
Date: Tue, 5 Mar 2024 14:36:33 +0000
From: Suzuki K Poulose <suzuki.poulose@....com>
To: Anshuman Khandual <anshuman.khandual@....com>,
linux-arm-kernel@...ts.infradead.org
Cc: Lorenzo Pieralisi <lpieralisi@...nel.org>,
Sudeep Holla <sudeep.holla@....com>, Mike Leach <mike.leach@...aro.org>,
James Clark <james.clark@....com>,
Maxime Coquelin <mcoquelin.stm32@...il.com>,
Alexandre Torgue <alexandre.torgue@...s.st.com>, linux-acpi@...r.kernel.org,
linux-kernel@...r.kernel.org, coresight@...ts.linaro.org,
linux-stm32@...md-mailman.stormreply.com
Subject: Re: [PATCH V5 03/11] coresight: tmc: Extract device properties from
AMBA pid based table lookup
On 22/02/2024 08:21, Anshuman Khandual wrote:
> This extracts device properties from AMBA pid based table lookup. But first
> this modifies tmc_etr_setup_caps() to accept csdev access.
>
> Cc: Suzuki K Poulose <suzuki.poulose@....com>
> Cc: Mike Leach <mike.leach@...aro.org>
> Cc: James Clark <james.clark@....com>
> Cc: coresight@...ts.linaro.org
> Cc: linux-arm-kernel@...ts.infradead.org
> Cc: linux-kernel@...r.kernel.org
> Reviewed-by: James Clark <james.clark@....com>
minor nit: Since there were significant changes from what James
previously reviewed, it is a good idea to drop his Reviewed-by:
Otherwise, the changes look good to me.
Suzuki
> Signed-off-by: Anshuman Khandual <anshuman.khandual@....com>
> ---
> Changes in V5:
>
> - Modified tmc_etr_setup_caps() to accept struct csdev_access argument
> - Reverted back tmc_etr_setup_caps() call site position in tmc_probe()
> - Dropped custom mask TMC_AMBA_MASK
>
> drivers/hwtracing/coresight/coresight-tmc-core.c | 14 ++++++++++----
> 1 file changed, 10 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/hwtracing/coresight/coresight-tmc-core.c b/drivers/hwtracing/coresight/coresight-tmc-core.c
> index 7ec5365e2b64..43874fa4def0 100644
> --- a/drivers/hwtracing/coresight/coresight-tmc-core.c
> +++ b/drivers/hwtracing/coresight/coresight-tmc-core.c
> @@ -370,16 +370,23 @@ static inline bool tmc_etr_has_non_secure_access(struct tmc_drvdata *drvdata)
> return (auth & TMC_AUTH_NSID_MASK) == 0x3;
> }
>
> +static const struct amba_id tmc_ids[];
> +
> /* Detect and initialise the capabilities of a TMC ETR */
> -static int tmc_etr_setup_caps(struct device *parent, u32 devid, void *dev_caps)
> +static int tmc_etr_setup_caps(struct device *parent, u32 devid,
> + struct csdev_access *access)
> {
> int rc;
> - u32 dma_mask = 0;
> + u32 tmc_pid, dma_mask = 0;
> struct tmc_drvdata *drvdata = dev_get_drvdata(parent);
> + void *dev_caps;
>
> if (!tmc_etr_has_non_secure_access(drvdata))
> return -EACCES;
>
> + tmc_pid = coresight_get_pid(access);
> + dev_caps = coresight_get_uci_data_from_amba(tmc_ids, tmc_pid);
> +
> /* Set the unadvertised capabilities */
> tmc_etr_init_caps(drvdata, (u32)(unsigned long)dev_caps);
>
> @@ -497,8 +504,7 @@ static int tmc_probe(struct amba_device *adev, const struct amba_id *id)
> desc.type = CORESIGHT_DEV_TYPE_SINK;
> desc.subtype.sink_subtype = CORESIGHT_DEV_SUBTYPE_SINK_SYSMEM;
> desc.ops = &tmc_etr_cs_ops;
> - ret = tmc_etr_setup_caps(dev, devid,
> - coresight_get_uci_data(id));
> + ret = tmc_etr_setup_caps(dev, devid, &desc.access);
> if (ret)
> goto out;
> idr_init(&drvdata->idr);
Powered by blists - more mailing lists