diff options
Diffstat (limited to 'r600_scheduler.c')
-rw-r--r-- | r600_scheduler.c | 42 |
1 files changed, 21 insertions, 21 deletions
diff --git a/r600_scheduler.c b/r600_scheduler.c index fb02dd0..6114e3a 100644 --- a/r600_scheduler.c +++ b/r600_scheduler.c @@ -61,7 +61,7 @@ static void r600_emit_flush(struct r600_winsys *rdev, RADEON_GEM_DOMAIN_GTT); } -void r600_atom_flush_add(struct r600_batch *batch, struct radeon_bo *bo, u32 flags) +void r600_atom_flush_add(struct r600_work *batch, struct radeon_bo *bo, u32 flags) { int i; @@ -81,16 +81,16 @@ void r600_atom_flush_add(struct r600_batch *batch, struct radeon_bo *bo, u32 fla */ static void r600_scheduler_clear_locked(struct r600_winsys *rw, struct r600_scheduler *scheduler) { - struct r600_batch *batch, *n; + struct r600_work *batch, *n; int i, j; - for (i = 0; i < scheduler->nbatch; i++) { + for (i = 0; i < scheduler->nwork; i++) { for (j = 0; j < R600_BATCH_NATOMS; j++) { - r600_atom_destroy(scheduler->batch[i].atoms[j]); + r600_atom_destroy(scheduler->work[i].atoms[j]); } } scheduler->ib->cpkts = 0; - scheduler->nbatch = 0; + scheduler->nwork = 0; r700_scheduler_states_default(rw, scheduler); scheduler->npkts = scheduler->ib->cpkts; } @@ -100,21 +100,21 @@ int r600_scheduler_flush(struct r600_winsys *rw) struct r600_scheduler *scheduler = &rw->scheduler; int r, i, j; - for (i = 0; i < scheduler->nbatch; i++) { - for (j = 0; j < scheduler->batch[i].nflush; j++) { + for (i = 0; i < scheduler->nwork; i++) { + for (j = 0; j < scheduler->work[i].nflush; j++) { r600_emit_flush(rw, scheduler->ib, - scheduler->batch[i].flush[j].bo, - scheduler->batch[i].flush[j].flags); + scheduler->work[i].flush[j].bo, + scheduler->work[i].flush[j].flags); } - for (j = 0; j < scheduler->batch[i].nemit_atoms; j++) { - r = scheduler->batch[i].emit_atoms[j]->emit(rw, - scheduler->batch[i].emit_atoms[j], - &scheduler->batch[i], + for (j = 0; j < scheduler->work[i].nemit_atoms; j++) { + r = scheduler->work[i].emit_atoms[j]->emit(rw, + scheduler->work[i].emit_atoms[j], + &scheduler->work[i], scheduler->ib); if (r) goto out_err; } - r = r600_draw_cmd_emit(scheduler->ib, &scheduler->batch[i].drm); + r = r600_draw_cmd_emit(scheduler->ib, &scheduler->work[i].drm); /* flush + wait until */ scheduler->ib->ptr[scheduler->ib->cpkts++] = PKT3(PKT3_EVENT_WRITE, 0); scheduler->ib->ptr[scheduler->ib->cpkts++] = 0x00000016; @@ -134,18 +134,18 @@ out_err: int r600_scheduler_queue(struct r600_winsys *rw, struct r600_request *rq) { - struct drm_r600_batch *batch = rq->data; - struct r600_batch *rbatch; + struct r600_batch *batch = rq->data; + struct r600_work *rbatch; struct r600_scheduler *scheduler = &rw->scheduler; int r, i, j; - if (scheduler->nbatch >= R600_MAX_BATCH) { + if (scheduler->nwork >= R600_MAX_WORK) { r = r600_scheduler_flush(rw); if (r) return r; } - rbatch = &scheduler->batch[scheduler->nbatch]; - memset(rbatch, 0, sizeof(struct r600_batch)); + rbatch = &scheduler->work[scheduler->nwork]; + memset(rbatch, 0, sizeof(struct r600_work)); i = 0; if (batch->blend == NULL || batch->cb_cntl == NULL || batch->rasterizer == NULL || batch->viewport == NULL || @@ -171,7 +171,7 @@ int r600_scheduler_queue(struct r600_winsys *rw, struct r600_request *rq) for (i = 0; i < R600_BATCH_NATOMS; i++) { r600_atom_ref(rbatch->atoms[i]); } - memcpy(&rbatch->drm, batch, sizeof(struct drm_r600_batch)); + memcpy(&rbatch->drm, batch, sizeof(struct r600_batch)); reprocess: rbatch->nflush = 0; rbatch->npkts = 0; @@ -212,7 +212,7 @@ reprocess: } printf("batch %d dw scheduler with %d dw\n", rbatch->npkts, scheduler->npkts); scheduler->npkts += rbatch->npkts; - scheduler->nbatch++; + scheduler->nwork++; return 0; out_err: for (i = 0; i < R600_BATCH_NATOMS; i++) { |