LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Aaron Lu <aaron.lu@intel.com>
To: Jim Davis <jim.epost@gmail.com>,
Stephen Rothwell <sfr@canb.auug.org.au>,
linux-next <linux-next@vger.kernel.org>,
linux-kernel <linux-kernel@vger.kernel.org>,
rui.zhang@intel.com, edubezval@gmail.com,
linux-pm@vger.kernel.org
Subject: [PATCH v3] Thermal: int3406_thermal: solve the dependency build error
Date: Fri, 17 Oct 2014 15:22:36 +0800 [thread overview]
Message-ID: <20141017072236.GA12504@aaronlu.sh.intel.com> (raw)
In-Reply-To: <20141017070620.GA1538@aaronlu.sh.intel.com>
Jim found that the current kernel may trigger a build error with some
config: drivers/built-in.o: In function `int3406_thermal_probe':
int3406_thermal.c:(.text+0x1d10b8): undefined reference to
`acpi_video_get_levels'. The problem happens when CONFIG_THERMAL=y and
CONFIG_ACPI_VIDEO=m. Solve the problem by separating a kernel config for
int3406 thermal driver and add dependency on ACPI video for it.
Reported-by: Jim Davis <jim.epost@gmail.com>
Signed-off-by: Aaron Lu <aaron.lu@intel.com>
---
v3: move ACPI_THERMAL_REL into the INT340X_THERMAL menu as it is only
used by INT340X drivers and use if INT340X_THERMAL to avoid multiple
depend lines as suggested by Rui.
drivers/thermal/Kconfig | 26 +++-----------------
drivers/thermal/int340x_thermal/Kconfig | 41 ++++++++++++++++++++++++++++++++
drivers/thermal/int340x_thermal/Makefile | 2 +-
3 files changed, 45 insertions(+), 24 deletions(-)
create mode 100644 drivers/thermal/int340x_thermal/Kconfig
diff --git a/drivers/thermal/Kconfig b/drivers/thermal/Kconfig
index 9b012ff65220..4565e55dbef9 100644
--- a/drivers/thermal/Kconfig
+++ b/drivers/thermal/Kconfig
@@ -229,29 +229,9 @@ config INTEL_SOC_DTS_THERMAL
notification methods.The other trip is a critical trip point, which
was set by the driver based on the TJ MAX temperature.
-config INT340X_THERMAL
- tristate "ACPI INT340X thermal drivers"
- depends on X86 && ACPI
- select THERMAL_GOV_USER_SPACE
- select ACPI_THERMAL_REL
- select ACPI_FAN
- help
- Newer laptops and tablets that use ACPI may have thermal sensors and
- other devices with thermal control capabilities outside the core
- CPU/SOC, for thermal safety reasons.
- They are exposed for the OS to use via the INT3400 ACPI device object
- as the master, and INT3401~INT340B ACPI device objects as the slaves.
- Enable this to expose the temperature information and cooling ability
- from these objects to userspace via the normal thermal framework.
- This means that a wide range of applications and GUI widgets can show
- the information to the user or use this information for making
- decisions. For example, the Intel Thermal Daemon can use this
- information to allow the user to select his laptop to run without
- turning on the fans.
-
-config ACPI_THERMAL_REL
- tristate
- depends on ACPI
+menu "ACPI INT340X thermal drivers"
+source drivers/thermal/int340x_thermal/Kconfig
+endmenu
menu "Texas Instruments thermal drivers"
source "drivers/thermal/ti-soc-thermal/Kconfig"
diff --git a/drivers/thermal/int340x_thermal/Kconfig b/drivers/thermal/int340x_thermal/Kconfig
new file mode 100644
index 000000000000..b92892a6afe0
--- /dev/null
+++ b/drivers/thermal/int340x_thermal/Kconfig
@@ -0,0 +1,41 @@
+#
+# ACPI INT340x thermal drivers configuration
+#
+
+config INT340X_THERMAL
+ tristate "ACPI INT340X thermal drivers"
+ depends on X86 && ACPI
+ select THERMAL_GOV_USER_SPACE
+ select ACPI_THERMAL_REL
+ select ACPI_FAN
+ help
+ Newer laptops and tablets that use ACPI may have thermal sensors and
+ other devices with thermal control capabilities outside the core
+ CPU/SOC, for thermal safety reasons.
+ They are exposed for the OS to use via the INT3400 ACPI device object
+ as the master, and INT3401~INT340B ACPI device objects as the slaves.
+ Enable this to expose the temperature information and cooling ability
+ from these objects to userspace via the normal thermal framework.
+ This means that a wide range of applications and GUI widgets can show
+ the information to the user or use this information for making
+ decisions. For example, the Intel Thermal Daemon can use this
+ information to allow the user to select his laptop to run without
+ turning on the fans.
+
+if INT340X_THERMAL
+
+config ACPI_THERMAL_REL
+ tristate
+ depends on ACPI
+
+config INT3406_THERMAL
+ tristate "ACPI INT3406 display thermal driver"
+ depends on ACPI_VIDEO
+ help
+ The display thermal device represents the LED/LCD display panel
+ that may or may not include touch support. The main function of
+ the display thermal device is to allow control of the display
+ brightness in order to address a thermal condition or to reduce
+ power consumed by display device.
+
+endif
diff --git a/drivers/thermal/int340x_thermal/Makefile b/drivers/thermal/int340x_thermal/Makefile
index e3e2eb20da94..a9d0429be412 100644
--- a/drivers/thermal/int340x_thermal/Makefile
+++ b/drivers/thermal/int340x_thermal/Makefile
@@ -1,5 +1,5 @@
obj-$(CONFIG_INT340X_THERMAL) += int3400_thermal.o
obj-$(CONFIG_INT340X_THERMAL) += int3402_thermal.o
obj-$(CONFIG_INT340X_THERMAL) += int3403_thermal.o
-obj-$(CONFIG_INT340X_THERMAL) += int3406_thermal.o
+obj-$(CONFIG_INT3406_THERMAL) += int3406_thermal.o
obj-$(CONFIG_ACPI_THERMAL_REL) += acpi_thermal_rel.o
--
1.9.3
next prev parent reply other threads:[~2014-10-17 7:22 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-10-13 14:43 randconfig build error with next-20141013, in drivers/thermal/int340x_thermal/int3406_thermal.c Jim Davis
2014-10-16 8:58 ` [PATCH] Thermal: int3406_thermal: solve the dependency build error Aaron Lu
2014-10-17 7:06 ` [PATCH v2] " Aaron Lu
2014-10-17 7:22 ` Aaron Lu [this message]
2014-10-28 6:11 ` [PATCH v4] " Aaron Lu
2014-11-07 19:11 ` Eduardo Valentin
2014-11-30 12:22 ` Zhang Rui
2014-12-02 6:18 ` [PATCH] Thermal: introduce INT3406 thermal driver Aaron Lu
2014-12-08 3:35 ` Zhang Rui
2014-12-08 10:55 ` Geert Uytterhoeven
2014-12-08 11:20 ` Geert Uytterhoeven
2014-12-08 13:22 ` Aaron Lu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20141017072236.GA12504@aaronlu.sh.intel.com \
--to=aaron.lu@intel.com \
--cc=edubezval@gmail.com \
--cc=jim.epost@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-next@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=rui.zhang@intel.com \
--cc=sfr@canb.auug.org.au \
--subject='Re: [PATCH v3] Thermal: int3406_thermal: solve the dependency build error' \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).