summaryrefslogtreecommitdiffstats
path: root/include/linux/tegra_vgpu.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/tegra_vgpu.h')
-rw-r--r--include/linux/tegra_vgpu.h40
1 files changed, 33 insertions, 7 deletions
diff --git a/include/linux/tegra_vgpu.h b/include/linux/tegra_vgpu.h
index 74148294..105870dc 100644
--- a/include/linux/tegra_vgpu.h
+++ b/include/linux/tegra_vgpu.h
@@ -21,10 +21,6 @@
21 21
22#include <nvgpu/types.h> 22#include <nvgpu/types.h>
23 23
24#ifdef CONFIG_TEGRA_19x_GPU
25#include <linux/tegra_vgpu_t19x.h>
26#endif
27
28enum { 24enum {
29 TEGRA_VGPU_MODULE_GPU = 0, 25 TEGRA_VGPU_MODULE_GPU = 0,
30}; 26};
@@ -112,6 +108,10 @@ enum {
112 TEGRA_VGPU_CMD_GET_TIMESTAMPS_ZIPPER = 74, 108 TEGRA_VGPU_CMD_GET_TIMESTAMPS_ZIPPER = 74,
113 TEGRA_VGPU_CMD_TSG_RELEASE = 75, 109 TEGRA_VGPU_CMD_TSG_RELEASE = 75,
114 TEGRA_VGPU_CMD_GET_VSMS_MAPPING = 76, 110 TEGRA_VGPU_CMD_GET_VSMS_MAPPING = 76,
111 TEGRA_VGPU_CMD_ALLOC_CTX_HEADER = 77,
112 TEGRA_VGPU_CMD_FREE_CTX_HEADER = 78,
113 TEGRA_VGPU_CMD_MAP_SYNCPT = 79,
114 TEGRA_VGPU_CMD_TSG_BIND_CHANNEL_EX = 80,
115}; 115};
116 116
117struct tegra_vgpu_connect_params { 117struct tegra_vgpu_connect_params {
@@ -484,6 +484,7 @@ struct tegra_vgpu_constants_params {
484 struct tegra_vgpu_engines_info engines_info; 484 struct tegra_vgpu_engines_info engines_info;
485 u32 num_pce; 485 u32 num_pce;
486 u32 sm_per_tpc; 486 u32 sm_per_tpc;
487 u32 max_subctx_count;
487}; 488};
488 489
489struct tegra_vgpu_channel_cyclestats_snapshot_params { 490struct tegra_vgpu_channel_cyclestats_snapshot_params {
@@ -543,6 +544,30 @@ struct tegra_vgpu_vsms_mapping_entry {
543 u32 global_tpc_index; 544 u32 global_tpc_index;
544}; 545};
545 546
547struct tegra_vgpu_alloc_ctx_header_params {
548 u64 ch_handle;
549 u64 ctx_header_va;
550};
551
552struct tegra_vgpu_free_ctx_header_params {
553 u64 ch_handle;
554};
555
556struct tegra_vgpu_map_syncpt_params {
557 u64 as_handle;
558 u64 gpu_va;
559 u64 len;
560 u64 offset;
561 u8 prot;
562};
563
564struct tegra_vgpu_tsg_bind_channel_ex_params {
565 u32 tsg_id;
566 u64 ch_handle;
567 u32 subctx_id;
568 u32 runqueue_sel;
569};
570
546struct tegra_vgpu_cmd_msg { 571struct tegra_vgpu_cmd_msg {
547 u32 cmd; 572 u32 cmd;
548 int ret; 573 int ret;
@@ -598,9 +623,10 @@ struct tegra_vgpu_cmd_msg {
598 struct tegra_vgpu_get_timestamps_zipper_params get_timestamps_zipper; 623 struct tegra_vgpu_get_timestamps_zipper_params get_timestamps_zipper;
599 struct tegra_vgpu_get_gpu_freq_table_params get_gpu_freq_table; 624 struct tegra_vgpu_get_gpu_freq_table_params get_gpu_freq_table;
600 struct tegra_vgpu_vsms_mapping_params vsms_mapping; 625 struct tegra_vgpu_vsms_mapping_params vsms_mapping;
601#ifdef CONFIG_TEGRA_19x_GPU 626 struct tegra_vgpu_alloc_ctx_header_params alloc_ctx_header;
602 union tegra_vgpu_t19x_params t19x; 627 struct tegra_vgpu_free_ctx_header_params free_ctx_header;
603#endif 628 struct tegra_vgpu_map_syncpt_params map_syncpt;
629 struct tegra_vgpu_tsg_bind_channel_ex_params tsg_bind_channel_ex;
604 char padding[192]; 630 char padding[192];
605 } params; 631 } params;
606}; 632};