* [PATCH v7 0/4] Add support for ThunderX2 pmu events using json files
@ 2017-10-12 10:34 Ganapatrao Kulkarni
2017-10-12 10:34 ` [PATCH v7 1/4] perf utils: passing pmu as a parameter to function get_cpuid_str Ganapatrao Kulkarni
` (4 more replies)
0 siblings, 5 replies; 10+ messages in thread
From: Ganapatrao Kulkarni @ 2017-10-12 10:34 UTC (permalink / raw)
To: linux-arm-kernel
Extending json/jevent framework for parsing arm64 event files.
Adding jevents for ThunderX2 implementation defined PMU events.
v7:
- Addressed some more comments from Will Deacon.
v6 : Addressed comments [1] [2]
[1] https://patchwork.kernel.org/patch/9903099/
[2] https://patchwork.kernel.org/patch/9853899/
v5:
- Addressed comments from Arnaldo.
- Rebased to 4.13-rc5
v4:
- Rebased to 4.13-rc1
v3:
- Addressed comments from Will Deacon and Jayachandran C.
- Rebased to 4.12-rc1
v2:
- Updated as per Mark Rutland's suggestions.
- Added provision for get_cpuid_str to get cpu id string
from associated cpus of pmu core device.
v1: Initial patchset.
Ganapatrao Kulkarni (4):
perf utils: passing pmu as a parameter to function get_cpuid_str
perf tools arm64: Add support for get_cpuid_str function.
perf utils: Add helper function is_pmu_core to detect PMU CORE devices
perf vendor events arm64: Add ThunderX2 implementation defined pmu
core events
tools/perf/arch/arm64/util/Build | 1 +
tools/perf/arch/arm64/util/header.c | 65 ++++++++++++++++++++++
tools/perf/arch/powerpc/util/header.c | 2 +-
tools/perf/arch/x86/util/header.c | 2 +-
tools/perf/pmu-events/arch/arm64/mapfile.csv | 15 +++++
.../arch/arm64/thunderx2/thunderx2-imp-def.json | 62 +++++++++++++++++++++
tools/perf/util/header.h | 3 +-
tools/perf/util/pmu.c | 52 +++++++++++++----
8 files changed, 189 insertions(+), 13 deletions(-)
create mode 100644 tools/perf/arch/arm64/util/header.c
create mode 100644 tools/perf/pmu-events/arch/arm64/mapfile.csv
create mode 100644 tools/perf/pmu-events/arch/arm64/thunderx2/thunderx2-imp-def.json
--
2.9.4
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH v7 1/4] perf utils: passing pmu as a parameter to function get_cpuid_str
2017-10-12 10:34 [PATCH v7 0/4] Add support for ThunderX2 pmu events using json files Ganapatrao Kulkarni
@ 2017-10-12 10:34 ` Ganapatrao Kulkarni
2017-10-12 10:34 ` [PATCH v7 2/4] perf tools arm64: Add support for get_cpuid_str function Ganapatrao Kulkarni
` (3 subsequent siblings)
4 siblings, 0 replies; 10+ messages in thread
From: Ganapatrao Kulkarni @ 2017-10-12 10:34 UTC (permalink / raw)
To: linux-arm-kernel
cpuid string will not be same on all CPUs on heterogeneous
platforms like ARM's big.LITTLE, adding provision(using pmu->cpus)
to find cpuid string from associated CPUs of PMU CORE device.
also optimise arguments to function pmu_add_cpu_aliases.
Signed-off-by: Ganapatrao Kulkarni <ganapatrao.kulkarni@cavium.com>
---
| 2 +-
| 2 +-
| 3 ++-
tools/perf/util/pmu.c | 13 +++++++------
4 files changed, 11 insertions(+), 9 deletions(-)
--git a/tools/perf/arch/powerpc/util/header.c b/tools/perf/arch/powerpc/util/header.c
index 9aaa6f5..2953681 100644
--- a/tools/perf/arch/powerpc/util/header.c
+++ b/tools/perf/arch/powerpc/util/header.c
@@ -34,7 +34,7 @@ get_cpuid(char *buffer, size_t sz)
}
char *
-get_cpuid_str(void)
+get_cpuid_str(struct perf_pmu *pmu __maybe_unused)
{
char *bufp;
--git a/tools/perf/arch/x86/util/header.c b/tools/perf/arch/x86/util/header.c
index a74a48d..d52bc27 100644
--- a/tools/perf/arch/x86/util/header.c
+++ b/tools/perf/arch/x86/util/header.c
@@ -65,7 +65,7 @@ get_cpuid(char *buffer, size_t sz)
}
char *
-get_cpuid_str(void)
+get_cpuid_str(struct perf_pmu *pmu __maybe_unused)
{
char *buf = malloc(128);
--git a/tools/perf/util/header.h b/tools/perf/util/header.h
index f7a16ee..3de4be9 100644
--- a/tools/perf/util/header.h
+++ b/tools/perf/util/header.h
@@ -8,6 +8,7 @@
#include <linux/types.h>
#include "event.h"
#include "env.h"
+#include "pmu.h"
enum {
HEADER_RESERVED = 0, /* always cleared */
@@ -165,5 +166,5 @@ int write_padded(struct feat_fd *fd, const void *bf,
*/
int get_cpuid(char *buffer, size_t sz);
-char *get_cpuid_str(void);
+char *get_cpuid_str(struct perf_pmu *pmu __maybe_unused);
#endif /* __PERF_HEADER_H */
diff --git a/tools/perf/util/pmu.c b/tools/perf/util/pmu.c
index ac16a9d..18edf86 100644
--- a/tools/perf/util/pmu.c
+++ b/tools/perf/util/pmu.c
@@ -511,7 +511,7 @@ static struct cpu_map *pmu_cpumask(const char *name)
* Each architecture should provide a more precise id string that
* can be use to match the architecture's "mapfile".
*/
-char * __weak get_cpuid_str(void)
+char * __weak get_cpuid_str(struct perf_pmu *pmu __maybe_unused)
{
return NULL;
}
@@ -521,19 +521,20 @@ char * __weak get_cpuid_str(void)
* to the current running CPU. Then, add all PMU events from that table
* as aliases.
*/
-static void pmu_add_cpu_aliases(struct list_head *head, const char *name)
+static void pmu_add_cpu_aliases(struct list_head *head, struct perf_pmu *pmu)
{
int i;
struct pmu_events_map *map;
struct pmu_event *pe;
char *cpuid;
static bool printed;
+ const char *name = pmu->name;
cpuid = getenv("PERF_CPUID");
if (cpuid)
cpuid = strdup(cpuid);
if (!cpuid)
- cpuid = get_cpuid_str();
+ cpuid = get_cpuid_str(pmu);
if (!cpuid)
return;
@@ -610,19 +611,19 @@ static struct perf_pmu *pmu_lookup(const char *name)
if (pmu_aliases(name, &aliases))
return NULL;
- pmu_add_cpu_aliases(&aliases, name);
pmu = zalloc(sizeof(*pmu));
if (!pmu)
return NULL;
pmu->cpus = pmu_cpumask(name);
+ pmu->name = strdup(name);
+ pmu->type = type;
+ pmu_add_cpu_aliases(&aliases, pmu);
INIT_LIST_HEAD(&pmu->format);
INIT_LIST_HEAD(&pmu->aliases);
list_splice(&format, &pmu->format);
list_splice(&aliases, &pmu->aliases);
- pmu->name = strdup(name);
- pmu->type = type;
list_add_tail(&pmu->list, &pmus);
pmu->default_config = perf_pmu__get_default_config(pmu);
--
2.9.4
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH v7 2/4] perf tools arm64: Add support for get_cpuid_str function.
2017-10-12 10:34 [PATCH v7 0/4] Add support for ThunderX2 pmu events using json files Ganapatrao Kulkarni
2017-10-12 10:34 ` [PATCH v7 1/4] perf utils: passing pmu as a parameter to function get_cpuid_str Ganapatrao Kulkarni
@ 2017-10-12 10:34 ` Ganapatrao Kulkarni
2017-10-12 10:34 ` [PATCH v7 3/4] perf utils: Add helper function is_pmu_core to detect PMU CORE devices Ganapatrao Kulkarni
` (2 subsequent siblings)
4 siblings, 0 replies; 10+ messages in thread
From: Ganapatrao Kulkarni @ 2017-10-12 10:34 UTC (permalink / raw)
To: linux-arm-kernel
function get_cpuid_str returns MIDR string of the first online
cpu from the range of cpus associated with the pmu core device.
Signed-off-by: Ganapatrao Kulkarni <ganapatrao.kulkarni@cavium.com>
---
tools/perf/arch/arm64/util/Build | 1 +
| 65 +++++++++++++++++++++++++++++++++++++
2 files changed, 66 insertions(+)
create mode 100644 tools/perf/arch/arm64/util/header.c
diff --git a/tools/perf/arch/arm64/util/Build b/tools/perf/arch/arm64/util/Build
index cef6fb3..b1ab72d 100644
--- a/tools/perf/arch/arm64/util/Build
+++ b/tools/perf/arch/arm64/util/Build
@@ -1,3 +1,4 @@
+libperf-y += header.o
libperf-$(CONFIG_DWARF) += dwarf-regs.o
libperf-$(CONFIG_LOCAL_LIBUNWIND) += unwind-libunwind.o
--git a/tools/perf/arch/arm64/util/header.c b/tools/perf/arch/arm64/util/header.c
new file mode 100644
index 0000000..74567d7
--- /dev/null
+++ b/tools/perf/arch/arm64/util/header.c
@@ -0,0 +1,65 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <api/fs/fs.h>
+#include "header.h"
+
+#define MIDR "/regs/identification/midr_el1"
+#define MIDR_SIZE 19
+#define MIDR_REVISION_MASK 0xf
+#define MIDR_VARIANT_SHIFT 20
+#define MIDR_VARIANT_MASK (0xf << MIDR_VARIANT_SHIFT)
+
+char *get_cpuid_str(struct perf_pmu *pmu)
+{
+ char *buf = NULL;
+ char path[PATH_MAX];
+ const char *sysfs = sysfs__mountpoint();
+ int cpu;
+ u64 midr = 0;
+ struct cpu_map *cpus;
+ FILE *file;
+
+ if (!sysfs || !pmu->cpus)
+ return NULL;
+
+ buf = malloc(MIDR_SIZE);
+ if (!buf)
+ return NULL;
+
+ /* read midr from list of cpus mapped to this pmu */
+ cpus = cpu_map__get(pmu->cpus);
+ for (cpu = 0; cpu < cpus->nr; cpu++) {
+ scnprintf(path, PATH_MAX, "%s/devices/system/cpu/cpu%d"MIDR,
+ sysfs, cpus->map[cpu]);
+
+ file = fopen(path, "r");
+ if (!file) {
+ pr_debug("fopen failed for file %s\n", path);
+ continue;
+ }
+
+ if (!fgets(buf, MIDR_SIZE, file)) {
+ fclose(file);
+ continue;
+ }
+ fclose(file);
+
+ /* Ignore/clear Variant[23:20] and
+ * Revision[3:0] of MIDR
+ */
+ midr = strtoul(buf, NULL, 16);
+ midr &= (~(MIDR_VARIANT_MASK | MIDR_REVISION_MASK));
+ scnprintf(buf, MIDR_SIZE, "0x%016lx", midr);
+ /* got midr break loop */
+ break;
+ }
+
+ if (!midr) {
+ pr_err("failed to get cpuid string for PMU %s\n", pmu->name);
+ free(buf);
+ buf = NULL;
+ }
+
+ cpu_map__put(cpus);
+ return buf;
+}
--
2.9.4
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH v7 3/4] perf utils: Add helper function is_pmu_core to detect PMU CORE devices
2017-10-12 10:34 [PATCH v7 0/4] Add support for ThunderX2 pmu events using json files Ganapatrao Kulkarni
2017-10-12 10:34 ` [PATCH v7 1/4] perf utils: passing pmu as a parameter to function get_cpuid_str Ganapatrao Kulkarni
2017-10-12 10:34 ` [PATCH v7 2/4] perf tools arm64: Add support for get_cpuid_str function Ganapatrao Kulkarni
@ 2017-10-12 10:34 ` Ganapatrao Kulkarni
2017-10-12 10:34 ` [PATCH v7 4/4] perf vendor events arm64: Add ThunderX2 implementation defined pmu core events Ganapatrao Kulkarni
2017-10-12 10:38 ` [PATCH v7 0/4] Add support for ThunderX2 pmu events using json files Robert Richter
4 siblings, 0 replies; 10+ messages in thread
From: Ganapatrao Kulkarni @ 2017-10-12 10:34 UTC (permalink / raw)
To: linux-arm-kernel
On some platforms, PMU core devices sysfs name is not cpu.
Adding function is_pmu_core to detect PMU core devices using
core device specific hints in sysfs.
For arm64 platforms, all core devices have file "cpus" in sysfs.
Acked-by: Will Deacon <will.deacon@arm.com>
Tested-by: Shaokun Zhang <zhangshaokun@hisilicon.com>
Signed-off-by: Ganapatrao Kulkarni <ganapatrao.kulkarni@cavium.com>
---
tools/perf/util/pmu.c | 39 +++++++++++++++++++++++++++++++++++----
1 file changed, 35 insertions(+), 4 deletions(-)
diff --git a/tools/perf/util/pmu.c b/tools/perf/util/pmu.c
index 18edf86..153f92d 100644
--- a/tools/perf/util/pmu.c
+++ b/tools/perf/util/pmu.c
@@ -506,6 +506,34 @@ static struct cpu_map *pmu_cpumask(const char *name)
}
/*
+ * PMU CORE devices have different name other than cpu in sysfs on some
+ * platforms. looking for possible sysfs files to identify as core device.
+ */
+static int is_pmu_core(const char *name)
+{
+ struct stat st;
+ char path[PATH_MAX];
+ const char *sysfs = sysfs__mountpoint();
+
+ if (!sysfs)
+ return 0;
+
+ /* Look for cpu sysfs (x86 and others) */
+ scnprintf(path, PATH_MAX, "%s/bus/event_source/devices/cpu", sysfs);
+ if ((stat(path, &st) == 0) &&
+ (strncmp(name, "cpu", strlen("cpu")) == 0))
+ return 1;
+
+ /* Look for cpu sysfs (specific to arm) */
+ scnprintf(path, PATH_MAX, "%s/bus/event_source/devices/%s/cpus",
+ sysfs, name);
+ if (stat(path, &st) == 0)
+ return 1;
+
+ return 0;
+}
+
+/*
* Return the CPU id as a raw string.
*
* Each architecture should provide a more precise id string that
@@ -558,15 +586,18 @@ static void pmu_add_cpu_aliases(struct list_head *head, struct perf_pmu *pmu)
*/
i = 0;
while (1) {
- const char *pname;
pe = &map->table[i++];
if (!pe->name)
break;
- pname = pe->pmu ? pe->pmu : "cpu";
- if (strncmp(pname, name, strlen(pname)))
- continue;
+ if (!is_pmu_core(name)) {
+ /* check for uncore devices */
+ if (pe->pmu == NULL)
+ continue;
+ if (strncmp(pe->pmu, name, strlen(pe->pmu)))
+ continue;
+ }
/* need type casts to override 'const' */
__perf_pmu__new_alias(head, NULL, (char *)pe->name,
--
2.9.4
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH v7 4/4] perf vendor events arm64: Add ThunderX2 implementation defined pmu core events
2017-10-12 10:34 [PATCH v7 0/4] Add support for ThunderX2 pmu events using json files Ganapatrao Kulkarni
` (2 preceding siblings ...)
2017-10-12 10:34 ` [PATCH v7 3/4] perf utils: Add helper function is_pmu_core to detect PMU CORE devices Ganapatrao Kulkarni
@ 2017-10-12 10:34 ` Ganapatrao Kulkarni
2017-10-12 10:38 ` [PATCH v7 0/4] Add support for ThunderX2 pmu events using json files Robert Richter
4 siblings, 0 replies; 10+ messages in thread
From: Ganapatrao Kulkarni @ 2017-10-12 10:34 UTC (permalink / raw)
To: linux-arm-kernel
This is not a full event list, but a short list of useful events.
Signed-off-by: Ganapatrao Kulkarni <ganapatrao.kulkarni@cavium.com>
---
tools/perf/pmu-events/arch/arm64/mapfile.csv | 15 ++++++
.../arch/arm64/thunderx2/thunderx2-imp-def.json | 62 ++++++++++++++++++++++
2 files changed, 77 insertions(+)
create mode 100644 tools/perf/pmu-events/arch/arm64/mapfile.csv
create mode 100644 tools/perf/pmu-events/arch/arm64/thunderx2/thunderx2-imp-def.json
diff --git a/tools/perf/pmu-events/arch/arm64/mapfile.csv b/tools/perf/pmu-events/arch/arm64/mapfile.csv
new file mode 100644
index 0000000..7167086
--- /dev/null
+++ b/tools/perf/pmu-events/arch/arm64/mapfile.csv
@@ -0,0 +1,15 @@
+# Format:
+# MIDR,Version,JSON/file/pathname,Type
+#
+# where
+# MIDR Processor version
+# Variant[23:20] and Revision [3:0] should be zero.
+# Version could be used to track version of of JSON file
+# but currently unused.
+# JSON/file/pathname is the path to JSON file, relative
+# to tools/perf/pmu-events/arch/arm64/.
+# Type is core, uncore etc
+#
+#
+#Family-model,Version,Filename,EventType
+0x00000000420f5160,v1,thunderx2,core
diff --git a/tools/perf/pmu-events/arch/arm64/thunderx2/thunderx2-imp-def.json b/tools/perf/pmu-events/arch/arm64/thunderx2/thunderx2-imp-def.json
new file mode 100644
index 0000000..2db45c4
--- /dev/null
+++ b/tools/perf/pmu-events/arch/arm64/thunderx2/thunderx2-imp-def.json
@@ -0,0 +1,62 @@
+[
+ {
+ "PublicDescription": "Attributable Level 1 data cache access, read",
+ "EventCode": "0x40",
+ "EventName": "l1d_cache_rd",
+ "BriefDescription": "L1D cache read",
+ },
+ {
+ "PublicDescription": "Attributable Level 1 data cache access, write ",
+ "EventCode": "0x41",
+ "EventName": "l1d_cache_wr",
+ "BriefDescription": "L1D cache write",
+ },
+ {
+ "PublicDescription": "Attributable Level 1 data cache refill, read",
+ "EventCode": "0x42",
+ "EventName": "l1d_cache_refill_rd",
+ "BriefDescription": "L1D cache refill read",
+ },
+ {
+ "PublicDescription": "Attributable Level 1 data cache refill, write",
+ "EventCode": "0x43",
+ "EventName": "l1d_cache_refill_wr",
+ "BriefDescription": "L1D refill write",
+ },
+ {
+ "PublicDescription": "Attributable Level 1 data TLB refill, read",
+ "EventCode": "0x4C",
+ "EventName": "l1d_tlb_refill_rd",
+ "BriefDescription": "L1D tlb refill read",
+ },
+ {
+ "PublicDescription": "Attributable Level 1 data TLB refill, write",
+ "EventCode": "0x4D",
+ "EventName": "l1d_tlb_refill_wr",
+ "BriefDescription": "L1D tlb refill write",
+ },
+ {
+ "PublicDescription": "Attributable Level 1 data or unified TLB access, read",
+ "EventCode": "0x4E",
+ "EventName": "l1d_tlb_rd",
+ "BriefDescription": "L1D tlb read",
+ },
+ {
+ "PublicDescription": "Attributable Level 1 data or unified TLB access, write",
+ "EventCode": "0x4F",
+ "EventName": "l1d_tlb_wr",
+ "BriefDescription": "L1D tlb write",
+ },
+ {
+ "PublicDescription": "Bus access read",
+ "EventCode": "0x60",
+ "EventName": "bus_access_rd",
+ "BriefDescription": "Bus access read",
+ },
+ {
+ "PublicDescription": "Bus access write",
+ "EventCode": "0x61",
+ "EventName": "bus_access_wr",
+ "BriefDescription": "Bus access write",
+ }
+]
--
2.9.4
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH v7 0/4] Add support for ThunderX2 pmu events using json files
2017-10-12 10:34 [PATCH v7 0/4] Add support for ThunderX2 pmu events using json files Ganapatrao Kulkarni
` (3 preceding siblings ...)
2017-10-12 10:34 ` [PATCH v7 4/4] perf vendor events arm64: Add ThunderX2 implementation defined pmu core events Ganapatrao Kulkarni
@ 2017-10-12 10:38 ` Robert Richter
2017-10-12 10:50 ` Ganapatrao Kulkarni
4 siblings, 1 reply; 10+ messages in thread
From: Robert Richter @ 2017-10-12 10:38 UTC (permalink / raw)
To: linux-arm-kernel
On 12.10.17 16:04:15, Ganapatrao Kulkarni wrote:
> tools/perf/arch/arm64/util/Build | 1 +
> tools/perf/arch/arm64/util/header.c | 65 ++++++++++++++++++++++
> tools/perf/arch/powerpc/util/header.c | 2 +-
> tools/perf/arch/x86/util/header.c | 2 +-
> tools/perf/pmu-events/arch/arm64/mapfile.csv | 15 +++++
> .../arch/arm64/thunderx2/thunderx2-imp-def.json | 62 +++++++++++++++++++++
I guess the dir needs to be named 'cavium'.
-Robert
> tools/perf/util/header.h | 3 +-
> tools/perf/util/pmu.c | 52 +++++++++++++----
> 8 files changed, 189 insertions(+), 13 deletions(-)
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH v7 0/4] Add support for ThunderX2 pmu events using json files
2017-10-12 10:38 ` [PATCH v7 0/4] Add support for ThunderX2 pmu events using json files Robert Richter
@ 2017-10-12 10:50 ` Ganapatrao Kulkarni
2017-10-12 10:58 ` Will Deacon
0 siblings, 1 reply; 10+ messages in thread
From: Ganapatrao Kulkarni @ 2017-10-12 10:50 UTC (permalink / raw)
To: linux-arm-kernel
Hi Robert,
On Thu, Oct 12, 2017 at 4:08 PM, Robert Richter <rric@kernel.org> wrote:
> On 12.10.17 16:04:15, Ganapatrao Kulkarni wrote:
>
>> tools/perf/arch/arm64/util/Build | 1 +
>> tools/perf/arch/arm64/util/header.c | 65 ++++++++++++++++++++++
>> tools/perf/arch/powerpc/util/header.c | 2 +-
>> tools/perf/arch/x86/util/header.c | 2 +-
>> tools/perf/pmu-events/arch/arm64/mapfile.csv | 15 +++++
>> .../arch/arm64/thunderx2/thunderx2-imp-def.json | 62 +++++++++++++++++++++
>
> I guess the dir needs to be named 'cavium'.
i dont think so , while compilation arch type is detected, it has to be arm64
refer SRCARCH in pmu-events/Build
>
> -Robert
>
>> tools/perf/util/header.h | 3 +-
>> tools/perf/util/pmu.c | 52 +++++++++++++----
>> 8 files changed, 189 insertions(+), 13 deletions(-)
thanks
Ganapat
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH v7 0/4] Add support for ThunderX2 pmu events using json files
2017-10-12 10:50 ` Ganapatrao Kulkarni
@ 2017-10-12 10:58 ` Will Deacon
2017-10-12 11:45 ` Zhangshaokun
0 siblings, 1 reply; 10+ messages in thread
From: Will Deacon @ 2017-10-12 10:58 UTC (permalink / raw)
To: linux-arm-kernel
On Thu, Oct 12, 2017 at 04:20:06PM +0530, Ganapatrao Kulkarni wrote:
> Hi Robert,
>
> On Thu, Oct 12, 2017 at 4:08 PM, Robert Richter <rric@kernel.org> wrote:
> > On 12.10.17 16:04:15, Ganapatrao Kulkarni wrote:
> >
> >> tools/perf/arch/arm64/util/Build | 1 +
> >> tools/perf/arch/arm64/util/header.c | 65 ++++++++++++++++++++++
> >> tools/perf/arch/powerpc/util/header.c | 2 +-
> >> tools/perf/arch/x86/util/header.c | 2 +-
> >> tools/perf/pmu-events/arch/arm64/mapfile.csv | 15 +++++
> >> .../arch/arm64/thunderx2/thunderx2-imp-def.json | 62 +++++++++++++++++++++
> >
> > I guess the dir needs to be named 'cavium'.
>
> i dont think so , while compilation arch type is detected, it has to be arm64
> refer SRCARCH in pmu-events/Build
The full name should be:
.../arch/arm64/cavium/thunderx2-imp-def.json
Will
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH v7 0/4] Add support for ThunderX2 pmu events using json files
2017-10-12 10:58 ` Will Deacon
@ 2017-10-12 11:45 ` Zhangshaokun
2017-10-12 13:47 ` Ganapatrao Kulkarni
0 siblings, 1 reply; 10+ messages in thread
From: Zhangshaokun @ 2017-10-12 11:45 UTC (permalink / raw)
To: linux-arm-kernel
Hi Will,
On 2017/10/12 18:58, Will Deacon wrote:
> On Thu, Oct 12, 2017 at 04:20:06PM +0530, Ganapatrao Kulkarni wrote:
>> Hi Robert,
>>
>> On Thu, Oct 12, 2017 at 4:08 PM, Robert Richter <rric@kernel.org> wrote:
>>> On 12.10.17 16:04:15, Ganapatrao Kulkarni wrote:
>>>
>>>> tools/perf/arch/arm64/util/Build | 1 +
>>>> tools/perf/arch/arm64/util/header.c | 65 ++++++++++++++++++++++
>>>> tools/perf/arch/powerpc/util/header.c | 2 +-
>>>> tools/perf/arch/x86/util/header.c | 2 +-
>>>> tools/perf/pmu-events/arch/arm64/mapfile.csv | 15 +++++
>>>> .../arch/arm64/thunderx2/thunderx2-imp-def.json | 62 +++++++++++++++++++++
>>>
>>> I guess the dir needs to be named 'cavium'.
>>
>> i dont think so , while compilation arch type is detected, it has to be arm64
>> refer SRCARCH in pmu-events/Build
>
> The full name should be:
>
> .../arch/arm64/cavium/thunderx2-imp-def.json
>
It works for us (HiSilicon) as .../arch/arm64/hisilicon/hip08-imp-def.json.
Thanks,
Shaokun
> Will
>
> .
>
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH v7 0/4] Add support for ThunderX2 pmu events using json files
2017-10-12 11:45 ` Zhangshaokun
@ 2017-10-12 13:47 ` Ganapatrao Kulkarni
0 siblings, 0 replies; 10+ messages in thread
From: Ganapatrao Kulkarni @ 2017-10-12 13:47 UTC (permalink / raw)
To: linux-arm-kernel
On Thu, Oct 12, 2017 at 5:15 PM, Zhangshaokun
<zhangshaokun@hisilicon.com> wrote:
> Hi Will,
>
> On 2017/10/12 18:58, Will Deacon wrote:
>> On Thu, Oct 12, 2017 at 04:20:06PM +0530, Ganapatrao Kulkarni wrote:
>>> Hi Robert,
>>>
>>> On Thu, Oct 12, 2017 at 4:08 PM, Robert Richter <rric@kernel.org> wrote:
>>>> On 12.10.17 16:04:15, Ganapatrao Kulkarni wrote:
>>>>
>>>>> tools/perf/arch/arm64/util/Build | 1 +
>>>>> tools/perf/arch/arm64/util/header.c | 65 ++++++++++++++++++++++
>>>>> tools/perf/arch/powerpc/util/header.c | 2 +-
>>>>> tools/perf/arch/x86/util/header.c | 2 +-
>>>>> tools/perf/pmu-events/arch/arm64/mapfile.csv | 15 +++++
>>>>> .../arch/arm64/thunderx2/thunderx2-imp-def.json | 62 +++++++++++++++++++++
>>>>
>>>> I guess the dir needs to be named 'cavium'.
>>>
>>> i dont think so , while compilation arch type is detected, it has to be arm64
>>> refer SRCARCH in pmu-events/Build
>>
>> The full name should be:
>>
>> .../arch/arm64/cavium/thunderx2-imp-def.json
ok, i am sending patch with renaming directory to cavium.
>>
>
> It works for us (HiSilicon) as .../arch/arm64/hisilicon/hip08-imp-def.json.
>
> Thanks,
> Shaokun
>
>> Will
>>
>> .
>>
>
thanks
Ganapat
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2017-10-12 13:47 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-10-12 10:34 [PATCH v7 0/4] Add support for ThunderX2 pmu events using json files Ganapatrao Kulkarni
2017-10-12 10:34 ` [PATCH v7 1/4] perf utils: passing pmu as a parameter to function get_cpuid_str Ganapatrao Kulkarni
2017-10-12 10:34 ` [PATCH v7 2/4] perf tools arm64: Add support for get_cpuid_str function Ganapatrao Kulkarni
2017-10-12 10:34 ` [PATCH v7 3/4] perf utils: Add helper function is_pmu_core to detect PMU CORE devices Ganapatrao Kulkarni
2017-10-12 10:34 ` [PATCH v7 4/4] perf vendor events arm64: Add ThunderX2 implementation defined pmu core events Ganapatrao Kulkarni
2017-10-12 10:38 ` [PATCH v7 0/4] Add support for ThunderX2 pmu events using json files Robert Richter
2017-10-12 10:50 ` Ganapatrao Kulkarni
2017-10-12 10:58 ` Will Deacon
2017-10-12 11:45 ` Zhangshaokun
2017-10-12 13:47 ` Ganapatrao Kulkarni
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).