mirror of
git://nv-tegra.nvidia.com/linux-nvgpu.git
synced 2025-12-22 17:36:20 +03:00
gpu: nvgpu: remove unused vpr refetch functions
VPR resize is done by forcing GPU to idle and then updating VPR size from TLK. There is no need now to call vpr_resize funtion from kernel and hence these functions can be removed. Bug 1487804 Change-Id: I758a6e0a99a58757866f1138b0a89594e2a33908 Signed-off-by: Deepak Nibade <dnibade@nvidia.com> Reviewed-on: http://git-master/r/421703 (cherry picked from commit 391d9bacf053fe0dacffc76c36768f82912ad1f4) Reviewed-on: http://git-master/r/419612 Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com> Tested-by: Terje Bergstrom <tbergstrom@nvidia.com>
This commit is contained in:
committed by
Dan Willemsen
parent
3227958a5e
commit
6cd26db477
@@ -1738,20 +1738,6 @@ int gk20a_init_gpu_characteristics(struct gk20a *g)
|
||||
return 0;
|
||||
}
|
||||
|
||||
int nvhost_vpr_info_fetch(void)
|
||||
{
|
||||
struct gk20a *g = get_gk20a(to_platform_device(
|
||||
bus_find_device_by_name(&platform_bus_type,
|
||||
NULL, "gk20a.0")));
|
||||
|
||||
if (!g) {
|
||||
pr_info("gk20a ins't ready yet\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
return gk20a_mm_mmu_vpr_info_fetch(g);
|
||||
}
|
||||
|
||||
static const struct firmware *
|
||||
do_request_firmware(struct device *dev, const char *prefix, const char *fw_name)
|
||||
{
|
||||
|
||||
@@ -3020,51 +3020,6 @@ bool gk20a_mm_mmu_debug_mode_enabled(struct gk20a *g)
|
||||
fb_mmu_debug_ctrl_debug_enabled_v();
|
||||
}
|
||||
|
||||
static int gk20a_mm_mmu_vpr_info_fetch_wait(struct gk20a *g,
|
||||
const unsigned int msec)
|
||||
{
|
||||
unsigned long timeout;
|
||||
|
||||
timeout = jiffies + msecs_to_jiffies(msec);
|
||||
while (1) {
|
||||
u32 val;
|
||||
|
||||
val = gk20a_readl(g, fb_mmu_vpr_info_r());
|
||||
if (fb_mmu_vpr_info_fetch_v(val) ==
|
||||
fb_mmu_vpr_info_fetch_false_v())
|
||||
break;
|
||||
|
||||
if (tegra_platform_is_silicon() &&
|
||||
WARN_ON(time_after(jiffies, timeout)))
|
||||
return -ETIME;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
int gk20a_mm_mmu_vpr_info_fetch(struct gk20a *g)
|
||||
{
|
||||
int ret = 0;
|
||||
|
||||
gk20a_busy_noresume(g->dev);
|
||||
if (!pm_runtime_active(&g->dev->dev))
|
||||
goto fail;
|
||||
|
||||
if (gk20a_mm_mmu_vpr_info_fetch_wait(g, 5)) {
|
||||
ret = -ETIME;
|
||||
goto fail;
|
||||
}
|
||||
|
||||
gk20a_writel(g, fb_mmu_vpr_info_r(),
|
||||
fb_mmu_vpr_info_fetch_true_v());
|
||||
|
||||
ret = gk20a_mm_mmu_vpr_info_fetch_wait(g, 5);
|
||||
|
||||
fail:
|
||||
gk20a_idle(g->dev);
|
||||
return ret;
|
||||
}
|
||||
|
||||
void gk20a_init_mm(struct gpu_ops *gops)
|
||||
{
|
||||
gops->mm.set_sparse = gk20a_vm_put_empty;
|
||||
|
||||
Reference in New Issue
Block a user