diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gp10b')
-rw-r--r-- | drivers/gpu/nvgpu/gp10b/fifo_gp10b.c | 8 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gp10b/hw_pbdma_gp10b.h | 8 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gp10b/hw_ram_gp10b.h | 4 |
3 files changed, 20 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gp10b/fifo_gp10b.c b/drivers/gpu/nvgpu/gp10b/fifo_gp10b.c index 0aa6e29e..349f25fc 100644 --- a/drivers/gpu/nvgpu/gp10b/fifo_gp10b.c +++ b/drivers/gpu/nvgpu/gp10b/fifo_gp10b.c | |||
@@ -132,6 +132,14 @@ static int channel_gp10b_setup_ramfc(struct channel_gk20a *c, | |||
132 | 132 | ||
133 | gk20a_mem_wr32(g, mem, ram_fc_chid_w(), ram_fc_chid_id_f(c->hw_chid)); | 133 | gk20a_mem_wr32(g, mem, ram_fc_chid_w(), ram_fc_chid_id_f(c->hw_chid)); |
134 | 134 | ||
135 | if (c->is_privileged_channel) { | ||
136 | /* Set privilege level for channel */ | ||
137 | gk20a_mem_wr32(g, mem, ram_fc_config_w(), | ||
138 | pbdma_config_auth_level_privileged_f()); | ||
139 | |||
140 | gk20a_channel_setup_ramfc_for_privileged_channel(c); | ||
141 | } | ||
142 | |||
135 | return channel_gp10b_commit_userd(c); | 143 | return channel_gp10b_commit_userd(c); |
136 | } | 144 | } |
137 | 145 | ||
diff --git a/drivers/gpu/nvgpu/gp10b/hw_pbdma_gp10b.h b/drivers/gpu/nvgpu/gp10b/hw_pbdma_gp10b.h index 0caffb22..65aedccd 100644 --- a/drivers/gpu/nvgpu/gp10b/hw_pbdma_gp10b.h +++ b/drivers/gpu/nvgpu/gp10b/hw_pbdma_gp10b.h | |||
@@ -342,6 +342,14 @@ static inline u32 pbdma_userd_hi_addr_f(u32 v) | |||
342 | { | 342 | { |
343 | return (v & 0xff) << 0; | 343 | return (v & 0xff) << 0; |
344 | } | 344 | } |
345 | static inline u32 pbdma_config_r(u32 i) | ||
346 | { | ||
347 | return 0x000400f4 + i*8192; | ||
348 | } | ||
349 | static inline u32 pbdma_config_auth_level_privileged_f(void) | ||
350 | { | ||
351 | return 0x100; | ||
352 | } | ||
345 | static inline u32 pbdma_hce_ctrl_r(u32 i) | 353 | static inline u32 pbdma_hce_ctrl_r(u32 i) |
346 | { | 354 | { |
347 | return 0x000400e4 + i*8192; | 355 | return 0x000400e4 + i*8192; |
diff --git a/drivers/gpu/nvgpu/gp10b/hw_ram_gp10b.h b/drivers/gpu/nvgpu/gp10b/hw_ram_gp10b.h index 55323579..89dfbc21 100644 --- a/drivers/gpu/nvgpu/gp10b/hw_ram_gp10b.h +++ b/drivers/gpu/nvgpu/gp10b/hw_ram_gp10b.h | |||
@@ -382,6 +382,10 @@ static inline u32 ram_fc_chid_id_w(void) | |||
382 | { | 382 | { |
383 | return 0; | 383 | return 0; |
384 | } | 384 | } |
385 | static inline u32 ram_fc_config_w(void) | ||
386 | { | ||
387 | return 61; | ||
388 | } | ||
385 | static inline u32 ram_fc_runlist_timeslice_w(void) | 389 | static inline u32 ram_fc_runlist_timeslice_w(void) |
386 | { | 390 | { |
387 | return 62; | 391 | return 62; |