2004-06-15 14:07:08

by Karel Kulhavy

[permalink] [raw]
Subject: CONFIG_USB_HID vs. CONFIG_USB_HIDINPUT

Hello

When I enable CONFIG_USB_HID and not enable CONFIG_USB_HIDINPUT in 2.4.25, will
I get something different from when I don't enable neither of them?

The <Help> says basically the same about both: that they control
"keyboards, mice, joysticks, graphics tablets, or any other HID based devices"
(CONFIG_USB_HID)
"keyboard, mouse or joystick or any other HID input device"
(CONFIG_USB_HIDINPUT)

I assume
1) it doesn't matter if "keyboard" or "keyboards" is in the <Help>
2) graphics tablets are assumed to be "any other HID input devices".

Cl<


2004-06-15 16:03:58

by Vojtech Pavlik

[permalink] [raw]
Subject: Re: CONFIG_USB_HID vs. CONFIG_USB_HIDINPUT

On Tue, Jun 15, 2004 at 02:07:05PM +0000, Karel Kulhav? wrote:
> Hello
>
> When I enable CONFIG_USB_HID and not enable CONFIG_USB_HIDINPUT in 2.4.25, will
> I get something different from when I don't enable neither of them?
>
> The <Help> says basically the same about both: that they control
> "keyboards, mice, joysticks, graphics tablets, or any other HID based devices"
> (CONFIG_USB_HID)
> "keyboard, mouse or joystick or any other HID input device"
> (CONFIG_USB_HIDINPUT)
>
> I assume
> 1) it doesn't matter if "keyboard" or "keyboards" is in the <Help>
> 2) graphics tablets are assumed to be "any other HID input devices".

In that case you get the HID driver, but you won't get the Input
binding, so the devices will be detected, but won't be accessible by the
common means (keyboard through console, mouse via /dev/input/mice,
etc.). They still will be accessible via HIDDEV, if you enable that.

Enabling HID without either HIDINPUT or HIDDEV is pointless.

--
Vojtech Pavlik
SuSE Labs, SuSE CR

2004-06-15 17:14:54

by Karel Kulhavy

[permalink] [raw]
Subject: Re: CONFIG_USB_HID vs. CONFIG_USB_HIDINPUT

On Tue, Jun 15, 2004 at 06:05:02PM +0200, Vojtech Pavlik wrote:
> On Tue, Jun 15, 2004 at 02:07:05PM +0000, Karel Kulhav? wrote:
> > Hello
> >
> > When I enable CONFIG_USB_HID and not enable CONFIG_USB_HIDINPUT in 2.4.25, will
> > I get something different from when I don't enable neither of them?
> >
> > The <Help> says basically the same about both: that they control
> > "keyboards, mice, joysticks, graphics tablets, or any other HID based devices"
> > (CONFIG_USB_HID)
> > "keyboard, mouse or joystick or any other HID input device"
> > (CONFIG_USB_HIDINPUT)
> >
> > I assume
> > 1) it doesn't matter if "keyboard" or "keyboards" is in the <Help>
> > 2) graphics tablets are assumed to be "any other HID input devices".
>
> In that case you get the HID driver, but you won't get the Input
> binding, so the devices will be detected, but won't be accessible by the
> common means (keyboard through console, mouse via /dev/input/mice,
> etc.). They still will be accessible via HIDDEV, if you enable that.
>
> Enabling HID without either HIDINPUT or HIDDEV is pointless.

So they are 4 meaningful combinations:
0)nothing
1)HIDDEV
2)HIDINPUT
3)HIDINPUT+HIDDEV

There are 3 tickboxes with 5 possible combinations. I suggest reducing this
count to 2 tickboxes with 4 naturally resulting combinations. I think it will
be less confusing for a user.

>
> --
> Vojtech Pavlik
> SuSE Labs, SuSE CR
> -
> 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/

2004-06-15 20:30:22

by Vojtech Pavlik

[permalink] [raw]
Subject: Re: CONFIG_USB_HID vs. CONFIG_USB_HIDINPUT

On Tue, Jun 15, 2004 at 05:14:51PM +0000, Karel Kulhav? wrote:
> On Tue, Jun 15, 2004 at 06:05:02PM +0200, Vojtech Pavlik wrote:
> > On Tue, Jun 15, 2004 at 02:07:05PM +0000, Karel Kulhav? wrote:
> > > Hello
> > >
> > > When I enable CONFIG_USB_HID and not enable CONFIG_USB_HIDINPUT in 2.4.25, will
> > > I get something different from when I don't enable neither of them?
> > >
> > > The <Help> says basically the same about both: that they control
> > > "keyboards, mice, joysticks, graphics tablets, or any other HID based devices"
> > > (CONFIG_USB_HID)
> > > "keyboard, mouse or joystick or any other HID input device"
> > > (CONFIG_USB_HIDINPUT)
> > >
> > > I assume
> > > 1) it doesn't matter if "keyboard" or "keyboards" is in the <Help>
> > > 2) graphics tablets are assumed to be "any other HID input devices".
> >
> > In that case you get the HID driver, but you won't get the Input
> > binding, so the devices will be detected, but won't be accessible by the
> > common means (keyboard through console, mouse via /dev/input/mice,
> > etc.). They still will be accessible via HIDDEV, if you enable that.
> >
> > Enabling HID without either HIDINPUT or HIDDEV is pointless.
>
> So they are 4 meaningful combinations:
> 0)nothing
> 1)HIDDEV
> 2)HIDINPUT
> 3)HIDINPUT+HIDDEV
>
> There are 3 tickboxes with 5 possible combinations. I suggest reducing this
> count to 2 tickboxes with 4 naturally resulting combinations. I think it will
> be less confusing for a user.

Actually - not. CONFIG_USB_HID enables or disables the hid.o module, and
has three states - Y, N, M. The HIDINPUT/HIDDEV are just options for
that module, enabling/disabling some of its functionality, having only Y
and N states.

So it's quite straightforward. And there are 7 useful combinations,
out of 9 possible.

And in your suggested case, you would either have to make
HIDDEV/HIDINPUT tristate, resulting in illegal combinations of Y+M, or
you wouldn't be able to express that the driver should be built as a
module.

--
Vojtech Pavlik
SuSE Labs, SuSE CR