summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/gk20a.h
diff options
context:
space:
mode:
authorSeema Khowala <seemaj@nvidia.com>2017-06-06 18:47:17 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2017-07-19 02:42:07 -0400
commitf36e2a234b39cf7622c57ad51359629f5c425340 (patch)
tree47136739b98de4024b72335b29b21d20f97d5903 /drivers/gpu/nvgpu/gk20a/gk20a.h
parent92d476bf279f80e896fd7247a267ae2202b91550 (diff)
gpu: nvgpu: support context regoptype for egpc/etpc
- add is_egpc_addr, is_etpc_addr and get_egpc_etpc_num gr ops - add gr ops for decode and create egpc/etpc priv addr - add etpc as part of ctxsw_regs JIRA GPUT19X-49 Bug 200311674 Bug 1960226 Signed-off-by: Seema Khowala <seemaj@nvidia.com> Change-Id: I9a8be1804a9354238de2441093b3b136321b7e53 Reviewed-on: https://git-master.nvidia.com/r/1522442 Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/gk20a.h')
-rw-r--r--drivers/gpu/nvgpu/gk20a/gk20a.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.h b/drivers/gpu/nvgpu/gk20a/gk20a.h
index 6fe29abe..ff8eb988 100644
--- a/drivers/gpu/nvgpu/gk20a/gk20a.h
+++ b/drivers/gpu/nvgpu/gk20a/gk20a.h
@@ -216,8 +216,19 @@ struct gpu_ops {
216 u32 mode); 216 u32 mode);
217 int (*get_zcull_info)(struct gk20a *g, struct gr_gk20a *gr, 217 int (*get_zcull_info)(struct gk20a *g, struct gr_gk20a *gr,
218 struct gr_zcull_info *zcull_params); 218 struct gr_zcull_info *zcull_params);
219 int (*decode_egpc_addr)(struct gk20a *g,
220 u32 addr, int *addr_type,
221 u32 *gpc_num, u32 *tpc_num, u32 *broadcast_flags);
222 void (*egpc_etpc_priv_addr_table)(struct gk20a *g, u32 addr,
223 u32 gpc, u32 broadcast_flags, u32 *priv_addr_table,
224 u32 *priv_addr_table_index);
219 bool (*is_tpc_addr)(struct gk20a *g, u32 addr); 225 bool (*is_tpc_addr)(struct gk20a *g, u32 addr);
226 bool (*is_egpc_addr)(struct gk20a *g, u32 addr);
227 bool (*is_etpc_addr)(struct gk20a *g, u32 addr);
228 void (*get_egpc_etpc_num)(struct gk20a *g, u32 addr,
229 u32 *gpc_num, u32 *tpc_num);
220 u32 (*get_tpc_num)(struct gk20a *g, u32 addr); 230 u32 (*get_tpc_num)(struct gk20a *g, u32 addr);
231 u32 (*get_egpc_base)(struct gk20a *g);
221 bool (*is_ltcs_ltss_addr)(struct gk20a *g, u32 addr); 232 bool (*is_ltcs_ltss_addr)(struct gk20a *g, u32 addr);
222 bool (*is_ltcn_ltss_addr)(struct gk20a *g, u32 addr); 233 bool (*is_ltcn_ltss_addr)(struct gk20a *g, u32 addr);
223 bool (*get_lts_in_ltc_shared_base)(void); 234 bool (*get_lts_in_ltc_shared_base)(void);