Lines Matching defs:hwc
623 struct hw_perf_event *hwc = &event->hw;
631 if (WARN_ON_ONCE(!(hwc->state & PERF_HES_STOPPED)))
634 WARN_ON_ONCE(!(hwc->state & PERF_HES_UPTODATE));
635 hwc->state = 0;
646 writeq(cfg, base + CXL_PMU_FILTER_CFG_REG(hwc->idx, 0));
649 cfg = readq(base + CXL_PMU_COUNTER_CFG_REG(hwc->idx));
659 if (test_bit(hwc->idx, info->conf_counter_bm)) {
661 hwc->event_base);
676 writeq(cfg, base + CXL_PMU_COUNTER_CFG_REG(hwc->idx));
678 local64_set(&hwc->prev_count, 0);
679 writeq(0, base + CXL_PMU_COUNTER_REG(hwc->idx));
695 struct hw_perf_event *hwc = &event->hw;
699 prev_cnt = local64_read(&hwc->prev_count);
701 } while (local64_cmpxchg(&hwc->prev_count, prev_cnt, new_cnt) != prev_cnt);
723 struct hw_perf_event *hwc = &event->hw;
727 WARN_ON_ONCE(hwc->state & PERF_HES_STOPPED);
728 hwc->state |= PERF_HES_STOPPED;
730 cfg = readq(base + CXL_PMU_COUNTER_CFG_REG(hwc->idx));
733 writeq(cfg, base + CXL_PMU_COUNTER_CFG_REG(hwc->idx));
735 hwc->state |= PERF_HES_UPTODATE;
741 struct hw_perf_event *hwc = &event->hw;
745 hwc->state = PERF_HES_STOPPED | PERF_HES_UPTODATE;
751 hwc->idx = idx;
754 hwc->event_base = event_idx;
767 struct hw_perf_event *hwc = &event->hw;
770 clear_bit(hwc->idx, info->used_counter_bm);
771 info->hw_events[hwc->idx] = NULL;