summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSrikar Srimath Tirumala <srikars@nvidia.com>2018-02-26 18:29:36 -0500
committerSrikar Srimath Tirumala <srikars@nvidia.com>2018-02-26 22:01:16 -0500
commita26de1185a9cc894d37ea826f67ba4f34a646fb3 (patch)
tree46978009c79ebc707502a25fd298bad80f4bdb57
parentc0196d50032c218b83cc6e5a655bc82fe75c45f7 (diff)
Revert "gpu: nvgpu: Use gv11b_css_hw_set_handled_snapshots for GV11B"
This reverts commit 2f2e51bbae39009d0305f6aaf01596571a8f5d5c. Bug 2068936 Change-Id: I539cdc12a3bd0d9d7fe0ce7dbe9cb7a274eeaa57 Signed-off-by: Srikar Srimath Tirumala <srikars@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1664647 Reviewed-by: Alex Waterman <alexw@nvidia.com> Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com> GVS: Gerrit_Virtual_Submit
-rw-r--r--drivers/gpu/nvgpu/gk20a/css_gr_gk20a.c4
-rw-r--r--drivers/gpu/nvgpu/gk20a/css_gr_gk20a.h2
-rw-r--r--drivers/gpu/nvgpu/gm20b/hal_gm20b.c2
-rw-r--r--drivers/gpu/nvgpu/gp106/hal_gp106.c2
-rw-r--r--drivers/gpu/nvgpu/gp10b/hal_gp10b.c2
-rw-r--r--drivers/gpu/nvgpu/gv100/hal_gv100.c2
-rw-r--r--drivers/gpu/nvgpu/gv11b/css_gr_gv11b.c20
-rw-r--r--drivers/gpu/nvgpu/gv11b/css_gr_gv11b.h1
-rw-r--r--drivers/gpu/nvgpu/gv11b/hal_gv11b.c2
9 files changed, 17 insertions, 20 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/css_gr_gk20a.c b/drivers/gpu/nvgpu/gk20a/css_gr_gk20a.c
index 60ba875f..114386a2 100644
--- a/drivers/gpu/nvgpu/gk20a/css_gr_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/css_gr_gk20a.c
@@ -75,7 +75,7 @@ static inline u32 css_hw_get_pending_snapshots(struct gk20a *g)
75} 75}
76 76
77/* informs hw how many snapshots have been processed (frees up fifo space) */ 77/* informs hw how many snapshots have been processed (frees up fifo space) */
78void gk20a_css_hw_set_handled_snapshots(struct gk20a *g, u32 done) 78void css_hw_set_handled_snapshots(struct gk20a *g, u32 done)
79{ 79{
80 if (done > 0) { 80 if (done > 0) {
81 gk20a_writel(g, perf_pmasys_mem_bump_r(), 81 gk20a_writel(g, perf_pmasys_mem_bump_r(),
@@ -102,7 +102,7 @@ static void css_hw_reset_streaming(struct gk20a *g)
102 perf_pmasys_control_membuf_clear_status_doit_f()); 102 perf_pmasys_control_membuf_clear_status_doit_f());
103 103
104 /* pointing all pending snapshots as handled */ 104 /* pointing all pending snapshots as handled */
105 gk20a_css_hw_set_handled_snapshots(g, css_hw_get_pending_snapshots(g)); 105 css_hw_set_handled_snapshots(g, css_hw_get_pending_snapshots(g));
106} 106}
107 107
108/* 108/*
diff --git a/drivers/gpu/nvgpu/gk20a/css_gr_gk20a.h b/drivers/gpu/nvgpu/gk20a/css_gr_gk20a.h
index 12e1903a..bee8f4fb 100644
--- a/drivers/gpu/nvgpu/gk20a/css_gr_gk20a.h
+++ b/drivers/gpu/nvgpu/gk20a/css_gr_gk20a.h
@@ -129,7 +129,7 @@ struct gk20a_cs_snapshot {
129 struct gk20a_cs_snapshot_fifo_entry *hw_get; 129 struct gk20a_cs_snapshot_fifo_entry *hw_get;
130}; 130};
131 131
132void gk20a_css_hw_set_handled_snapshots(struct gk20a *g, u32 done); 132void css_hw_set_handled_snapshots(struct gk20a *g, u32 done);
133int css_hw_enable_snapshot(struct channel_gk20a *ch, 133int css_hw_enable_snapshot(struct channel_gk20a *ch,
134 struct gk20a_cs_snapshot_client *cs_client); 134 struct gk20a_cs_snapshot_client *cs_client);
135void css_hw_disable_snapshot(struct gr_gk20a *gr); 135void css_hw_disable_snapshot(struct gr_gk20a *gr);
diff --git a/drivers/gpu/nvgpu/gm20b/hal_gm20b.c b/drivers/gpu/nvgpu/gm20b/hal_gm20b.c
index a2541460..b3efdc8a 100644
--- a/drivers/gpu/nvgpu/gm20b/hal_gm20b.c
+++ b/drivers/gpu/nvgpu/gm20b/hal_gm20b.c
@@ -577,7 +577,7 @@ static const struct gpu_ops gm20b_ops = {
577 .enable_snapshot = css_hw_enable_snapshot, 577 .enable_snapshot = css_hw_enable_snapshot,
578 .disable_snapshot = css_hw_disable_snapshot, 578 .disable_snapshot = css_hw_disable_snapshot,
579 .check_data_available = css_hw_check_data_available, 579 .check_data_available = css_hw_check_data_available,
580 .set_handled_snapshots = gk20a_css_hw_set_handled_snapshots, 580 .set_handled_snapshots = css_hw_set_handled_snapshots,
581 .allocate_perfmon_ids = css_gr_allocate_perfmon_ids, 581 .allocate_perfmon_ids = css_gr_allocate_perfmon_ids,
582 .release_perfmon_ids = css_gr_release_perfmon_ids, 582 .release_perfmon_ids = css_gr_release_perfmon_ids,
583 }, 583 },
diff --git a/drivers/gpu/nvgpu/gp106/hal_gp106.c b/drivers/gpu/nvgpu/gp106/hal_gp106.c
index f98f2772..502a6778 100644
--- a/drivers/gpu/nvgpu/gp106/hal_gp106.c
+++ b/drivers/gpu/nvgpu/gp106/hal_gp106.c
@@ -689,7 +689,7 @@ static const struct gpu_ops gp106_ops = {
689 .enable_snapshot = css_hw_enable_snapshot, 689 .enable_snapshot = css_hw_enable_snapshot,
690 .disable_snapshot = css_hw_disable_snapshot, 690 .disable_snapshot = css_hw_disable_snapshot,
691 .check_data_available = css_hw_check_data_available, 691 .check_data_available = css_hw_check_data_available,
692 .set_handled_snapshots = gk20a_css_hw_set_handled_snapshots, 692 .set_handled_snapshots = css_hw_set_handled_snapshots,
693 .allocate_perfmon_ids = css_gr_allocate_perfmon_ids, 693 .allocate_perfmon_ids = css_gr_allocate_perfmon_ids,
694 .release_perfmon_ids = css_gr_release_perfmon_ids, 694 .release_perfmon_ids = css_gr_release_perfmon_ids,
695 }, 695 },
diff --git a/drivers/gpu/nvgpu/gp10b/hal_gp10b.c b/drivers/gpu/nvgpu/gp10b/hal_gp10b.c
index bbb43cc8..91ebab55 100644
--- a/drivers/gpu/nvgpu/gp10b/hal_gp10b.c
+++ b/drivers/gpu/nvgpu/gp10b/hal_gp10b.c
@@ -623,7 +623,7 @@ static const struct gpu_ops gp10b_ops = {
623 .enable_snapshot = css_hw_enable_snapshot, 623 .enable_snapshot = css_hw_enable_snapshot,
624 .disable_snapshot = css_hw_disable_snapshot, 624 .disable_snapshot = css_hw_disable_snapshot,
625 .check_data_available = css_hw_check_data_available, 625 .check_data_available = css_hw_check_data_available,
626 .set_handled_snapshots = gk20a_css_hw_set_handled_snapshots, 626 .set_handled_snapshots = css_hw_set_handled_snapshots,
627 .allocate_perfmon_ids = css_gr_allocate_perfmon_ids, 627 .allocate_perfmon_ids = css_gr_allocate_perfmon_ids,
628 .release_perfmon_ids = css_gr_release_perfmon_ids, 628 .release_perfmon_ids = css_gr_release_perfmon_ids,
629 }, 629 },
diff --git a/drivers/gpu/nvgpu/gv100/hal_gv100.c b/drivers/gpu/nvgpu/gv100/hal_gv100.c
index 1b92f1e7..c380df8d 100644
--- a/drivers/gpu/nvgpu/gv100/hal_gv100.c
+++ b/drivers/gpu/nvgpu/gv100/hal_gv100.c
@@ -699,7 +699,7 @@ static const struct gpu_ops gv100_ops = {
699 .enable_snapshot = gv11b_css_hw_enable_snapshot, 699 .enable_snapshot = gv11b_css_hw_enable_snapshot,
700 .disable_snapshot = gv11b_css_hw_disable_snapshot, 700 .disable_snapshot = gv11b_css_hw_disable_snapshot,
701 .check_data_available = gv11b_css_hw_check_data_available, 701 .check_data_available = gv11b_css_hw_check_data_available,
702 .set_handled_snapshots = gv11b_css_hw_set_handled_snapshots, 702 .set_handled_snapshots = css_hw_set_handled_snapshots,
703 .allocate_perfmon_ids = css_gr_allocate_perfmon_ids, 703 .allocate_perfmon_ids = css_gr_allocate_perfmon_ids,
704 .release_perfmon_ids = css_gr_release_perfmon_ids, 704 .release_perfmon_ids = css_gr_release_perfmon_ids,
705 }, 705 },
diff --git a/drivers/gpu/nvgpu/gv11b/css_gr_gv11b.c b/drivers/gpu/nvgpu/gv11b/css_gr_gv11b.c
index d8ba332b..617ea61d 100644
--- a/drivers/gpu/nvgpu/gv11b/css_gr_gv11b.c
+++ b/drivers/gpu/nvgpu/gv11b/css_gr_gv11b.c
@@ -57,6 +57,15 @@ static inline u32 css_hw_get_pending_snapshots(struct gk20a *g)
57 sizeof(struct gk20a_cs_snapshot_fifo_entry); 57 sizeof(struct gk20a_cs_snapshot_fifo_entry);
58} 58}
59 59
60/* informs hw how many snapshots have been processed (frees up fifo space) */
61static inline void gv11b_css_hw_set_handled_snapshots(struct gk20a *g, u32 done)
62{
63 if (done > 0) {
64 gk20a_writel(g, perf_pmasys_mem_bump_r(),
65 done * sizeof(struct gk20a_cs_snapshot_fifo_entry));
66 }
67}
68
60/* disable streaming to memory */ 69/* disable streaming to memory */
61static void gv11b_css_hw_reset_streaming(struct gk20a *g) 70static void gv11b_css_hw_reset_streaming(struct gk20a *g)
62{ 71{
@@ -77,17 +86,6 @@ static void gv11b_css_hw_reset_streaming(struct gk20a *g)
77 gv11b_css_hw_set_handled_snapshots(g, css_hw_get_pending_snapshots(g)); 86 gv11b_css_hw_set_handled_snapshots(g, css_hw_get_pending_snapshots(g));
78} 87}
79 88
80/* informs hw how many snapshots have been processed (frees up fifo space) */
81void gv11b_css_hw_set_handled_snapshots(struct gk20a *g, u32 done)
82{
83 if (done == 0u) {
84 return;
85 }
86
87 gk20a_writel(g, perf_pmasys_mem_bump_r(),
88 done * sizeof(struct gk20a_cs_snapshot_fifo_entry));
89}
90
91int gv11b_css_hw_enable_snapshot(struct channel_gk20a *ch, 89int gv11b_css_hw_enable_snapshot(struct channel_gk20a *ch,
92 struct gk20a_cs_snapshot_client *cs_client) 90 struct gk20a_cs_snapshot_client *cs_client)
93{ 91{
diff --git a/drivers/gpu/nvgpu/gv11b/css_gr_gv11b.h b/drivers/gpu/nvgpu/gv11b/css_gr_gv11b.h
index 186f5fcc..6b11a62e 100644
--- a/drivers/gpu/nvgpu/gv11b/css_gr_gv11b.h
+++ b/drivers/gpu/nvgpu/gv11b/css_gr_gv11b.h
@@ -30,6 +30,5 @@ int gv11b_css_hw_enable_snapshot(struct channel_gk20a *ch,
30void gv11b_css_hw_disable_snapshot(struct gr_gk20a *gr); 30void gv11b_css_hw_disable_snapshot(struct gr_gk20a *gr);
31int gv11b_css_hw_check_data_available(struct channel_gk20a *ch, u32 *pending, 31int gv11b_css_hw_check_data_available(struct channel_gk20a *ch, u32 *pending,
32 bool *hw_overflow); 32 bool *hw_overflow);
33void gv11b_css_hw_set_handled_snapshots(struct gk20a *g, u32 done);
34 33
35#endif /* CSS_GR_GV11B_H */ 34#endif /* CSS_GR_GV11B_H */
diff --git a/drivers/gpu/nvgpu/gv11b/hal_gv11b.c b/drivers/gpu/nvgpu/gv11b/hal_gv11b.c
index 8d78d524..5282af05 100644
--- a/drivers/gpu/nvgpu/gv11b/hal_gv11b.c
+++ b/drivers/gpu/nvgpu/gv11b/hal_gv11b.c
@@ -688,7 +688,7 @@ static const struct gpu_ops gv11b_ops = {
688 .enable_snapshot = gv11b_css_hw_enable_snapshot, 688 .enable_snapshot = gv11b_css_hw_enable_snapshot,
689 .disable_snapshot = gv11b_css_hw_disable_snapshot, 689 .disable_snapshot = gv11b_css_hw_disable_snapshot,
690 .check_data_available = gv11b_css_hw_check_data_available, 690 .check_data_available = gv11b_css_hw_check_data_available,
691 .set_handled_snapshots = gv11b_css_hw_set_handled_snapshots, 691 .set_handled_snapshots = css_hw_set_handled_snapshots,
692 .allocate_perfmon_ids = css_gr_allocate_perfmon_ids, 692 .allocate_perfmon_ids = css_gr_allocate_perfmon_ids,
693 .release_perfmon_ids = css_gr_release_perfmon_ids, 693 .release_perfmon_ids = css_gr_release_perfmon_ids,
694 }, 694 },