From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752191AbbIKIPt (ORCPT ); Fri, 11 Sep 2015 04:15:49 -0400 Received: from mout.kundenserver.de ([212.227.126.187]:61077 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751273AbbIKIPq (ORCPT ); Fri, 11 Sep 2015 04:15:46 -0400 From: Arnd Bergmann To: "Rafael J. Wysocki" Cc: Pi-Cheng Chen , Viresh Kumar , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: cpufreq: mediatek: allow modular build Date: Fri, 11 Sep 2015 10:15:14 +0200 Message-ID: <1768766.yu1lxjsjLL@wuerfel> User-Agent: KMail/4.11.5 (Linux/3.16.0-10-generic; KDE/4.11.5; x86_64; ; ) MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" X-Provags-ID: V03:K0:7J5JSwqEuMXkBNYLK8si7kSVvdQ3vJI/3rOqA7lUmy45zKUtWo/ btINjq/WtPmf7fD+5SCCnuzZoa+0EpMtjuxtvuxruLDMJKlnH7JZvk6jm9vQdYgE2MZnLBC CSRCbFrN1mclOasfeDkU90cmgLRf9/gS8+2Lh6tKc2cv8ouyTt0Z3e4fDXIsl+Ru7Lx3cba hxzlEIMAaUhbF9seP5QQA== X-UI-Out-Filterresults: notjunk:1;V01:K0:KK/9JNR1PEE=:NDytog5aJyGBVwgSaAbre0 vWv4J3JK97GpCeZEyGRo0at+zMw2cS+OX6T4lrZasuvVmwWhwkY3/HD90rbwZw6v+oV6p4vv2 XwKQHy/DAoDkyX4ke82b5WZ2NNh1j5Gdvw/jdns4Ixt1OCVKUQB+XfiF3yiZ91XjT6DhUvvJ7 tX1dEcPGTRCYa36gsG8S7kghxBDcaoVm0NG9iqo0/Kck10k0/lwEyjJW8FKYsPR1UrOg3JDRu 4hiWOmotLj7Wta5l+LtErVqXHpcYSJpn8I/nIkaezAM/iqPn3t7/inpCmd4Hw/BgO5lTJaSH5 Zv3TNuV4e2k24gAd1ZqD8ieAC8SliS7idQI2bNTepVWmzRLlOlC8xHowYbZ93Fsv6G+uLXy3+ Uh91RIY+Z8qn9r4/dhBv1w3t4KHfI4DTfKD5Busqw68ArF5o0wNrt6urPSwYxqA+biV2jPq52 bg9Jy0jrbN/qeCqi8Pm3z1qhhrF9/8saNCQKOWC3cy/msZx41TzCRiXFefZzKYfLUY2cu1KlU Lr/xtIj7ACIxLf6P0ot+NmW1zXhpHOoSuu+/svplWgXGy3ts1gM83Hrp3ls54ezxHa3uOB6pr Gb/ZvUZkGmaT7Yy+v1xjThlYbkN6olqRNNa/Jj9v/u8TcL22+wZpXcWzhdSWiBpzzBUAe2SN2 /31Q2jP/0+Pfw3Azy6VB2TXJuPLMpZmGYkdrMAyT91WplxKD27cYJ2viPTIENtQ+qqdTe00il Dj9FDKovg1E+KH/r Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The newly merged cpufreq-mt8173 driver breaks the ARM allmodconfig build because of a dependency on the cpu-cooling infrastructure that may be built as a loadable module: drivers/built-in.o: In function `mtk_cpufreq_ready': binder.c:(.text+0x324c8c): undefined reference to `of_cpufreq_cooling_register' drivers/built-in.o: In function `mtk_cpufreq_exit': binder.c:(.text+0x324ea0): undefined reference to `cpufreq_cooling_unregister' This works around the issue by allowing this driver to be built as a module as well, and adding a dependency on THERMAL that prevents it from being built-in when the cpu-cooling driver is a module. This is not perfect because there is still a case where THERMAL=m and CPU_COOLING=n that should allow us to have this driver built-in as well, but I decided to follow existing practice in other drivers here, and that case seems irrelevant in practice. Signed-off-by: Arnd Bergmann --- I have not checked if someone else has already sent a patch for this, just ignore mine if the issue has been fixed already. diff --git a/drivers/cpufreq/Kconfig.arm b/drivers/cpufreq/Kconfig.arm index 77aa34eae92c..28844bdf026d 100644 --- a/drivers/cpufreq/Kconfig.arm +++ b/drivers/cpufreq/Kconfig.arm @@ -131,8 +131,8 @@ config ARM_KIRKWOOD_CPUFREQ SoCs. config ARM_MT8173_CPUFREQ - bool "Mediatek MT8173 CPUFreq support" - depends on ARCH_MEDIATEK && REGULATOR + tristate "Mediatek MT8173 CPUFreq support" + depends on ARCH_MEDIATEK && REGULATOR && THERMAL select PM_OPP help This adds the CPUFreq driver support for Mediatek MT8173 SoC. diff --git a/drivers/cpufreq/mt8173-cpufreq.c b/drivers/cpufreq/mt8173-cpufreq.c index 49caed293a3b..2131e1a81be9 100644 --- a/drivers/cpufreq/mt8173-cpufreq.c +++ b/drivers/cpufreq/mt8173-cpufreq.c @@ -17,6 +17,7 @@ #include #include #include +#include #include #include #include @@ -524,4 +525,5 @@ static int mt8173_cpufreq_driver_init(void) return 0; } -device_initcall(mt8173_cpufreq_driver_init); +module_init(mt8173_cpufreq_driver_init); +MODULE_LICENSE("GPL v2");