Yash Bhatt
6200c05e7d
video: tegra: nvmap: Deprecate nvmap_ioctl_get_heap_size
...
Remove function nvmap_ioctl_get_heap_size from nvmap, as the ioctl NVMAP_IOC_GET_HEAP_SIZE is being deprecated and its functionality is being replaced with NVMAP_IOC_QUERY_HEAP_PARAMS.
Bug 4479027
Change-Id: I8a60810ff8b474f32413c9afe2ba3a0d7336a4d0
Signed-off-by: Yash Bhatt <ybhatt@nvidia.com >
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/3110262
Reviewed-by: Sachin Nikam <snikam@nvidia.com >
Reviewed-by: Ketan Patil <ketanp@nvidia.com >
Reviewed-by: Pritesh Raithatha <praithatha@nvidia.com >
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com >
2024-04-08 20:59:42 -07:00
Ketan Patil
343f9e764f
video: tegra: nvmap: Add NUMA aware query heap API
...
Add a new API to query the heap params for an input heap present on the
given input numa node. e.g. User may specify to query heap information
of GPU carveout on numa node 0 or numa node 1 etc.
Bug 4231517
Change-Id: I9622828b6a28984564b4c7f17b88b4d38bbd4684
Signed-off-by: Ketan Patil <ketanp@nvidia.com >
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/3010795
Reviewed-by: Pritesh Raithatha <praithatha@nvidia.com >
Reviewed-by: Krishna Reddy <vdumpa@nvidia.com >
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com >
2023-11-15 09:34:12 -08:00
Ketan Patil
01db38f08e
video: tegra: nvmap: Add support for Serial Id feature
...
Add support for Serial Id feature which will be used by Nsight for
buffer tracking purpose. This feature expects a unique serial id per
buffer even if it is shared across multiple client processes.
Add following code:
- Create a new global counter field for serial id in nvmap device.
Initialize it to 0 when nvmap device is initialized.
- Introduce a new field for serial_id in nvmap_handle struct.
- When nvmap_handle is created, assign it's serial_id field with global
counter's value, and increment global counter.
- During NvRmMemQueryHandleParameters return this serial_id associated
with the handle.
- Do not decrement counter for serial_id even after freeing the handle.
Bug 4138373
Change-Id: Ic1fe22b082eefb352986f8fa44d4c38d186a366f
Signed-off-by: Ketan Patil <ketanp@nvidia.com >
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2918510
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com >
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com >
2023-06-10 19:46:37 -07:00
Ketan Patil
30ebc1a639
video: tegra: nvmap: Add support for querying granule size
...
Add support for querying the granule size using NvRmMemQueryHeapParams.
In case of compression carveout it returns granule size in which memory
is allocated while in case of IOVMM heap, it returns PAGE_SIZE.
Bug 3956637
Change-Id: I3ec4f5388caecbca0a728e1878007f6b3d4320ef
Signed-off-by: Ketan Patil <ketanp@nvidia.com >
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2899867
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com >
Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com >
Reviewed-by: Pritesh Raithatha <praithatha@nvidia.com >
Reviewed-by: Krishna Reddy <vdumpa@nvidia.com >
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com >
2023-05-15 01:18:06 -07:00
Laxman Dewangan
e8b7a5ca26
nvmap: Use SPDX license GPL 2.0 format
...
Use SPDX license GPL-V2.0 format and change Nvidia
copyright year to include 2023.
Bug 4078035
Change-Id: I4db6577ddb806690f6ec04f5eaf1364578102d14
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com >
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2890635
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com >
Reviewed-by: Ketan Patil <ketanp@nvidia.com >
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com >
2023-04-22 09:59:20 -07:00
Ketan Patil
594e39e498
video: tegra: nvmap: Add NUMA support in nvmap
...
In NUMA system, user can request nvmap to allocate from any particular
node using NvRmMem APIs. Add code to request allocation from such
requested node. While allocating pages from page pool, check if those
pages belong to requested NUMA node. In some cases, we may not need to
use NUMA support e.g. in color pages allocation code, we don't need to
use NUMA, as page coloring is needed only for t19x chips.
JIRA TMM-5287
Bug 4043165
Change-Id: If8043278122068773a802d83723d287d32914e14
Signed-off-by: Ketan Patil <ketanp@nvidia.com >
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2889707
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com >
Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com >
Reviewed-by: Sachin Nikam <snikam@nvidia.com >
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com >
2023-04-19 10:44:34 -07:00
Puneet Saxena
c4a88d6515
tegra: nvmap: dmabuf fd for range from list of handles
...
It returns dmabuf fd from list of nvmap handles
for a range between offset and size.
The range should fall under total size of all of the handles.
Range may lie between sub set of handles.
Bug 3494980
Change-Id: I5c688f832a7a3bb0b6e3713ec6462224bb6fbfc5
Signed-off-by: Puneet Saxena <puneets@nvidia.com >
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2789431
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com >
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com >
2023-04-11 05:54:22 +00:00
Puneet Saxena
d1c06c1dce
tegra: nvmap: make sciipc_id as 64 bit
...
Make SciIpc_Id as 64 bit.
Bug 3715617
Change-Id: If0f6db9d42b527554b77c4768d0f42d276c6a97c
Signed-off-by: Puneet Saxena <puneets@nvidia.com >
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2783704
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com >
Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com >
Reviewed-by: Pritesh Raithatha <praithatha@nvidia.com >
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com >
2023-04-11 05:54:22 +00:00
Laxman Dewangan
4cf8c80669
nvmap: Copy drivers and headers from kernel/nvidia
...
Copy the driver and header sources of the nvmap to
kernel/nvidia-oot from kernel/nvidia as part of
removing the dependency of kernel/nvidia for OOT drivers.
The latest (few) git history of the files copied are
b7a355916 video: tegra: nvmap: Fix type casting issue
2128c5433 video: tegra: nvmap: Fix type casting issues
0cd082559 video: tegra: nvmap: Change peer vm id data type
4bd7ece67 tegra: nvmap: mark ivm carveout pages occupied
e86f3630a video: tegra: nvmap: Fix type casting issue
c43a23e58 video: tegra: nvmap: Fix type casting issue
ca1dda22e video: tegra: nvmap: Fix type casting issue
1f567abfe video: tegra: nvmap: Fix wrap up condition
29db4d31c video: tegra: nvmap: Remove unnecessary debugfs
fe72f1413 video: tegra: nvmap: Remove get_drv_data() call
3b0fc79e7 video: tegra: nvmap: Fix coverity defect
3cc0ce41b video: tegra: nvmap: Fix coverity defect
6da39e966 video: tegra: nvmap: Fix WARN_ON condition
a16351ff1 video: tegra: nvmap: Remove dead code
9993f2d2d video: tegra: nvmap: Update print level
6066a2077 video: tegra: nvmap: Remove nvmap_debug_lru_allocations_show
3cdf2b7ba video: tegra: nvmap: Add kernel version check
716ded4fc video: tegra: nvmap: Initialize the return value
9b6c1b4ab video: tegra: nvmap: Correct debugfs code
33e70118b video: tegra: nvmap: Fix Cert-C error handling bug
7b960ed79 video: tegra: nvmap: Fix Cert-C error handling bug
945dc1471 video: tegra: nvmap: Fix Cert-C error handling bug
31e572de2 video: tegra: nvmap: Fix Cert-C error handling bug
1f25cbf68 video: tegra: nvmap: Fix Cert-C error handling bug
fa5428107 video: tegra: nvmap: Remove nvmap_handle_get_from_fd
df73f2208 video: tegra: nvmap: Protect kmap/kunmap code
9842e7c6a video: tegra: nvmap: Remove t19x dma_buf map/unmap
06dff1a8d video: tegra: nvmap: Remove unnecessary export symbols
6f097f86b video: tegra: nvmap: Fix Cert-C error handling bug
f14171608 video: tegra: nvmap: load nvmap for T23x compatible platforms
266812814 video: tegra: nvmap: Get rid of NVMAP_CONFIG_KSTABLE_KERNEL
1b38c0887 nvmap: Don't use NV_BUILD_KERNEL_OPTIONS
0ab8dc032 video: tegra: nvmap: Reintroduce NVMAP_CONFIG_VPR_RESIZE
cc8db9797 driver: platform: tegra: Separate out vpr code
28955d95c video/tegra: nvmap: Enable build as OOT module
876d1fbb8 video: tegra: nvmap: Remove IS_ENABLED check
5ea30867a nvmap: Add support to build as module from OOT kernel
a71ad020e video: tegra: nvmap: Protect tegra_vpr args under config
e70061cc1 video: tegra: nvmap: Do not export cvnas_dev
d2a26ff36 video: tegra: nvmap: Include missing header
692e4f682 video: tegra: nvmap: Update page coloring algo
2b9dbb911 video: tegra: nvmap: Check for return value
de8de12b6 video: tegra: nvmap: Enable legacy init support
65d478158 video: tegra: nvmap: Remove dependency of cvnas
38bdd6f05 video: tegra: nvmap: Make nvmap as loadable module
9668e410b video: tegra: nvmap: Enable handle as ID
11c6cbd23 tegra: nvmap: Fix build for Linux v5.18
fbd95c3ab linux: nvmap: change ivm_handle to u32
eb1e2c302 video: tegra: nvmap: Fix NVSCIIPC support
022689b29 tegra: nvmap: return error if handle as ID enabled but id is fd
19e5106ed video: tegra: nvmap: Don't treat ivm as reserved mem carveouts
Bug 4038415
Change-Id: I7108aec3b8532fe79c9423c2835744b1213719e8
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com >
2023-04-11 05:47:21 +00:00