gpu: nvgpu: add tsg support for vgpu

- make tsg_gk20a.c call HAL for enable/disable channels
- add preempt_tsg HAL callbacks
- add tsg bind/unbind channel HAL callbacks
- add according tsg callbacks for vgpu

Bug 1702773
JIRA VFND-1003

Change-Id: I2cba74b3ebd3920ef09219a168e6433d9574dbe8
Signed-off-by: Richard Zhao <rizhao@nvidia.com>
Reviewed-on: http://git-master/r/1144932
(cherry picked from commit c3787de7d38651d46969348f5acae2ba86b31ec7)
Reviewed-on: http://git-master/r/1126942
Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Tested-by: Terje Bergstrom <tbergstrom@nvidia.com>
This commit is contained in:
Richard Zhao
2016-03-31 11:16:23 -07:00
committed by Terje Bergstrom
parent a71ce831fb
commit d707c5a444
15 changed files with 236 additions and 46 deletions

View File

@@ -88,6 +88,9 @@ enum {
TEGRA_VGPU_CMD_GR_CTX_FREE,
TEGRA_VGPU_CMD_CHANNEL_BIND_GR_CTX,
TEGRA_VGPU_CMD_TSG_BIND_GR_CTX,
TEGRA_VGPU_CMD_TSG_BIND_CHANNEL,
TEGRA_VGPU_CMD_TSG_UNBIND_CHANNEL,
TEGRA_VGPU_CMD_TSG_PREEMPT,
};
struct tegra_vgpu_connect_params {
@@ -361,6 +364,15 @@ struct tegra_vgpu_tsg_bind_gr_ctx_params {
u64 gr_ctx_handle;
};
struct tegra_vgpu_tsg_bind_unbind_channel_params {
u32 tsg_id;
u64 ch_handle;
};
struct tegra_vgpu_tsg_preempt_params {
u32 tsg_id;
};
struct tegra_vgpu_cmd_msg {
u32 cmd;
int ret;
@@ -397,6 +409,8 @@ struct tegra_vgpu_cmd_msg {
struct tegra_vgpu_gr_ctx_params gr_ctx;
struct tegra_vgpu_channel_bind_gr_ctx_params ch_bind_gr_ctx;
struct tegra_vgpu_tsg_bind_gr_ctx_params tsg_bind_gr_ctx;
struct tegra_vgpu_tsg_bind_unbind_channel_params tsg_bind_unbind_channel;
struct tegra_vgpu_tsg_preempt_params tsg_preempt;
char padding[192];
} params;
};