diff options
-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, 20 insertions, 17 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/css_gr_gk20a.c b/drivers/gpu/nvgpu/gk20a/css_gr_gk20a.c index 114386a2..60ba875f 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 css_hw_set_handled_snapshots(struct gk20a *g, u32 done) | 78 | void gk20a_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 | css_hw_set_handled_snapshots(g, css_hw_get_pending_snapshots(g)); | 105 | gk20a_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 bee8f4fb..12e1903a 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 css_hw_set_handled_snapshots(struct gk20a *g, u32 done); | 132 | void gk20a_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 b3efdc8a..a2541460 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 = css_hw_set_handled_snapshots, | 580 | .set_handled_snapshots = gk20a_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 502a6778..f98f2772 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 = css_hw_set_handled_snapshots, | 692 | .set_handled_snapshots = gk20a_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 91ebab55..bbb43cc8 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 = css_hw_set_handled_snapshots, | 626 | .set_handled_snapshots = gk20a_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 c380df8d..1b92f1e7 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 = css_hw_set_handled_snapshots, | 702 | .set_handled_snapshots = gv11b_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 617ea61d..d8ba332b 100644 --- a/drivers/gpu/nvgpu/gv11b/css_gr_gv11b.c +++ b/drivers/gpu/nvgpu/gv11b/css_gr_gv11b.c | |||
@@ -57,15 +57,6 @@ 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 | |||
69 | /* disable streaming to memory */ | 60 | /* disable streaming to memory */ |
70 | static void gv11b_css_hw_reset_streaming(struct gk20a *g) | 61 | static void gv11b_css_hw_reset_streaming(struct gk20a *g) |
71 | { | 62 | { |
@@ -86,6 +77,17 @@ static void gv11b_css_hw_reset_streaming(struct gk20a *g) | |||
86 | gv11b_css_hw_set_handled_snapshots(g, css_hw_get_pending_snapshots(g)); | 77 | gv11b_css_hw_set_handled_snapshots(g, css_hw_get_pending_snapshots(g)); |
87 | } | 78 | } |
88 | 79 | ||
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 | |||
89 | int gv11b_css_hw_enable_snapshot(struct channel_gk20a *ch, | 91 | int gv11b_css_hw_enable_snapshot(struct channel_gk20a *ch, |
90 | struct gk20a_cs_snapshot_client *cs_client) | 92 | struct gk20a_cs_snapshot_client *cs_client) |
91 | { | 93 | { |
diff --git a/drivers/gpu/nvgpu/gv11b/css_gr_gv11b.h b/drivers/gpu/nvgpu/gv11b/css_gr_gv11b.h index 6b11a62e..186f5fcc 100644 --- a/drivers/gpu/nvgpu/gv11b/css_gr_gv11b.h +++ b/drivers/gpu/nvgpu/gv11b/css_gr_gv11b.h | |||
@@ -30,5 +30,6 @@ 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); | ||
33 | 34 | ||
34 | #endif /* CSS_GR_GV11B_H */ | 35 | #endif /* CSS_GR_GV11B_H */ |
diff --git a/drivers/gpu/nvgpu/gv11b/hal_gv11b.c b/drivers/gpu/nvgpu/gv11b/hal_gv11b.c index 5282af05..8d78d524 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 = css_hw_set_handled_snapshots, | 691 | .set_handled_snapshots = gv11b_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 | }, |