Lines Matching defs:spm_trace
40 device->spm_trace.buffer_size = size;
41 device->spm_trace.sample_interval = sample_interval;
48 device->spm_trace.bo = bo;
52 result = ws->buffer_make_resident(ws, device->spm_trace.bo, true);
56 device->spm_trace.ptr = ws->buffer_map(device->spm_trace.bo);
57 if (!device->spm_trace.ptr)
66 struct ac_spm_trace_data *spm_trace = &device->spm_trace;
68 for (uint32_t b = 0; b < spm_trace->num_used_sq_block_sel; b++) {
69 struct ac_spm_block_select *sq_block_sel = &spm_trace->sq_block_sel[b];
77 for (uint32_t b = 0; b < spm_trace->num_block_sel; b++) {
78 struct ac_spm_block_select *block_sel = &spm_trace->block_sel[b];
106 struct ac_spm_trace_data *spm_trace = &device->spm_trace;
107 uint64_t va = radv_buffer_get_va(spm_trace->bo);
108 uint64_t ring_size = spm_trace->buffer_size;
113 assert(spm_trace->sample_interval >= 32);
118 S_037200_PERFMON_SAMPLE_INTERVAL(spm_trace->sample_interval)); /* in sclk */
127 total_muxsel_lines += spm_trace->num_muxsel_lines[s];
133 S_03727C_SE0_NUM_LINE(spm_trace->num_muxsel_lines[0]) |
134 S_03727C_SE1_NUM_LINE(spm_trace->num_muxsel_lines[1]) |
135 S_03727C_SE2_NUM_LINE(spm_trace->num_muxsel_lines[2]) |
136 S_03727C_SE3_NUM_LINE(spm_trace->num_muxsel_lines[3]));
139 S_037280_GLOBAL_NUM_LINE(spm_trace->num_muxsel_lines[4]));
147 if (!spm_trace->num_muxsel_lines[s])
164 for (unsigned l = 0; l < spm_trace->num_muxsel_lines[s]; l++) {
165 uint32_t *data = (uint32_t *)spm_trace->muxsel_lines[s][l].muxsel;
210 if (!ac_init_spm(info, pc, ARRAY_SIZE(spm_counters), spm_counters, &device->spm_trace))
224 if (device->spm_trace.bo) {
225 ws->buffer_make_resident(ws, device->spm_trace.bo, false);
226 ws->buffer_destroy(ws, device->spm_trace.bo);
229 ac_destroy_spm(&device->spm_trace);