[PATCH] perf/arm-cmn: fix regitster offset of CMN_MXP__CONNECT_INFO_P2-5

Robin Murphy robin.murphy at arm.com
Thu Mar 30 03:34:22 PDT 2023


On 2023-03-30 10:47, Jing Zhang wrote:
> In the CMN700 specification, it is described that the address offset
> of the mxp_device_connect_info_p0-5 register is 16'h8 + #{8*index}.
> Therefore, the address offset of the CMN_MXP__CONNECT_INFO_P2-5 macro
> defined in the code is wrong, which causes the cmn700 topology map
> incorrect printed in debugfs.
> 
> So correct the address offset value to make the cmn700 topology map
> correct in debugfs.
> 
> Fixes: 60d1504070c2 ("perf/arm-cmn: Support new IP features")

Ugh, these offsets are correct for CI-700, so strictly that commit is 
fine. What I failed to notice is that CMN-700 shuffled the 
mesh_port_connect_info registers out of the way, so it's commit 
23760a014417 which should have added more handling for this difference.

Thanks,
Robin.

> Signed-off-by: Jing Zhang <renyu.zj at linux.alibaba.com>
> Signed-off-by: Ruidong Tian <tianruidong at linux.alibaba.com>
> ---
>   drivers/perf/arm-cmn.c | 8 ++++----
>   1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/perf/arm-cmn.c b/drivers/perf/arm-cmn.c
> index 1deb61b..e9f844b 100644
> --- a/drivers/perf/arm-cmn.c
> +++ b/drivers/perf/arm-cmn.c
> @@ -59,10 +59,10 @@
>   /* XPs also have some local topology info which has uses too */
>   #define CMN_MXP__CONNECT_INFO_P0	0x0008
>   #define CMN_MXP__CONNECT_INFO_P1	0x0010
> -#define CMN_MXP__CONNECT_INFO_P2	0x0028
> -#define CMN_MXP__CONNECT_INFO_P3	0x0030
> -#define CMN_MXP__CONNECT_INFO_P4	0x0038
> -#define CMN_MXP__CONNECT_INFO_P5	0x0040
> +#define CMN_MXP__CONNECT_INFO_P2	0x0018
> +#define CMN_MXP__CONNECT_INFO_P3	0x0020
> +#define CMN_MXP__CONNECT_INFO_P4	0x0028
> +#define CMN_MXP__CONNECT_INFO_P5	0x0030
>   #define CMN__CONNECT_INFO_DEVICE_TYPE	GENMASK_ULL(4, 0)
>   
>   /* PMU registers occupy the 3rd 4KB page of each node's region */



More information about the linux-arm-kernel mailing list