From 7a28547892bfa73d31c1423b33e98030840a4f6d Mon Sep 17 00:00:00 2001 From: Alex Frid Date: Tue, 8 May 2018 18:58:22 -0700 Subject: gpu: nvgpu: Fix Gpu sysfs access to Fmax@Vmin Currently gpu sysfs retrieves Fmax@Vmin by direct call into Tegra DVFS driver that introduces compile time dependencies on CONFIG_TEGRA_DVFS. In addition incorrect clock is used for DVFS information access. Re-factored sysfs node to use generic GPU clock operation for Fmax@Vmin read. This would fix a bug in target clock selection, and allows to remove dependency of sysfs on CONFIG_TEGRA_DVFS. Updated nvgpu_linux_get_fmax_at_vmin_safe operation itself so it can be called on platforms that does not support Tegra DVFS, although 0 will still be returned as Fmax@Vmin on such platforms. Bug 2045903 Change-Id: I32cce25320df026288c82458c913b0cde9ad4f72 Signed-off-by: Alex Frid Reviewed-on: https://git-master.nvidia.com/r/1710924 Reviewed-by: Alex Waterman GVS: Gerrit_Virtual_Submit Reviewed-by: Terje Bergstrom Reviewed-by: mobile promotions Tested-by: mobile promotions --- drivers/gpu/nvgpu/gm20b/clk_gm20b.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'drivers/gpu/nvgpu/gm20b/clk_gm20b.c') diff --git a/drivers/gpu/nvgpu/gm20b/clk_gm20b.c b/drivers/gpu/nvgpu/gm20b/clk_gm20b.c index fb89752a..223166d1 100644 --- a/drivers/gpu/nvgpu/gm20b/clk_gm20b.c +++ b/drivers/gpu/nvgpu/gm20b/clk_gm20b.c @@ -1197,7 +1197,7 @@ int gm20b_init_clk_setup_sw(struct gk20a *g) goto fail; } - safe_rate = g->ops.clk.get_fmax_at_vmin_safe(clk); + safe_rate = g->ops.clk.get_fmax_at_vmin_safe(g); safe_rate = safe_rate * (100 - DVFS_SAFE_MARGIN) / 100; clk->dvfs_safe_max_freq = rate_gpu_to_gpc2clk(safe_rate); clk->gpc_pll.PL = (clk->dvfs_safe_max_freq == 0) ? 0 : -- cgit v1.2.2