mirror of
git://nv-tegra.nvidia.com/linux-nv-oot.git
synced 2025-12-24 02:01:36 +03:00
drm/tegra: Implement buffer object cache
This cache is used to avoid mapping and unmapping buffer objects unnecessarily. Mappings are cached per client and stay hot until the buffer object is destroyed. Bug 200768479 Signed-off-by: Thierry Reding <treding@nvidia.com> Change-Id: Ia2efe2b77b5043b665bae403d9eba4698e6a5228 Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2596399 (cherry picked from commit d23156d94fa9499256e8082250e3bc02559f9c8d) Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2620152 Tested-by: Jonathan Hunter <jonathanh@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com> Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com> Reviewed-by: svc_kernel_abi <svc_kernel_abi@nvidia.com> Reviewed-by: Mikko Perttunen <mperttunen@nvidia.com> Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> GVS: Gerrit_Virtual_Submit
This commit is contained in:
committed by
Laxman Dewangan
parent
d802ae96a7
commit
2a938c39ec
@@ -404,6 +404,7 @@ static int host1x_probe(struct platform_device *pdev)
|
||||
if (syncpt_irq < 0)
|
||||
return syncpt_irq;
|
||||
|
||||
host1x_bo_cache_init(&host->cache);
|
||||
mutex_init(&host->devices_lock);
|
||||
INIT_LIST_HEAD(&host->devices);
|
||||
INIT_LIST_HEAD(&host->list);
|
||||
@@ -539,6 +540,7 @@ static int host1x_remove(struct platform_device *pdev)
|
||||
reset_control_assert(host->rst);
|
||||
clk_disable_unprepare(host->clk);
|
||||
host1x_iommu_exit(host);
|
||||
host1x_bo_cache_destroy(&host->cache);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user