Could we please have this (or a proper fix) in before 2.6.20 to resolve
the regression please?
----- Forwarded message from Russell King <[email protected]> -----
Date: Fri, 22 Dec 2006 17:09:16 +0000
From: Russell King <[email protected]>
To: Linux Kernel List <[email protected]>
Cc: [email protected], [email protected]
Subject: [PATCH] Fix some ARM builds due to HID brokenness
The new location for HID is extremely annoying:
1. the help text implies that you need to enable it for any
keyboard or mouse attached to the system. This is not
correct.
2. it defaults to 'y'. When you have input deselected, this
causes the kernel to fail to link:
drivers/built-in.o: In function `usb_hidinput_input_event':
hid-input.c:(.text+0x55054): undefined reference to `input_ff_event'
drivers/built-in.o: In function `hidinput_hid_event':
hid-input.c:(.text+0x6446c): undefined reference to `input_event'
hid-input.c:(.text+0x644f8): undefined reference to `input_event'
hid-input.c:(.text+0x64550): undefined reference to `input_event'
hid-input.c:(.text+0x64590): undefined reference to `input_event'
hid-input.c:(.text+0x645b8): undefined reference to `input_event'
drivers/built-in.o: In function `hidinput_disconnect':
hid-input.c:(.text+0x64624): undefined reference to `input_unregister_device'
drivers/built-in.o: In function `hidinput_report_event':
hid-input.c:(.text+0x64670): undefined reference to `input_event'
drivers/built-in.o: In function `hidinput_connect':
hid-input.c:(.text+0x64824): undefined reference to `input_allocate_device'
hid-input.c:(.text+0x675e0): undefined reference to `input_register_device'
hid-input.c:(.text+0x67698): undefined reference to `input_free_device'
hid-input.c:(.text+0x676b8): undefined reference to `input_register_device'
make: *** [.tmp_vmlinux1] Error 1
Fix the second problem by making it depend on INPUT. The first
problem is left as an exercise for the HID maintainers to solve.
Signed-off-by: Russell King <[email protected]>
diff --git a/drivers/hid/Kconfig b/drivers/hid/Kconfig
index 96d4a0b..1ccc222 100644
--- a/drivers/hid/Kconfig
+++ b/drivers/hid/Kconfig
@@ -6,6 +6,7 @@ menu "HID Devices"
config HID
tristate "Generic HID support"
+ depends on INPUT
default y
---help---
Say Y here if you want generic HID support to connect keyboards,
----- End forwarded message -----
On Fri, Jan 12, 2007 at 09:00:15PM +0000, Russell King wrote:
> Could we please have this (or a proper fix) in before 2.6.20 to resolve
> the regression please?
Actually, this remaining regression is not caused by this patch not being
integrated, but this:
config USB_HID
tristate "USB Human Interface Device (full HID) support"
default y
depends on USB
select HID
So... we have USB_HID _newly_ selected in configurations which didn't
have it before, which overrides CONFIG_HID and builds HID without
input support.
Relevant lines from "make ep93xx_defconfig" output:
Generic input layer (needed for keyboard, mouse, ...) (INPUT) [N/m/y/?] n
Support for Host-side USB (USB) [Y/n/m/?] y
USB Human Interface Device (full HID) support (USB_HID) [Y/n/m/?] (NEW) y
Can USB_HID also depend on INPUT ?
> ----- Forwarded message from Russell King <[email protected]> -----
>
> Date: Fri, 22 Dec 2006 17:09:16 +0000
> From: Russell King <[email protected]>
> To: Linux Kernel List <[email protected]>
> Cc: [email protected], [email protected]
> Subject: [PATCH] Fix some ARM builds due to HID brokenness
>
> The new location for HID is extremely annoying:
>
> 1. the help text implies that you need to enable it for any
> keyboard or mouse attached to the system. This is not
> correct.
>
> 2. it defaults to 'y'. When you have input deselected, this
> causes the kernel to fail to link:
>
> drivers/built-in.o: In function `usb_hidinput_input_event':
> hid-input.c:(.text+0x55054): undefined reference to `input_ff_event'
> drivers/built-in.o: In function `hidinput_hid_event':
> hid-input.c:(.text+0x6446c): undefined reference to `input_event'
> hid-input.c:(.text+0x644f8): undefined reference to `input_event'
> hid-input.c:(.text+0x64550): undefined reference to `input_event'
> hid-input.c:(.text+0x64590): undefined reference to `input_event'
> hid-input.c:(.text+0x645b8): undefined reference to `input_event'
> drivers/built-in.o: In function `hidinput_disconnect':
> hid-input.c:(.text+0x64624): undefined reference to `input_unregister_device'
> drivers/built-in.o: In function `hidinput_report_event':
> hid-input.c:(.text+0x64670): undefined reference to `input_event'
> drivers/built-in.o: In function `hidinput_connect':
> hid-input.c:(.text+0x64824): undefined reference to `input_allocate_device'
> hid-input.c:(.text+0x675e0): undefined reference to `input_register_device'
> hid-input.c:(.text+0x67698): undefined reference to `input_free_device'
> hid-input.c:(.text+0x676b8): undefined reference to `input_register_device'
> make: *** [.tmp_vmlinux1] Error 1
>
> Fix the second problem by making it depend on INPUT. The first
> problem is left as an exercise for the HID maintainers to solve.
>
> Signed-off-by: Russell King <[email protected]>
>
> diff --git a/drivers/hid/Kconfig b/drivers/hid/Kconfig
> index 96d4a0b..1ccc222 100644
> --- a/drivers/hid/Kconfig
> +++ b/drivers/hid/Kconfig
> @@ -6,6 +6,7 @@ menu "HID Devices"
>
> config HID
> tristate "Generic HID support"
> + depends on INPUT
> default y
> ---help---
> Say Y here if you want generic HID support to connect keyboards,
>
> ----- End forwarded message -----
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of:
On Fri, 12 Jan 2007 21:00:15 +0000
Russell King <[email protected]> wrote:
> Could we please have this (or a proper fix) in before 2.6.20 to resolve
> the regression please?
>
>
> ...
>
> --- a/drivers/hid/Kconfig
> +++ b/drivers/hid/Kconfig
> @@ -6,6 +6,7 @@ menu "HID Devices"
>
> config HID
> tristate "Generic HID support"
> + depends on INPUT
> default y
> ---help---
> Say Y here if you want generic HID support to connect keyboards,
>
This was merged a week ago..
On Fri, Jan 12, 2007 at 09:42:16PM +0000, Russell King wrote:
> On Fri, Jan 12, 2007 at 09:00:15PM +0000, Russell King wrote:
> > Could we please have this (or a proper fix) in before 2.6.20 to resolve
> > the regression please?
>
> Actually, this remaining regression is not caused by this patch not being
> integrated, but this:
>
> config USB_HID
> tristate "USB Human Interface Device (full HID) support"
> default y
> depends on USB
> select HID
>
> So... we have USB_HID _newly_ selected in configurations which didn't
> have it before, which overrides CONFIG_HID and builds HID without
> input support.
>
> Relevant lines from "make ep93xx_defconfig" output:
>
> Generic input layer (needed for keyboard, mouse, ...) (INPUT) [N/m/y/?] n
> Support for Host-side USB (USB) [Y/n/m/?] y
> USB Human Interface Device (full HID) support (USB_HID) [Y/n/m/?] (NEW) y
>
> Can USB_HID also depend on INPUT ?
Nevertheless, here's a patch to solve more of the same that my original
patch attempted to solve. The original patch is still required. Seems
to solve the final instance of this problem here.
diff --git a/drivers/usb/input/Kconfig b/drivers/usb/input/Kconfig
index 258a5d0..c7d8875 100644
--- a/drivers/usb/input/Kconfig
+++ b/drivers/usb/input/Kconfig
@@ -7,7 +7,7 @@ comment "USB Input Devices"
config USB_HID
tristate "USB Human Interface Device (full HID) support"
default y
- depends on USB
+ depends on USB && INPUT
select HID
---help---
Say Y here if you want full HID support to connect USB keyboards,
--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of:
On Fri, 12 Jan 2007 13:44:05 -0800 Andrew Morton wrote:
> On Fri, 12 Jan 2007 21:00:15 +0000
> Russell King <[email protected]> wrote:
>
> > Could we please have this (or a proper fix) in before 2.6.20 to resolve
> > the regression please?
> >
> >
> > ...
> >
> > --- a/drivers/hid/Kconfig
> > +++ b/drivers/hid/Kconfig
> > @@ -6,6 +6,7 @@ menu "HID Devices"
> >
> > config HID
> > tristate "Generic HID support"
> > + depends on INPUT
> > default y
> > ---help---
> > Say Y here if you want generic HID support to connect keyboards,
> >
>
> This was merged a week ago..
Right, we are past that to a new patch now.
---
~Randy
On Fri, 12 Jan 2007, Russell King wrote:
> > So... we have USB_HID _newly_ selected in configurations which didn't
> > have it before, which overrides CONFIG_HID and builds HID without
> > input support. Can USB_HID also depend on INPUT ?
> Nevertheless, here's a patch to solve more of the same that my original
> patch attempted to solve. The original patch is still required. Seems
> to solve the final instance of this problem here.
Yes, it is by the time being needed for USB_HID to depend on input. Thanks
for the patch, I applied it to HID tree and will push it upstream in the
next round.
--
Jiri Kosina
SUSE Labs