Home | History | Annotate | Download | only in common

Lines Matching refs:ib

131 static void ac_parse_set_reg_packet(FILE *f, uint32_t *ib, unsigned count,
134 unsigned reg = (ib[1] << 2) + reg_offset;
138 ac_dump_reg(f, reg + i*4, ib[2+i], ~0);
141 static uint32_t *ac_parse_packet3(FILE *f, uint32_t *ib, int *num_dw,
146 unsigned count = PKT_COUNT_G(ib[0]);
147 unsigned op = PKT3_IT_OPCODE_G(ib[0]);
148 const char *predicate = PKT3_PREDICATE(ib[0]) ? "(predicate)" : "";
175 ac_parse_set_reg_packet(f, ib, count, SI_CONTEXT_REG_OFFSET);
178 ac_parse_set_reg_packet(f, ib, count, SI_CONFIG_REG_OFFSET);
181 ac_parse_set_reg_packet(f, ib, count, CIK_UCONFIG_REG_OFFSET);
184 ac_parse_set_reg_packet(f, ib, count, SI_SH_REG_OFFSET);
187 ac_dump_reg(f, R_0301F0_CP_COHER_CNTL, ib[1], ~0);
188 ac_dump_reg(f, R_0301F4_CP_COHER_SIZE, ib[2], ~0);
189 ac_dump_reg(f, R_030230_CP_COHER_SIZE_HI, ib[3], ~0);
190 ac_dump_reg(f, R_0301F8_CP_COHER_BASE, ib[4], ~0);
191 ac_dump_reg(f, R_0301E4_CP_COHER_BASE_HI, ib[5], ~0);
192 print_named_value(f, "POLL_INTERVAL", ib[6], 16);
196 ac_dump_reg(f, R_0301F0_CP_COHER_CNTL, ib[1], ~0);
197 ac_dump_reg(f, R_0301F4_CP_COHER_SIZE, ib[2], ~0);
198 ac_dump_reg(f, R_0301F8_CP_COHER_BASE, ib[3], ~0);
200 ac_dump_reg(f, R_0085F0_CP_COHER_CNTL, ib[1], ~0);
201 ac_dump_reg(f, R_0085F4_CP_COHER_SIZE, ib[2], ~0);
202 ac_dump_reg(f, R_0085F8_CP_COHER_BASE, ib[3], ~0);
204 print_named_value(f, "POLL_INTERVAL", ib[4], 16);
207 ac_dump_reg(f, R_028A90_VGT_EVENT_INITIATOR, ib[1],
209 print_named_value(f, "EVENT_INDEX", (ib[1] >> 8) & 0xf, 4);
210 print_named_value(f, "INV_L2", (ib[1] >> 20) & 0x1, 1);
212 print_named_value(f, "ADDRESS_LO", ib[2], 32);
213 print_named_value(f, "ADDRESS_HI", ib[3], 16);
217 ac_dump_reg(f, R_030930_VGT_NUM_INDICES, ib[1], ~0);
218 ac_dump_reg(f, R_0287F0_VGT_DRAW_INITIATOR, ib[2], ~0);
221 ac_dump_reg(f, R_028A78_VGT_DMA_MAX_SIZE, ib[1], ~0);
222 ac_dump_reg(f, R_0287E8_VGT_DMA_BASE, ib[2], ~0);
223 ac_dump_reg(f, R_0287E4_VGT_DMA_BASE_HI, ib[3], ~0);
224 ac_dump_reg(f, R_030930_VGT_NUM_INDICES, ib[4], ~0);
225 ac_dump_reg(f, R_0287F0_VGT_DRAW_INITIATOR, ib[5], ~0);
228 ac_dump_reg(f, R_028A7C_VGT_DMA_INDEX_TYPE, ib[1], ~0);
231 ac_dump_reg(f, R_030934_VGT_NUM_INSTANCES, ib[1], ~0);
234 ac_dump_reg(f, R_370_CONTROL, ib[1], ~0);
235 ac_dump_reg(f, R_371_DST_ADDR_LO, ib[2], ~0);
236 ac_dump_reg(f, R_372_DST_ADDR_HI, ib[3], ~0);
239 fprintf(f, "0x%08x\n", ib[2+i]);
243 ac_dump_reg(f, R_410_CP_DMA_WORD0, ib[1], ~0);
244 ac_dump_reg(f, R_411_CP_DMA_WORD1, ib[2], ~0);
245 ac_dump_reg(f, R_412_CP_DMA_WORD2, ib[3], ~0);
246 ac_dump_reg(f, R_413_CP_DMA_WORD3, ib[4], ~0);
247 ac_dump_reg(f, R_414_COMMAND, ib[5], ~0);
250 ac_dump_reg(f, R_500_DMA_DATA_WORD0, ib[1], ~0);
251 ac_dump_reg(f, R_501_SRC_ADDR_LO, ib[2], ~0);
252 ac_dump_reg(f, R_502_SRC_ADDR_HI, ib[3], ~0);
253 ac_dump_reg(f, R_503_DST_ADDR_LO, ib[4], ~0);
254 ac_dump_reg(f, R_504_DST_ADDR_HI, ib[5], ~0);
255 ac_dump_reg(f, R_414_COMMAND, ib[6], ~0);
260 ac_dump_reg(f, R_3F0_IB_BASE_LO, ib[1], ~0);
261 ac_dump_reg(f, R_3F1_IB_BASE_HI, ib[2], ~0);
262 ac_dump_reg(f, R_3F2_CONTROL, ib[3], ~0);
265 uint64_t addr = ((uint64_t)ib[2] << 32) | ib[1];
267 const char *name = G_3F2_CHAIN(ib[3]) ? "chained" : "nested";
270 ac_parse_ib(f, data, G_3F2_IB_SIZE(ib[3]),
280 if (ib[0] == 0xffff1000) {
283 } else if (count == 0 && AC_IS_TRACE_POINT(ib[1])) {
284 unsigned packet_id = AC_GET_TRACE_POINT_ID(ib[1]);
318 fprintf(f, "0x%08x\n", ib[1+i]);
322 ib += count + 2;
324 return ib;
328 * Parse and print an IB into a file.
331 * \param ib IB
332 * \param num_dw size of the IB
336 * \param addr_callback Get a mapped pointer of the IB at a given address. Can
340 void ac_parse_ib(FILE *f, uint32_t *ib, int num_dw, int trace_id,
347 unsigned type = PKT_TYPE_G(ib[0]);
351 ib = ac_parse_packet3(f, ib, &num_dw, trace_id,
357 if (ib[0] == 0x80000000) {
359 ib++;
372 printf("Packet ends after the end of IB.\n");