diff options
Diffstat (limited to 'drivers/gpu/nvgpu/tegra')
-rw-r--r-- | drivers/gpu/nvgpu/tegra/linux/platform_gk20a_tegra.c | 11 |
1 files changed, 8 insertions, 3 deletions
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) |