struct i915_vma *vma;
const u64 delay_ticks = 0xffffffffffffffff -
DIV_ROUND_UP_ULL(atomic64_read(&stream->perf->noa_programming_delay) *
- RUNTIME_INFO(i915)->cs_timestamp_frequency_khz,
- 1000000);
+ RUNTIME_INFO(i915)->cs_timestamp_frequency_hz,
+ 1000000000);
const u32 base = stream->engine->mmio_base;
#define CS_GPR(x) GEN8_RING_CS_GPR(base, x)
u32 *batch, *ts0, *cs, *jump;
static u64 oa_exponent_to_ns(struct i915_perf *perf, int exponent)
{
- return div_u64(1000000 * (2ULL << exponent),
- RUNTIME_INFO(perf->i915)->cs_timestamp_frequency_khz);
+ return div_u64(1000000000 * (2ULL << exponent),
+ RUNTIME_INFO(perf->i915)->cs_timestamp_frequency_hz);
}
/**
if (perf->ops.enable_metric_set) {
mutex_init(&perf->lock);
- oa_sample_rate_hard_limit = 1000 *
- (RUNTIME_INFO(i915)->cs_timestamp_frequency_khz / 2);
+ oa_sample_rate_hard_limit =
+ RUNTIME_INFO(i915)->cs_timestamp_frequency_hz / 2;
mutex_init(&perf->metrics_lock);
idr_init(&perf->metrics_idr);