Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

exynos5440: free OPP table created during ->init()

OPP layer now supports freeing of OPPs and we should free them once they aren't
useful anymore.

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

authored by

Viresh Kumar and committed by
Rafael J. Wysocki
c6104fdb 2f0f609f

+4 -1
+4 -1
drivers/cpufreq/exynos5440-cpufreq.c
··· 371 371 if (ret) { 372 372 dev_err(dvfs_info->dev, 373 373 "failed to init cpufreq table: %d\n", ret); 374 - goto err_put_node; 374 + goto err_free_opp; 375 375 } 376 376 dvfs_info->freq_count = dev_pm_opp_get_opp_count(dvfs_info->dev); 377 377 exynos_sort_descend_freq_table(); ··· 423 423 424 424 err_free_table: 425 425 dev_pm_opp_free_cpufreq_table(dvfs_info->dev, &dvfs_info->freq_table); 426 + err_free_opp: 427 + of_free_opp_table(dvfs_info->dev); 426 428 err_put_node: 427 429 of_node_put(np); 428 430 dev_err(&pdev->dev, "%s: failed initialization\n", __func__); ··· 435 433 { 436 434 cpufreq_unregister_driver(&exynos_driver); 437 435 dev_pm_opp_free_cpufreq_table(dvfs_info->dev, &dvfs_info->freq_table); 436 + of_free_opp_table(dvfs_info->dev); 438 437 return 0; 439 438 } 440 439