From be6e02a6d42b0a7092f92371474c42d41019c917 Mon Sep 17 00:00:00 2001 From: Vijayakumar Date: Wed, 7 Dec 2016 19:00:43 +0530 Subject: gpu: nvgpu: call set volt always during vf switch bug 1845211 clfc is reset during vf switch. it resets delta values stored in pmu structure. if voltage has not changed, delta calculation happens on top of corrected voltage causing volt to keep on increasing in cases where voltage does not change during a vf switch. Change-Id: I9d1a58b6b7652f22c3a7304162bb8ca6f7d1da6f Signed-off-by: Vijayakumar Reviewed-on: http://git-master/r/1266632 (cherry picked from commit 74e2e97d4d149d3eac65b5f65b358b977fba463e) Reviewed-on: http://git-master/r/1273911 Reviewed-by: mobile promotions Tested-by: mobile promotions --- drivers/gpu/nvgpu/clk/clk_arb.c | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) (limited to 'drivers/gpu/nvgpu/clk/clk_arb.c') diff --git a/drivers/gpu/nvgpu/clk/clk_arb.c b/drivers/gpu/nvgpu/clk/clk_arb.c index 762c2466..7c22a83d 100644 --- a/drivers/gpu/nvgpu/clk/clk_arb.c +++ b/drivers/gpu/nvgpu/clk/clk_arb.c @@ -1401,7 +1401,7 @@ static int nvgpu_clk_arb_change_vf_point(struct gk20a *g, u16 gpc2clk_target, status = clk_set_fll_clks(g, &fllclk); if (status < 0) return status; - } else if (voltuv > arb->voltuv_actual) { + } else { status = clk_set_fll_clks(g, &fllclk); if (status < 0) return status; @@ -1413,14 +1413,6 @@ static int nvgpu_clk_arb_change_vf_point(struct gk20a *g, u16 gpc2clk_target, status = g->clk_pmu.clk_mclk.change(g, mclk_target); if (status < 0) return status; - } else { - status = g->clk_pmu.clk_mclk.change(g, mclk_target); - if (status < 0) - return status; - - status = clk_set_fll_clks(g, &fllclk); - if (status < 0) - return status; } return 0; -- cgit v1.2.2