From 3e08593d4563a3162d47c61fc2c70ab0b42fb93c Mon Sep 17 00:00:00 2001 From: Aingara Paramakuru Date: Thu, 27 Aug 2015 13:51:32 -0400 Subject: gpu: nvgpu: vgpu: add new GMMU map interface The server now exposes a new GMMU map interface that can accept a scatter-gather list. This is needed to support SMMU-bypass configurations. Bug 1677153 JIRA VFND-689 Change-Id: I7b5af145db57dcebe2c9125ec90c689798d7e69e Signed-off-by: Aingara Paramakuru Reviewed-on: http://git-master/r/792558 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Richard Zhao Reviewed-by: Vladislav Buzov --- include/linux/tegra_vgpu.h | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) (limited to 'include/linux/tegra_vgpu.h') diff --git a/include/linux/tegra_vgpu.h b/include/linux/tegra_vgpu.h index 2b327d09..6fc298e0 100644 --- a/include/linux/tegra_vgpu.h +++ b/include/linux/tegra_vgpu.h @@ -64,7 +64,8 @@ enum { TEGRA_VGPU_CMD_SUBMIT_RUNLIST, TEGRA_VGPU_CMD_GET_ZCULL_INFO, TEGRA_VGPU_CMD_ZBC_SET_TABLE, - TEGRA_VGPU_CMD_ZBC_QUERY_TABLE + TEGRA_VGPU_CMD_ZBC_QUERY_TABLE, + TEGRA_VGPU_CMD_AS_MAP_EX }; struct tegra_vgpu_connect_params { @@ -136,6 +137,25 @@ struct tegra_vgpu_as_map_params { u32 ctag_offset; }; +struct tegra_vgpu_as_map_ex_params { + u64 handle; + u64 gpu_va; + u64 size; + u32 mem_desc_count; + u8 pgsz_idx; + u8 iova; + u8 kind; + u8 cacheable; + u8 clear_ctags; + u8 prot; + u32 ctag_offset; +}; + +struct tegra_vgpu_mem_desc { + u64 addr; + u64 length; +}; + struct tegra_vgpu_as_invalidate_params { u64 handle; }; @@ -236,6 +256,7 @@ struct tegra_vgpu_cmd_msg { struct tegra_vgpu_as_share_params as_share; struct tegra_vgpu_as_bind_share_params as_bind_share; struct tegra_vgpu_as_map_params as_map; + struct tegra_vgpu_as_map_ex_params as_map_ex; struct tegra_vgpu_as_invalidate_params as_invalidate; struct tegra_vgpu_channel_config_params channel_config; struct tegra_vgpu_ramfc_params ramfc; -- cgit v1.2.2