nvdla: Use import_id for creating dma buf memory

[1]: Add import_id field in `nvdla_mem_share_handle`.
[2]: Use import_id for creating the dma buf.
[3]: Use share_id/handle as key for search/insert the vm tree.
[4]: Optimize code and avoid un-necessary dma_buf_get/put which
     become possible with [3]

Bug 3470815

Change-Id: Idb1df6ef04301e1ade4e39d3489502759e7d8462
Signed-off-by: Amit Sharma <amisharma@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2645563
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Reviewed-by: Praveen K <kpraveen@nvidia.com>
Reviewed-by: Arvind M <am@nvidia.com>
GVS: Gerrit_Virtual_Submit
This commit is contained in:
Amit Sharma
2021-12-22 05:24:47 +00:00
committed by Laxman Dewangan
parent 90998456e4
commit 9de4a4df0a
5 changed files with 67 additions and 170 deletions

View File

@@ -3,7 +3,7 @@
*
* Tegra NvDLA Driver
*
* Copyright (c) 2016-2021, NVIDIA CORPORATION. All rights reserved.
* Copyright (c) 2016-2022, NVIDIA CORPORATION. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify it
* under the terms and conditions of the GNU General Public License,
@@ -70,13 +70,13 @@ struct nvdla_ping_args {
* @share_id identifier of handle to be shared
* @offset offset within the shared memory
* @access_flags access with which memory is intended to be shared
* @reserved reserved for future use
* @import_id memory import transaction identifier
**/
struct nvdla_mem_share_handle {
__u32 share_id;
__u32 offset;
__u32 access_flags;
__u32 reserved;
__u32 import_id;
};
/**