gpu: nvgpu: move poll and trace read APIs to gr/fecs_trace

Remove below calls from fecs_trace_gk20a.c
gk20a_fecs_trace_ring_read()
gk20a_fecs_trace_poll()
gk20a_fecs_trace_periodic_polling()
gk20a_fecs_trace_reset()

And move them to common gr/fecs_trace unit with below renames
nvgpu_gr_fecs_trace_ring_read()
nvgpu_gr_fecs_trace_poll()
nvgpu_gr_fecs_trace_periodic_polling()
nvgpu_gr_fecs_trace_reset()

Also update above calls to support QNX use cases by adding
vm_update_mask as a parameter

Add below HALs for QNX support. These HALs will not be set for linux
g->ops.fecs_trace.vm_dev_write()
g->ops.fecs_trace.vm_dev_update()

Jira NVGPU-1880

Change-Id: Idc305b9288a1df5ca86622b95d6e62a23fdfde7e
Signed-off-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/2029258
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit is contained in:
Deepak Nibade
2019-02-26 16:57:07 +05:30
committed by mobile promotions
parent 30ea13e5e3
commit 11757aabbd
10 changed files with 258 additions and 221 deletions

View File

@@ -392,10 +392,11 @@ int gk20a_ctxsw_dev_release(struct inode *inode, struct file *filp)
nvgpu_log(g, gpu_dbg_fn|gpu_dbg_ctxsw, "dev: %p", dev);
g->ops.fecs_trace.disable(g);
nvgpu_mutex_acquire(&dev->write_lock);
dev->write_enabled = false;
if (dev->write_enabled) {
dev->write_enabled = false;
g->ops.fecs_trace.disable(g);
}
nvgpu_mutex_release(&dev->write_lock);
if (dev->hdr) {