[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.2.22.394.2208302136090.3584@ubuntu200401>
Date: Tue, 30 Aug 2022 21:46:34 -0700 (PDT)
From: Ilkka Koskinen <ilkka@...amperecomputing.com>
To: Will Deacon <will@...nel.org>, Robin Murphy <robin.murphy@....com>
cc: Ilkka Koskinen <ilkka@...amperecomputing.com>,
Mark Rutland <mark.rutland@....com>,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
patches@...erecomputing.com
Subject: Re: [PATCH 1/1] perf/arm-cmn: Add more bits to child node address
offset field
Will,
Would you need something more or could you pick up this patch?
Cheers, Ilkka
On Tue, 9 Aug 2022, Robin Murphy wrote:
> On 2022-08-08 20:54, Ilkka Koskinen wrote:
>> CMN-600 uses bits [27:0] for child node address offset while bits [30:28]
>> are required to be zero.
>>
>> For CMN-650, the child node address offset field has been increased
>> to include bits [29:0] while leaving only bit 30 set to zero.
>>
>> Let's include the missing two bits and assume older implementations
>> comply with the spec and set bits [29:28] to 0.
>
> Ah, I don't think it ever even crossed my mind to look for changes here, but
> of course if the node regions have grown from 16KB to 64KB then it's only
> natural that offsets grow to match. I expect the CMN-700 config that we
> tested on internally would have been small enough for this not to make a
> difference. Thanks for the catch!
>
> Reviewed-by: Robin Murphy <robin.murphy@....com>
>
>> Signed-off-by: Ilkka Koskinen <ilkka@...amperecomputing.com>
>> ---
>>
>> I have tested this patch on CMN-600 and CMN-650.
>>
>> drivers/perf/arm-cmn.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/perf/arm-cmn.c b/drivers/perf/arm-cmn.c
>> index 80d8309652a4..b80a9b74662b 100644
>> --- a/drivers/perf/arm-cmn.c
>> +++ b/drivers/perf/arm-cmn.c
>> @@ -36,7 +36,7 @@
>> #define CMN_CI_CHILD_COUNT GENMASK_ULL(15, 0)
>> #define CMN_CI_CHILD_PTR_OFFSET GENMASK_ULL(31, 16)
>> -#define CMN_CHILD_NODE_ADDR GENMASK(27, 0)
>> +#define CMN_CHILD_NODE_ADDR GENMASK(29, 0)
>> #define CMN_CHILD_NODE_EXTERNAL BIT(31)
>> #define CMN_MAX_DIMENSION 12
>
Powered by blists - more mailing lists