summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/nvgpu')
-rw-r--r--drivers/gpu/nvgpu/gk20a/clk_gk20a.h3
-rw-r--r--drivers/gpu/nvgpu/tegra/linux/platform_gk20a_tegra.c11
2 files changed, 11 insertions, 3 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/clk_gk20a.h b/drivers/gpu/nvgpu/gk20a/clk_gk20a.h
index 8260fd4a..eb9ce069 100644
--- a/drivers/gpu/nvgpu/gk20a/clk_gk20a.h
+++ b/drivers/gpu/nvgpu/gk20a/clk_gk20a.h
@@ -24,6 +24,9 @@
24enum { 24enum {
25 /* only one PLL for gk20a */ 25 /* only one PLL for gk20a */
26 GK20A_GPC_PLL = 0, 26 GK20A_GPC_PLL = 0,
27 /* 2 PLL revisions for gm20b */
28 GM20B_GPC_PLL_B1,
29 GM20B_GPC_PLL_C1,
27}; 30};
28 31
29enum gpc_pll_mode { 32enum gpc_pll_mode {
diff --git a/drivers/gpu/nvgpu/tegra/linux/platform_gk20a_tegra.c b/drivers/gpu/nvgpu/tegra/linux/platform_gk20a_tegra.c
index 3e2a0adf..7ce66707 100644
--- a/drivers/gpu/nvgpu/tegra/linux/platform_gk20a_tegra.c
+++ b/drivers/gpu/nvgpu/tegra/linux/platform_gk20a_tegra.c
@@ -943,15 +943,20 @@ static int gk20a_tegra_probe(struct device *dev)
943 platform->can_railgate = false; 943 platform->can_railgate = false;
944 } 944 }
945 945
946 /* WAR for bug 1547668: Disable railgating and scaling irrespective of 946 platform->g->clk.gpc_pll.id = GK20A_GPC_PLL;
947 * platform data if the rework has not been made. */
948
949 if (tegra_get_chip_id() == TEGRA210) { 947 if (tegra_get_chip_id() == TEGRA210) {
948 /* WAR for bug 1547668: Disable railgating and scaling
949 irrespective of platform data if the rework was not made. */
950 np = of_find_node_by_path("/gpu-dvfs-rework"); 950 np = of_find_node_by_path("/gpu-dvfs-rework");
951 if (!(np && of_device_is_available(np))) { 951 if (!(np && of_device_is_available(np))) {
952 platform->devfreq_governor = ""; 952 platform->devfreq_governor = "";
953 dev_warn(dev, "board does not support scaling"); 953 dev_warn(dev, "board does not support scaling");
954 } 954 }
955 platform->g->clk.gpc_pll.id = GM20B_GPC_PLL_B1;
956#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 4, 0))
957 if (tegra_chip_get_revision() > TEGRA210_REVISION_A04p)
958 platform->g->clk.gpc_pll.id = GM20B_GPC_PLL_C1;
959#endif
955 } 960 }
956 961
957 if (tegra_get_chip_id() == TEGRA132) 962 if (tegra_get_chip_id() == TEGRA132)