Lines Matching refs:kernel
97 static struct kernel *
107 a6xx_disassemble(struct kernel *kernel, FILE *out)
109 ir3_asm_disassemble(to_ir3_kernel(kernel), out);
113 cs_program_emit(struct fd_ringbuffer *ring, struct kernel *kernel)
115 struct ir3_kernel *ir3_kernel = to_ir3_kernel(kernel);
145 A6XX_SP_CS_CONFIG_NIBO(kernel->num_bufs) |
259 cs_const_emit(struct fd_ringbuffer *ring, struct kernel *kernel,
262 struct ir3_kernel *ir3_kernel = to_ir3_kernel(kernel);
278 if (kernel->buf_addr_regs[i] != INVALID_REG) {
279 assert((kernel->buf_addr_regs[i] & 0x3) == 0);
280 int idx = kernel->buf_addr_regs[i] >> 2;
282 uint64_t iova = fd_bo_get_iova(kernel->bufs[i]);
305 struct kernel *kernel)
308 submit, kernel->num_bufs * 16 * 4, FD_RINGBUFFER_STREAMING);
310 for (unsigned i = 0; i < kernel->num_bufs; i++) {
314 unsigned sz = kernel->buf_sizes[i];
323 OUT_RELOC(state, kernel->bufs[i], 0, 0, 0);
341 CP_LOAD_STATE6_0_NUM_UNIT(kernel->num_bufs));
348 OUT_RING(ring, kernel->num_bufs);
354 event_write(struct fd_ringbuffer *ring, struct kernel *kernel,
362 struct ir3_kernel *ir3_kernel = to_ir3_kernel(kernel);
373 cache_flush(struct fd_ringbuffer *ring, struct kernel *kernel)
375 struct ir3_kernel *ir3_kernel = to_ir3_kernel(kernel);
379 seqno = event_write(ring, kernel, RB_DONE_TS, true);
389 seqno = event_write(ring, kernel, CACHE_FLUSH_TS, true);
398 a6xx_emit_grid(struct kernel *kernel, uint32_t grid[3],
401 struct ir3_kernel *ir3_kernel = to_ir3_kernel(kernel);
406 cs_program_emit(ring, kernel);
407 cs_const_emit(ring, kernel, grid);
408 cs_ibo_emit(ring, submit, kernel);
413 const unsigned *local_size = kernel->local_size;
502 cache_flush(ring, kernel);