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
|
6937db210f
|
video: tegra: nvmap: Add CBC carveout support
- Add CBC carveout suport in nvmap.
- Chunk size for CBC is 2MB, hence each bit from bitmap for CBC carveout
indicate 2MB physically contiguous chunk.
- In case of allocation from CBC, first try to allocate the entire chunk
in physically contiguous manner, if it's not possible then allocate in
chunks of 2MB. All page pointers to these chunks will be stored in
nvmap_handle struct.
- Modify all other operations like vmap, kmap, mmap as per the above
restrictions.
Bug 3956637
Change-Id: I7c304b0127c8fef028e135a4662ab3ad3dc1d1f6
Signed-off-by: Ketan Patil <ketanp@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2880662
Reviewed-by: Krishna Reddy <vdumpa@nvidia.com>
Reviewed-by: Sachin Nikam <snikam@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2885806
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Tested-by: Laxman Dewangan <ldewangan@nvidia.com>
|
2023-04-12 04:32:35 -07:00 |
|
Ketan Patil
|
9045984efb
|
nvmap: Remove use of __dma_flush_area
__dma_flush_area is defined in downstream, we need maintenance effort
when kernel version is upgraded. Instead, use arch_invalidate_pmem
function provided by the upstream.
Bug 3855165
Change-Id: Ie62935aba7f3c31e6e233816b3bff507197d3f86
Signed-off-by: Ketan Patil <ketanp@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2804844
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: svc_kernel_abi <svc_kernel_abi@nvidia.com>
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
Reviewed-by: Sachin Nikam <snikam@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
|
2023-04-11 05:54:22 +00:00 |
|
Puneet Saxena
|
a3201ec3fe
|
tegra: nvmap: add _dma_*area prototype
__dma_flush_area and __dma_map_area
function's protype is removed from "cacheflush.h"
header file. Since these functions are defined locally
in NvMap, define prototype in nvmap_priv.h, private header.
Bug 3767126
Change-Id: Ibf21712fe9738e4b3d7c286ac6acfea550d9d8d7
Signed-off-by: Puneet Saxena <puneets@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2779048
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
|
a28927a2c2
|
tegra: nvmap: fix build for kernel 6.0
Fix build for kernel 6.0 onwards.
"register_shrinker" expects shrinker name,
hence pass the name string.
PAGE_KERNEL's Page Protection value needs to be set.
Bug 3767126
Change-Id: I71a54891999d0554eaccac6f37d0f1d9c2a65ace
Signed-off-by: Puneet Saxena <puneets@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2776872
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: Sachin Nikam <snikam@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
|
2023-04-11 05:54:22 +00:00 |
|
Puneet Saxena
|
8ceb954814
|
tegra: nvmap: replace _dma_* and __iomap
__dma_flush_area, __dma_map_area and __iomap
functions are no more supported from kernel version
6.0 onwards.
Replace them by equivalent exported function in K-6.0 and
onwards.
Bug 3767126
Change-Id: I2b8d81271ed3696ae3d9306a311fe74622c2b611
Signed-off-by: Puneet Saxena <puneets@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2770928
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com>
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
Reviewed-by: Sachin Nikam <snikam@nvidia.com>
Reviewed-by: Ketan Patil <ketanp@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 |
|