Re: [PATCH -mm] apanel: fix kconfig dependencies

Previous thread: [PATCH 3/3] x86: sparse error in efi_32.c by Harvey Harrison on Wednesday, February 6, 2008 - 8:07 pm. (1 message)

Next thread: [PATCH] docbook: dmapool: fix fatal changed filename by Randy Dunlap on Wednesday, February 6, 2008 - 8:29 pm. (1 message)
To: lkml <linux-kernel@...>
Cc: <khali@...>, <shemminger@...>, akpm <akpm@...>
Date: Wednesday, February 6, 2008 - 8:27 pm

From: Randy Dunlap <randy.dunlap@oracle.com>

Add I2C to config since the driver makes several i2c*() calls.

Add PCI to config because the config selects I2C_I801, which depends
on PCI, but currently config* does not follow dependency chains,
so randconfig can enable INPUT_APANEL even when PCI is not enabled,
which leads to these warnings:
linux-2.6.24-mm1/drivers/i2c/busses/i2c-i801.c:641: error: implicit declaration of function 'pci_request_region'
/linux-2.6.24-mm1/drivers/i2c/busses/i2c-i801.c:681: error: implicit declaration of function 'pci_release_region'

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
---
drivers/input/misc/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

--- linux-2.6.24-mm1.orig/drivers/input/misc/Kconfig
+++ linux-2.6.24-mm1/drivers/input/misc/Kconfig
@@ -42,7 +42,7 @@ config INPUT_M68K_BEEP

config INPUT_APANEL
tristate "Fujitsu Lifebook Application Panel buttons"
- depends on X86
+ depends on X86 && I2C && PCI
select I2C_I801
select INPUT_POLLDEV
select CHECK_SIGNATURE
--

To: Randy Dunlap <randy.dunlap@...>
Cc: lkml <linux-kernel@...>, <shemminger@...>, akpm <akpm@...>
Date: Thursday, February 7, 2008 - 12:42 pm

Hi Randy,

I'd rather drop the "select I2C_I801" if the config system can't handle
it properly. It's not strictly needed (not a build-time dependency), an
addition to the help text would work as well. Adding dependencies to
make our selections happy is a bit confusing and likely to cause

--
Jean Delvare
--

To: Jean Delvare <khali@...>
Cc: lkml <linux-kernel@...>, <shemminger@...>, akpm <akpm@...>
Date: Thursday, February 7, 2008 - 3:04 pm

OK. What did you have in mind for the help text. I changed it
a small bit.

I also added "depends on LEDS_CLASS" since defconfig didn't have that
set, but the build failed with wanting symbols that it provides.

Updated patch:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

From: Randy Dunlap <randy.dunlap@oracle.com>

Add I2C to config since the driver makes several i2c*() calls.

Add to help text that the Intel I2C ICH (i801) driver is also needed
for this kernel.

Add LEDS_CLASS to config since the driver makes les_classdev_*() calls:
ERROR: "led_classdev_register" [drivers/input/misc/apanel.ko] undefined!
ERROR: "__led_classdev_unregister" [drivers/input/misc/apanel.ko] undefined!

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
---
drivers/input/misc/Kconfig | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

--- linux-2.6.24-mm1.orig/drivers/input/misc/Kconfig
+++ linux-2.6.24-mm1/drivers/input/misc/Kconfig
@@ -42,14 +42,14 @@ config INPUT_M68K_BEEP

config INPUT_APANEL
tristate "Fujitsu Lifebook Application Panel buttons"
- depends on X86
- select I2C_I801
+ depends on X86 && I2C && LEDS_CLASS
select INPUT_POLLDEV
select CHECK_SIGNATURE
help
Say Y here for support of the Application Panel buttons, used on
Fujitsu Lifebook. These are attached to the mainboard through
- an SMBus interface managed by the I2C Intel ICH (i801) driver.
+ an SMBus interface managed by the I2C Intel ICH (i801) driver,
+ which you should also build for this kernel.

To compile this driver as a module, choose M here: the module will
be called apanel.
--

To: Randy Dunlap <randy.dunlap@...>
Cc: lkml <linux-kernel@...>, <shemminger@...>, akpm <akpm@...>
Date: Thursday, February 7, 2008 - 5:46 pm

Hi Randy,

Yeah, looks OK to me.

Acked-by: Jean Delvare <khali@linux-fr.org>

--
Jean Delvare
--

To: Randy Dunlap <randy.dunlap@...>
Cc: Jean Delvare <khali@...>, lkml <linux-kernel@...>, akpm <akpm@...>
Date: Thursday, February 7, 2008 - 3:12 pm

On Thu, 7 Feb 2008 11:04:12 -0800

On a related note, Ubuntu puts the i2c_i801 module in /etc/modprobe.d/blacklist.
To get the apanel to work, this must be removed, but that is a distro bug.

--
Stephen Hemminger <stephen.hemminger@vyatta.com>
--

Previous thread: [PATCH 3/3] x86: sparse error in efi_32.c by Harvey Harrison on Wednesday, February 6, 2008 - 8:07 pm. (1 message)

Next thread: [PATCH] docbook: dmapool: fix fatal changed filename by Randy Dunlap on Wednesday, February 6, 2008 - 8:29 pm. (1 message)