summaryrefslogtreecommitdiff
path: root/drivers/video/tegra/nvmap/nvmap_mru.c
diff options
context:
space:
mode:
authorHiro Sugawara <hsugawara@nvidia.com>2011-03-17 13:58:13 -0700
committerDan Willemsen <dwillemsen@nvidia.com>2011-11-30 21:45:02 -0800
commitef904466ea970cfd116c1310cbec0d38c2dccbe3 (patch)
tree5a0d363545d9bce9bd0aa2e8fdaf1eb8c211f6a5 /drivers/video/tegra/nvmap/nvmap_mru.c
parent7d9ab1f1bd1b473774027d75f939f0b62b29d6bb (diff)
arm: tegra: nvmap: Forcing to convert CarveOut requests to IOVM
Adding a build time CONFIG option to enable forcing of conversion of non-IRAM CarveOut memory allocation requests to IOVM requests. Default is "y" to force the conversion. Each forced conversion is reported to console. Allocation alignments larger than page size for IOVM are enabled. Single page CarveOut allocations are converted to system memory. CarveOut memory reservation has been removed for aruba, cardhu, and enterprise. Original-Change-Id: I3a598431d15b92ce853b3bec97be4b583d021264 Reviewed-on: http://git-master/r/29849 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com> Rebase-Id: R602260e283f721b7e0f0d802092516ff68c068fe
Diffstat (limited to 'drivers/video/tegra/nvmap/nvmap_mru.c')
-rw-r--r--drivers/video/tegra/nvmap/nvmap_mru.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/video/tegra/nvmap/nvmap_mru.c b/drivers/video/tegra/nvmap/nvmap_mru.c
index 252665427568..d525fbed74d2 100644
--- a/drivers/video/tegra/nvmap/nvmap_mru.c
+++ b/drivers/video/tegra/nvmap/nvmap_mru.c
@@ -1,9 +1,9 @@
/*
- * drivers/video/tegra/nvmap_mru.c
+ * drivers/video/tegra/nvmap/nvmap_mru.c
*
* IOVMM virtualization support for nvmap
*
- * Copyright (c) 2009-2010, NVIDIA Corporation.
+ * Copyright (c) 2009-2011, NVIDIA Corporation.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -115,7 +115,8 @@ struct tegra_iovmm_area *nvmap_handle_iovmm(struct nvmap_client *c,
return h->pgalloc.area;
}
- vm = tegra_iovmm_create_vm(c->share->iovmm, NULL, h->size, prot);
+ vm = tegra_iovmm_create_vm(c->share->iovmm, NULL,
+ h->size, h->align, prot);
if (vm) {
INIT_LIST_HEAD(&h->pgalloc.mru_list);
@@ -159,7 +160,7 @@ struct tegra_iovmm_area *nvmap_handle_iovmm(struct nvmap_client *c,
tegra_iovmm_free_vm(evict->pgalloc.area);
evict->pgalloc.area = NULL;
vm = tegra_iovmm_create_vm(c->share->iovmm,
- NULL, h->size, prot);
+ NULL, h->size, h->align, prot);
nvmap_mru_lock(c->share);
}
}