pem_pmu
struct pem_pmu *pmu = dev_get_drvdata(dev);
struct pem_pmu *pmu = to_pem_pmu(event->pmu);
static u64 pem_perf_read_counter(struct pem_pmu *pmu,
struct pem_pmu *pmu = to_pem_pmu(event->pmu);
struct pem_pmu *pmu = to_pem_pmu(event->pmu);
struct pem_pmu *pmu = hlist_entry_safe(node, struct pem_pmu, node);
struct pem_pmu *pem_pmu;
pem_pmu = devm_kzalloc(&pdev->dev, sizeof(*pem_pmu), GFP_KERNEL);
if (!pem_pmu)
pem_pmu->dev = &pdev->dev;
platform_set_drvdata(pdev, pem_pmu);
pem_pmu->base = base;
pem_pmu->pmu = (struct pmu) {
pem_pmu->cpu = raw_smp_processor_id();
name = devm_kasprintf(pem_pmu->dev, GFP_KERNEL, "mrvl_pcie_rc_pmu_%llx",
&pem_pmu->node);
ret = perf_pmu_register(&pem_pmu->pmu, name, -1);
&pem_pmu->node);
struct pem_pmu *pem_pmu = platform_get_drvdata(pdev);
&pem_pmu->node);
perf_pmu_unregister(&pem_pmu->pmu);
#define to_pem_pmu(p) container_of(p, struct pem_pmu, pmu)