Lines Matching refs:hw
1055 if (event->hw.state & PERF_HES_STOPPED) in power_pmu_read()
1058 if (!event->hw.idx) in power_pmu_read()
1062 val = read_pmc(event->hw.idx); in power_pmu_read()
1063 local64_set(&event->hw.prev_count, val); in power_pmu_read()
1073 prev = local64_read(&event->hw.prev_count); in power_pmu_read()
1075 val = read_pmc(event->hw.idx); in power_pmu_read()
1079 } while (local64_cmpxchg(&event->hw.prev_count, prev, val) != prev); in power_pmu_read()
1093 prev = local64_read(&event->hw.period_left); in power_pmu_read()
1097 } while (local64_cmpxchg(&event->hw.period_left, prev, val) != prev); in power_pmu_read()
1120 if (!event->hw.idx) in freeze_limited_counters()
1122 val = (event->hw.idx == 5) ? pmc5 : pmc6; in freeze_limited_counters()
1123 prev = local64_read(&event->hw.prev_count); in freeze_limited_counters()
1124 event->hw.idx = 0; in freeze_limited_counters()
1140 event->hw.idx = cpuhw->limited_hwidx[i]; in thaw_limited_counters()
1141 val = (event->hw.idx == 5) ? pmc5 : pmc6; in thaw_limited_counters()
1142 prev = local64_read(&event->hw.prev_count); in thaw_limited_counters()
1144 local64_set(&event->hw.prev_count, val); in thaw_limited_counters()
1365 if (event->hw.idx && event->hw.idx != hwc_index[i] + 1) { in power_pmu_enable()
1367 write_pmc(event->hw.idx, 0); in power_pmu_enable()
1368 event->hw.idx = 0; in power_pmu_enable()
1378 if (event->hw.idx) in power_pmu_enable()
1389 val = local64_read(&event->hw.prev_count); in power_pmu_enable()
1392 if (event->hw.sample_period) { in power_pmu_enable()
1393 left = local64_read(&event->hw.period_left); in power_pmu_enable()
1397 local64_set(&event->hw.prev_count, val); in power_pmu_enable()
1400 event->hw.idx = idx; in power_pmu_enable()
1401 if (event->hw.state & PERF_HES_STOPPED) in power_pmu_enable()
1445 flags[n] = group->hw.event_base; in collect_events()
1446 events[n++] = group->hw.config; in collect_events()
1454 flags[n] = event->hw.event_base; in collect_events()
1455 events[n++] = event->hw.config; in collect_events()
1486 cpuhw->events[n0] = event->hw.config; in power_pmu_add()
1487 cpuhw->flags[n0] = event->hw.event_base; in power_pmu_add()
1496 event->hw.state = PERF_HES_STOPPED | PERF_HES_UPTODATE; in power_pmu_add()
1498 event->hw.state = 0; in power_pmu_add()
1512 event->hw.config = cpuhw->events[n0]; in power_pmu_add()
1556 ppmu->disable_pmc(event->hw.idx - 1, cpuhw->mmcr); in power_pmu_del()
1557 if (event->hw.idx) { in power_pmu_del()
1558 write_pmc(event->hw.idx, 0); in power_pmu_del()
1559 event->hw.idx = 0; in power_pmu_del()
1598 if (!event->hw.idx || !event->hw.sample_period) in power_pmu_start()
1601 if (!(event->hw.state & PERF_HES_STOPPED)) in power_pmu_start()
1605 WARN_ON_ONCE(!(event->hw.state & PERF_HES_UPTODATE)); in power_pmu_start()
1610 event->hw.state = 0; in power_pmu_start()
1611 left = local64_read(&event->hw.period_left); in power_pmu_start()
1617 write_pmc(event->hw.idx, val); in power_pmu_start()
1628 if (!event->hw.idx || !event->hw.sample_period) in power_pmu_stop()
1631 if (event->hw.state & PERF_HES_STOPPED) in power_pmu_stop()
1638 event->hw.state |= PERF_HES_STOPPED | PERF_HES_UPTODATE; in power_pmu_stop()
1639 write_pmc(event->hw.idx, 0); in power_pmu_stop()
1718 cpuhw->event[i]->hw.config = cpuhw->events[i]; in power_pmu_commit_txn()
1886 event->hw.config_base = ev; in power_pmu_event_init()
1887 event->hw.idx = 0; in power_pmu_event_init()
1967 event->hw.config = events[n]; in power_pmu_event_init()
1968 event->hw.event_base = cflags[n]; in power_pmu_event_init()
1969 event->hw.last_period = event->hw.sample_period; in power_pmu_event_init()
1970 local64_set(&event->hw.period_left, event->hw.last_period); in power_pmu_event_init()
1977 local64_set(&event->hw.prev_count, 0); in power_pmu_event_init()
2002 return event->hw.idx; in power_pmu_event_idx()
2039 u64 period = event->hw.sample_period; in record_and_restart()
2043 if (event->hw.state & PERF_HES_STOPPED) { in record_and_restart()
2044 write_pmc(event->hw.idx, 0); in record_and_restart()
2049 prev = local64_read(&event->hw.prev_count); in record_and_restart()
2058 left = local64_read(&event->hw.period_left) - delta; in record_and_restart()
2067 event->hw.last_period = event->hw.sample_period; in record_and_restart()
2073 write_pmc(event->hw.idx, val); in record_and_restart()
2074 local64_set(&event->hw.prev_count, val); in record_and_restart()
2075 local64_set(&event->hw.period_left, left); in record_and_restart()
2084 perf_sample_data_init(&data, ~0ULL, event->hw.last_period); in record_and_restart()
2211 if (event->hw.idx == (i + 1)) { in __perf_event_interrupt()
2225 if (!event->hw.idx || is_limited_pmc(event->hw.idx)) in __perf_event_interrupt()
2227 if (pmc_overflow_power7(val[event->hw.idx - 1])) { in __perf_event_interrupt()
2231 val[event->hw.idx - 1], in __perf_event_interrupt()