aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/host1x/job.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/host1x/job.c')
-rw-r--r--drivers/gpu/host1x/job.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/gpu/host1x/job.c b/drivers/gpu/host1x/job.c
index b4515d544039..a91b7c4a6110 100644
--- a/drivers/gpu/host1x/job.c
+++ b/drivers/gpu/host1x/job.c
@@ -161,7 +161,7 @@ static int do_waitchks(struct host1x_job *job, struct host1x *host,
161 161
162 if (host1x_syncpt_is_expired(sp, wait->thresh)) { 162 if (host1x_syncpt_is_expired(sp, wait->thresh)) {
163 dev_dbg(host->dev, 163 dev_dbg(host->dev,
164 "drop WAIT id %d (%s) thresh 0x%x, min 0x%x\n", 164 "drop WAIT id %u (%s) thresh 0x%x, min 0x%x\n",
165 wait->syncpt_id, sp->name, wait->thresh, 165 wait->syncpt_id, sp->name, wait->thresh,
166 host1x_syncpt_read_min(sp)); 166 host1x_syncpt_read_min(sp));
167 167
@@ -464,6 +464,7 @@ static inline int copy_gathers(struct host1x_job *job, struct device *dev)
464 464
465 for (i = 0; i < job->num_gathers; i++) { 465 for (i = 0; i < job->num_gathers; i++) {
466 struct host1x_job_gather *g = &job->gathers[i]; 466 struct host1x_job_gather *g = &job->gathers[i];
467
467 size += g->words * sizeof(u32); 468 size += g->words * sizeof(u32);
468 } 469 }
469 470
@@ -514,6 +515,7 @@ int host1x_job_pin(struct host1x_job *job, struct device *dev)
514 bitmap_zero(waitchk_mask, host1x_syncpt_nb_pts(host)); 515 bitmap_zero(waitchk_mask, host1x_syncpt_nb_pts(host));
515 for (i = 0; i < job->num_waitchk; i++) { 516 for (i = 0; i < job->num_waitchk; i++) {
516 u32 syncpt_id = job->waitchk[i].syncpt_id; 517 u32 syncpt_id = job->waitchk[i].syncpt_id;
518
517 if (syncpt_id < host1x_syncpt_nb_pts(host)) 519 if (syncpt_id < host1x_syncpt_nb_pts(host))
518 set_bit(syncpt_id, waitchk_mask); 520 set_bit(syncpt_id, waitchk_mask);
519 } 521 }
@@ -571,14 +573,16 @@ void host1x_job_unpin(struct host1x_job *job)
571 573
572 for (i = 0; i < job->num_unpins; i++) { 574 for (i = 0; i < job->num_unpins; i++) {
573 struct host1x_job_unpin_data *unpin = &job->unpins[i]; 575 struct host1x_job_unpin_data *unpin = &job->unpins[i];
576
574 host1x_bo_unpin(unpin->bo, unpin->sgt); 577 host1x_bo_unpin(unpin->bo, unpin->sgt);
575 host1x_bo_put(unpin->bo); 578 host1x_bo_put(unpin->bo);
576 } 579 }
580
577 job->num_unpins = 0; 581 job->num_unpins = 0;
578 582
579 if (job->gather_copy_size) 583 if (job->gather_copy_size)
580 dma_free_wc(job->channel->dev, job->gather_copy_size, 584 dma_free_wc(job->channel->dev, job->gather_copy_size,
581 job->gather_copy_mapped, job->gather_copy); 585 job->gather_copy_mapped, job->gather_copy);
582} 586}
583EXPORT_SYMBOL(host1x_job_unpin); 587EXPORT_SYMBOL(host1x_job_unpin);
584 588