diff options
author | Lakshmanan M <lm@nvidia.com> | 2016-06-02 00:04:46 -0400 |
---|---|---|
committer | Terje Bergstrom <tbergstrom@nvidia.com> | 2016-06-07 15:31:34 -0400 |
commit | 6299b00beb9dabdd53c211b02658d022827b3232 (patch) | |
tree | 941d8dd8aae8f7f8c73329e182984c36a5a9bf88 /drivers/gpu/nvgpu/gm20b/gr_gm20b.c | |
parent | 3d7263d3cafdcfc57a6d6b9f829562845d116294 (diff) |
gpu: nvgpu: Add multiple engine and runlist support
This CL covers the following modification,
1) Added multiple engine_info support
2) Added multiple runlist_info support
3) Initial changes for ASYNC CE support
4) Added ASYNC CE interrupt handling support
for gm206 GPU family
5) Added generic mechanism to identify the
CE engine pri_base address for gm206
(CE0, CE1 and CE2)
6) Removed hard coded engine_id logic and
made generic way
7) Code cleanup for readability
JIRA DNVGPU-26
Change-Id: I2c3846c40bcc8d10c2dfb225caa4105fc9123b65
Signed-off-by: Lakshmanan M <lm@nvidia.com>
Reviewed-on: http://git-master/r/1155963
Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Tested-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gm20b/gr_gm20b.c')
-rw-r--r-- | drivers/gpu/nvgpu/gm20b/gr_gm20b.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/gm20b/gr_gm20b.c b/drivers/gpu/nvgpu/gm20b/gr_gm20b.c index d5131b7a..cc709c78 100644 --- a/drivers/gpu/nvgpu/gm20b/gr_gm20b.c +++ b/drivers/gpu/nvgpu/gm20b/gr_gm20b.c | |||
@@ -855,6 +855,9 @@ static int gr_gm20b_dump_gr_status_regs(struct gk20a *g, | |||
855 | struct gk20a_debug_output *o) | 855 | struct gk20a_debug_output *o) |
856 | { | 856 | { |
857 | struct gr_gk20a *gr = &g->gr; | 857 | struct gr_gk20a *gr = &g->gr; |
858 | u32 gr_engine_id; | ||
859 | |||
860 | gr_engine_id = gk20a_fifo_get_gr_engine_id(g); | ||
858 | 861 | ||
859 | gk20a_debug_output(o, "NV_PGRAPH_STATUS: 0x%x\n", | 862 | gk20a_debug_output(o, "NV_PGRAPH_STATUS: 0x%x\n", |
860 | gk20a_readl(g, gr_status_r())); | 863 | gk20a_readl(g, gr_status_r())); |
@@ -875,7 +878,7 @@ static int gr_gm20b_dump_gr_status_regs(struct gk20a *g, | |||
875 | gk20a_debug_output(o, "NV_PGRAPH_FECS_INTR : 0x%x\n", | 878 | gk20a_debug_output(o, "NV_PGRAPH_FECS_INTR : 0x%x\n", |
876 | gk20a_readl(g, gr_fecs_intr_r())); | 879 | gk20a_readl(g, gr_fecs_intr_r())); |
877 | gk20a_debug_output(o, "NV_PFIFO_ENGINE_STATUS(GR) : 0x%x\n", | 880 | gk20a_debug_output(o, "NV_PFIFO_ENGINE_STATUS(GR) : 0x%x\n", |
878 | gk20a_readl(g, fifo_engine_status_r(ENGINE_GR_GK20A))); | 881 | gk20a_readl(g, fifo_engine_status_r(gr_engine_id))); |
879 | gk20a_debug_output(o, "NV_PGRAPH_ACTIVITY0: 0x%x\n", | 882 | gk20a_debug_output(o, "NV_PGRAPH_ACTIVITY0: 0x%x\n", |
880 | gk20a_readl(g, gr_activity_0_r())); | 883 | gk20a_readl(g, gr_activity_0_r())); |
881 | gk20a_debug_output(o, "NV_PGRAPH_ACTIVITY1: 0x%x\n", | 884 | gk20a_debug_output(o, "NV_PGRAPH_ACTIVITY1: 0x%x\n", |