summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/flcn_gk20a.c
diff options
context:
space:
mode:
authorMahantesh Kumbar <mkumbar@nvidia.com>2018-07-11 05:30:45 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2018-07-31 04:25:41 -0400
commit2d454db04fcc0c03e05b4665831e5780240d79b8 (patch)
treec18fd4bc302ea68e57e1e1d95c0f253e800bc043 /drivers/gpu/nvgpu/gk20a/flcn_gk20a.c
parentd32692ae2427693daf85b3c7b4e24cd36471dec6 (diff)
gpu: nvgpu: falcon queue support
-Renamed "struct pmu_queue" to "struct nvgpu_falcon_queue" & moved to falcon.h -Renamed pmu_queue_* functions to flcn_queue_* & moved to new file falcon_queue.c -Created ops for queue functions in struct nvgpu_falcon_queue to support different queue types like DMEM/FB-Q. -Created ops in nvgpu_falcon_engine_dependency_ops to add engine specific queue functionality & assigned correct HAL functions in hal*.c file. -Made changes in dependent functions as needed to replace struct pmu_queue & calling queue functions using nvgpu_falcon_queue data structure. -Replaced input param "struct nvgpu_pmu *pmu" with "struct gk20a *g" for pmu ops pmu_queue_head/pmu_queue_tail & also for functions gk20a_pmu_queue_head()/ gk20a_pmu_queue_tail(). -Made changes in nvgpu_pmu_queue_init() to use nvgpu_falcon_queue for PMU queue. -Modified Makefile to include falcon_queue.o -Modified Makefile.sources to include falcon_queue.c Change-Id: I956328f6631b7154267fd5a29eaa1826190d99d1 Signed-off-by: Mahantesh Kumbar <mkumbar@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1776070 Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/flcn_gk20a.c')
-rw-r--r--drivers/gpu/nvgpu/gk20a/flcn_gk20a.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/flcn_gk20a.c b/drivers/gpu/nvgpu/gk20a/flcn_gk20a.c
index 9ca7d91b..c55b90b6 100644
--- a/drivers/gpu/nvgpu/gk20a/flcn_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/flcn_gk20a.c
@@ -649,12 +649,15 @@ void gk20a_falcon_dump_stats(struct nvgpu_falcon *flcn)
649 649
650static void gk20a_falcon_engine_dependency_ops(struct nvgpu_falcon *flcn) 650static void gk20a_falcon_engine_dependency_ops(struct nvgpu_falcon *flcn)
651{ 651{
652 struct gk20a *g = flcn->g;
652 struct nvgpu_falcon_engine_dependency_ops *flcn_eng_dep_ops = 653 struct nvgpu_falcon_engine_dependency_ops *flcn_eng_dep_ops =
653 &flcn->flcn_engine_dep_ops; 654 &flcn->flcn_engine_dep_ops;
654 655
655 switch (flcn->flcn_id) { 656 switch (flcn->flcn_id) {
656 case FALCON_ID_PMU: 657 case FALCON_ID_PMU:
657 flcn_eng_dep_ops->reset_eng = nvgpu_pmu_reset; 658 flcn_eng_dep_ops->reset_eng = nvgpu_pmu_reset;
659 flcn_eng_dep_ops->queue_head = g->ops.pmu.pmu_queue_head;
660 flcn_eng_dep_ops->queue_tail = g->ops.pmu.pmu_queue_tail;
658 break; 661 break;
659 default: 662 default:
660 /* NULL assignment make sure 663 /* NULL assignment make sure