diff options
author | Srikar Srimath Tirumala <srikars@nvidia.com> | 2018-02-26 18:29:36 -0500 |
---|---|---|
committer | Srikar Srimath Tirumala <srikars@nvidia.com> | 2018-02-26 22:01:16 -0500 |
commit | a26de1185a9cc894d37ea826f67ba4f34a646fb3 (patch) | |
tree | 46978009c79ebc707502a25fd298bad80f4bdb57 | |
parent | c0196d50032c218b83cc6e5a655bc82fe75c45f7 (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.c | 4 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/css_gr_gk20a.h | 2 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gm20b/hal_gm20b.c | 2 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gp106/hal_gp106.c | 2 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gp10b/hal_gp10b.c | 2 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gv100/hal_gv100.c | 2 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gv11b/css_gr_gv11b.c | 20 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gv11b/css_gr_gv11b.h | 1 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gv11b/hal_gv11b.c | 2 |
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) */ |
78 | void gk20a_css_hw_set_handled_snapshots(struct gk20a *g, u32 done) | 78 | void 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 | ||
132 | void gk20a_css_hw_set_handled_snapshots(struct gk20a *g, u32 done); | 132 | void css_hw_set_handled_snapshots(struct gk20a *g, u32 done); |
133 | int css_hw_enable_snapshot(struct channel_gk20a *ch, | 133 | int css_hw_enable_snapshot(struct channel_gk20a *ch, |
134 | struct gk20a_cs_snapshot_client *cs_client); | 134 | struct gk20a_cs_snapshot_client *cs_client); |
135 | void css_hw_disable_snapshot(struct gr_gk20a *gr); | 135 | void 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) */ | ||
61 | static 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 */ |
61 | static void gv11b_css_hw_reset_streaming(struct gk20a *g) | 70 | static 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) */ | ||
81 | void 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 | |||
91 | int gv11b_css_hw_enable_snapshot(struct channel_gk20a *ch, | 89 | int 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, | |||
30 | void gv11b_css_hw_disable_snapshot(struct gr_gk20a *gr); | 30 | void gv11b_css_hw_disable_snapshot(struct gr_gk20a *gr); |
31 | int gv11b_css_hw_check_data_available(struct channel_gk20a *ch, u32 *pending, | 31 | int gv11b_css_hw_check_data_available(struct channel_gk20a *ch, u32 *pending, |
32 | bool *hw_overflow); | 32 | bool *hw_overflow); |
33 | void 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 | }, |