pmu_mmdc 125 arch/arm/mach-imx/mmdc.c struct mmdc_pmu *pmu_mmdc = dev_get_drvdata(dev); pmu_mmdc 127 arch/arm/mach-imx/mmdc.c return cpumap_print_to_pagebuf(true, buf, &pmu_mmdc->cpu); pmu_mmdc 182 arch/arm/mach-imx/mmdc.c static u32 mmdc_pmu_read_counter(struct mmdc_pmu *pmu_mmdc, int cfg) pmu_mmdc 186 arch/arm/mach-imx/mmdc.c mmdc_base = pmu_mmdc->mmdc_base; pmu_mmdc 216 arch/arm/mach-imx/mmdc.c struct mmdc_pmu *pmu_mmdc = hlist_entry_safe(node, struct mmdc_pmu, node); pmu_mmdc 219 arch/arm/mach-imx/mmdc.c if (!cpumask_test_and_clear_cpu(cpu, &pmu_mmdc->cpu)) pmu_mmdc 226 arch/arm/mach-imx/mmdc.c perf_pmu_migrate_context(&pmu_mmdc->pmu, cpu, target); pmu_mmdc 227 arch/arm/mach-imx/mmdc.c cpumask_set_cpu(target, &pmu_mmdc->cpu); pmu_mmdc 277 arch/arm/mach-imx/mmdc.c struct mmdc_pmu *pmu_mmdc = to_mmdc_pmu(event->pmu); pmu_mmdc 287 arch/arm/mach-imx/mmdc.c dev_warn(pmu_mmdc->dev, "Can't provide per-task data!\n"); pmu_mmdc 300 arch/arm/mach-imx/mmdc.c event->cpu = cpumask_first(&pmu_mmdc->cpu); pmu_mmdc 306 arch/arm/mach-imx/mmdc.c struct mmdc_pmu *pmu_mmdc = to_mmdc_pmu(event->pmu); pmu_mmdc 312 arch/arm/mach-imx/mmdc.c new_raw_count = mmdc_pmu_read_counter(pmu_mmdc, pmu_mmdc 324 arch/arm/mach-imx/mmdc.c struct mmdc_pmu *pmu_mmdc = to_mmdc_pmu(event->pmu); pmu_mmdc 329 arch/arm/mach-imx/mmdc.c mmdc_base = pmu_mmdc->mmdc_base; pmu_mmdc 336 arch/arm/mach-imx/mmdc.c hrtimer_start(&pmu_mmdc->hrtimer, mmdc_pmu_timer_period(), pmu_mmdc 352 arch/arm/mach-imx/mmdc.c if (pmu_mmdc->devtype_data->flags & MMDC_FLAG_PROFILE_SEL) pmu_mmdc 360 arch/arm/mach-imx/mmdc.c struct mmdc_pmu *pmu_mmdc = to_mmdc_pmu(event->pmu); pmu_mmdc 368 arch/arm/mach-imx/mmdc.c if (pmu_mmdc->mmdc_events[cfg] != NULL) pmu_mmdc 371 arch/arm/mach-imx/mmdc.c pmu_mmdc->mmdc_events[cfg] = event; pmu_mmdc 372 arch/arm/mach-imx/mmdc.c pmu_mmdc->active_events++; pmu_mmdc 374 arch/arm/mach-imx/mmdc.c local64_set(&hwc->prev_count, mmdc_pmu_read_counter(pmu_mmdc, cfg)); pmu_mmdc 381 arch/arm/mach-imx/mmdc.c struct mmdc_pmu *pmu_mmdc = to_mmdc_pmu(event->pmu); pmu_mmdc 384 arch/arm/mach-imx/mmdc.c mmdc_base = pmu_mmdc->mmdc_base; pmu_mmdc 397 arch/arm/mach-imx/mmdc.c struct mmdc_pmu *pmu_mmdc = to_mmdc_pmu(event->pmu); pmu_mmdc 400 arch/arm/mach-imx/mmdc.c pmu_mmdc->mmdc_events[cfg] = NULL; pmu_mmdc 401 arch/arm/mach-imx/mmdc.c pmu_mmdc->active_events--; pmu_mmdc 403 arch/arm/mach-imx/mmdc.c if (pmu_mmdc->active_events == 0) pmu_mmdc 404 arch/arm/mach-imx/mmdc.c hrtimer_cancel(&pmu_mmdc->hrtimer); pmu_mmdc 409 arch/arm/mach-imx/mmdc.c static void mmdc_pmu_overflow_handler(struct mmdc_pmu *pmu_mmdc) pmu_mmdc 414 arch/arm/mach-imx/mmdc.c struct perf_event *event = pmu_mmdc->mmdc_events[i]; pmu_mmdc 423 arch/arm/mach-imx/mmdc.c struct mmdc_pmu *pmu_mmdc = container_of(hrtimer, struct mmdc_pmu, pmu_mmdc 426 arch/arm/mach-imx/mmdc.c mmdc_pmu_overflow_handler(pmu_mmdc); pmu_mmdc 432 arch/arm/mach-imx/mmdc.c static int mmdc_pmu_init(struct mmdc_pmu *pmu_mmdc, pmu_mmdc 437 arch/arm/mach-imx/mmdc.c *pmu_mmdc = (struct mmdc_pmu) { pmu_mmdc 461 arch/arm/mach-imx/mmdc.c struct mmdc_pmu *pmu_mmdc = platform_get_drvdata(pdev); pmu_mmdc 463 arch/arm/mach-imx/mmdc.c cpuhp_state_remove_instance_nocalls(cpuhp_mmdc_state, &pmu_mmdc->node); pmu_mmdc 464 arch/arm/mach-imx/mmdc.c perf_pmu_unregister(&pmu_mmdc->pmu); pmu_mmdc 465 arch/arm/mach-imx/mmdc.c kfree(pmu_mmdc); pmu_mmdc 471 arch/arm/mach-imx/mmdc.c struct mmdc_pmu *pmu_mmdc; pmu_mmdc 478 arch/arm/mach-imx/mmdc.c pmu_mmdc = kzalloc(sizeof(*pmu_mmdc), GFP_KERNEL); pmu_mmdc 479 arch/arm/mach-imx/mmdc.c if (!pmu_mmdc) { pmu_mmdc 496 arch/arm/mach-imx/mmdc.c mmdc_num = mmdc_pmu_init(pmu_mmdc, mmdc_base, &pdev->dev); pmu_mmdc 503 arch/arm/mach-imx/mmdc.c pmu_mmdc->devtype_data = (struct fsl_mmdc_devtype_data *)of_id->data; pmu_mmdc 505 arch/arm/mach-imx/mmdc.c hrtimer_init(&pmu_mmdc->hrtimer, CLOCK_MONOTONIC, pmu_mmdc 507 arch/arm/mach-imx/mmdc.c pmu_mmdc->hrtimer.function = mmdc_pmu_timer_handler; pmu_mmdc 509 arch/arm/mach-imx/mmdc.c cpumask_set_cpu(raw_smp_processor_id(), &pmu_mmdc->cpu); pmu_mmdc 512 arch/arm/mach-imx/mmdc.c cpuhp_state_add_instance_nocalls(cpuhp_mmdc_state, &pmu_mmdc->node); pmu_mmdc 514 arch/arm/mach-imx/mmdc.c ret = perf_pmu_register(&(pmu_mmdc->pmu), name, -1); pmu_mmdc 518 arch/arm/mach-imx/mmdc.c platform_set_drvdata(pdev, pmu_mmdc); pmu_mmdc 523 arch/arm/mach-imx/mmdc.c cpuhp_state_remove_instance_nocalls(cpuhp_mmdc_state, &pmu_mmdc->node); pmu_mmdc 524 arch/arm/mach-imx/mmdc.c hrtimer_cancel(&pmu_mmdc->hrtimer); pmu_mmdc 526 arch/arm/mach-imx/mmdc.c kfree(pmu_mmdc);