Loading drivers/gpu/host1x/cdma.c +6 −2 Original line number Diff line number Diff line Loading @@ -247,6 +247,7 @@ static void update_cdma_locked(struct host1x_cdma *cdma) /* Pop push buffer slots */ if (job->num_slots) { struct push_buffer *pb = &cdma->push_buffer; host1x_pushbuffer_pop(pb, job->num_slots); if (cdma->event == CDMA_EVENT_PUSH_BUFFER_SPACE) signal = true; Loading Loading @@ -342,9 +343,11 @@ void host1x_cdma_update_sync_queue(struct host1x_cdma *cdma, syncpt_val += syncpt_incrs; } /* The following sumbits from the same client may be dependent on the /* * The following sumbits from the same client may be dependent on the * failed submit and therefore they may fail. Force a small timeout * to make the queue cleanup faster */ * to make the queue cleanup faster. */ list_for_each_entry_from(job, &cdma->sync_queue, list) if (job->client == cdma->timeout.client) Loading Loading @@ -410,6 +413,7 @@ int host1x_cdma_begin(struct host1x_cdma *cdma, struct host1x_job *job) /* init state on first submit with timeout value */ if (!cdma->timeout.initialized) { int err; err = host1x_hw_cdma_timeout_init(host1x, cdma, job->syncpt_id); if (err) { Loading drivers/gpu/host1x/debug.c +3 −0 Original line number Diff line number Diff line Loading @@ -63,10 +63,12 @@ static int show_channels(struct host1x_channel *ch, void *data, bool show_fifo) static void show_syncpts(struct host1x *m, struct output *o) { unsigned int i; host1x_debug_output(o, "---- syncpts ----\n"); for (i = 0; i < host1x_syncpt_nb_pts(m); i++) { u32 max = host1x_syncpt_read_max(m->syncpt + i); u32 min = host1x_syncpt_load(m->syncpt + i); if (!min && !max) continue; Loading @@ -76,6 +78,7 @@ static void show_syncpts(struct host1x *m, struct output *o) for (i = 0; i < host1x_syncpt_nb_bases(m); i++) { u32 base_val; base_val = host1x_syncpt_load_wait_base(m->syncpt + i); if (base_val) host1x_debug_output(o, "waitbase id %u val %d\n", i, Loading drivers/gpu/host1x/dev.c +1 −1 Original line number Diff line number Diff line Loading @@ -102,7 +102,7 @@ static const struct host1x_info host1x05_info = { .dma_mask = DMA_BIT_MASK(34), }; static struct of_device_id host1x_of_match[] = { static const struct of_device_id host1x_of_match[] = { { .compatible = "nvidia,tegra210-host1x", .data = &host1x05_info, }, { .compatible = "nvidia,tegra124-host1x", .data = &host1x04_info, }, { .compatible = "nvidia,tegra114-host1x", .data = &host1x02_info, }, Loading drivers/gpu/host1x/hw/debug_hw.c +3 −4 Original line number Diff line number Diff line Loading @@ -51,12 +51,11 @@ static unsigned int show_channel_command(struct output *o, u32 val) val >> 6 & 0x3ff, val >> 16 & 0xfff, mask); return hweight8(mask); } else { host1x_debug_output(o, "SETCL(class=%03x)\n", val >> 6 & 0x3ff); return 0; } host1x_debug_output(o, "SETCL(class=%03x)\n", val >> 6 & 0x3ff); return 0; case HOST1X_OPCODE_INCR: host1x_debug_output(o, "INCR(offset=%03x, [", val >> 16 & 0xfff); Loading drivers/gpu/host1x/hw/syncpt_hw.c +2 −0 Original line number Diff line number Diff line Loading @@ -38,6 +38,7 @@ static void syncpt_restore(struct host1x_syncpt *sp) static void syncpt_restore_wait_base(struct host1x_syncpt *sp) { struct host1x *host = sp->host; host1x_sync_writel(host, sp->base_val, HOST1X_SYNC_SYNCPT_BASE(sp->id)); } Loading @@ -48,6 +49,7 @@ static void syncpt_restore_wait_base(struct host1x_syncpt *sp) static void syncpt_read_wait_base(struct host1x_syncpt *sp) { struct host1x *host = sp->host; sp->base_val = host1x_sync_readl(host, HOST1X_SYNC_SYNCPT_BASE(sp->id)); } Loading Loading
drivers/gpu/host1x/cdma.c +6 −2 Original line number Diff line number Diff line Loading @@ -247,6 +247,7 @@ static void update_cdma_locked(struct host1x_cdma *cdma) /* Pop push buffer slots */ if (job->num_slots) { struct push_buffer *pb = &cdma->push_buffer; host1x_pushbuffer_pop(pb, job->num_slots); if (cdma->event == CDMA_EVENT_PUSH_BUFFER_SPACE) signal = true; Loading Loading @@ -342,9 +343,11 @@ void host1x_cdma_update_sync_queue(struct host1x_cdma *cdma, syncpt_val += syncpt_incrs; } /* The following sumbits from the same client may be dependent on the /* * The following sumbits from the same client may be dependent on the * failed submit and therefore they may fail. Force a small timeout * to make the queue cleanup faster */ * to make the queue cleanup faster. */ list_for_each_entry_from(job, &cdma->sync_queue, list) if (job->client == cdma->timeout.client) Loading Loading @@ -410,6 +413,7 @@ int host1x_cdma_begin(struct host1x_cdma *cdma, struct host1x_job *job) /* init state on first submit with timeout value */ if (!cdma->timeout.initialized) { int err; err = host1x_hw_cdma_timeout_init(host1x, cdma, job->syncpt_id); if (err) { Loading
drivers/gpu/host1x/debug.c +3 −0 Original line number Diff line number Diff line Loading @@ -63,10 +63,12 @@ static int show_channels(struct host1x_channel *ch, void *data, bool show_fifo) static void show_syncpts(struct host1x *m, struct output *o) { unsigned int i; host1x_debug_output(o, "---- syncpts ----\n"); for (i = 0; i < host1x_syncpt_nb_pts(m); i++) { u32 max = host1x_syncpt_read_max(m->syncpt + i); u32 min = host1x_syncpt_load(m->syncpt + i); if (!min && !max) continue; Loading @@ -76,6 +78,7 @@ static void show_syncpts(struct host1x *m, struct output *o) for (i = 0; i < host1x_syncpt_nb_bases(m); i++) { u32 base_val; base_val = host1x_syncpt_load_wait_base(m->syncpt + i); if (base_val) host1x_debug_output(o, "waitbase id %u val %d\n", i, Loading
drivers/gpu/host1x/dev.c +1 −1 Original line number Diff line number Diff line Loading @@ -102,7 +102,7 @@ static const struct host1x_info host1x05_info = { .dma_mask = DMA_BIT_MASK(34), }; static struct of_device_id host1x_of_match[] = { static const struct of_device_id host1x_of_match[] = { { .compatible = "nvidia,tegra210-host1x", .data = &host1x05_info, }, { .compatible = "nvidia,tegra124-host1x", .data = &host1x04_info, }, { .compatible = "nvidia,tegra114-host1x", .data = &host1x02_info, }, Loading
drivers/gpu/host1x/hw/debug_hw.c +3 −4 Original line number Diff line number Diff line Loading @@ -51,12 +51,11 @@ static unsigned int show_channel_command(struct output *o, u32 val) val >> 6 & 0x3ff, val >> 16 & 0xfff, mask); return hweight8(mask); } else { host1x_debug_output(o, "SETCL(class=%03x)\n", val >> 6 & 0x3ff); return 0; } host1x_debug_output(o, "SETCL(class=%03x)\n", val >> 6 & 0x3ff); return 0; case HOST1X_OPCODE_INCR: host1x_debug_output(o, "INCR(offset=%03x, [", val >> 16 & 0xfff); Loading
drivers/gpu/host1x/hw/syncpt_hw.c +2 −0 Original line number Diff line number Diff line Loading @@ -38,6 +38,7 @@ static void syncpt_restore(struct host1x_syncpt *sp) static void syncpt_restore_wait_base(struct host1x_syncpt *sp) { struct host1x *host = sp->host; host1x_sync_writel(host, sp->base_val, HOST1X_SYNC_SYNCPT_BASE(sp->id)); } Loading @@ -48,6 +49,7 @@ static void syncpt_restore_wait_base(struct host1x_syncpt *sp) static void syncpt_read_wait_base(struct host1x_syncpt *sp) { struct host1x *host = sp->host; sp->base_val = host1x_sync_readl(host, HOST1X_SYNC_SYNCPT_BASE(sp->id)); } Loading