On Mon, 2009-06-08 at 09:11 +0200, Debian wrote:
> > Debian doesn't patch this drivers, so if it works in other distributions
> > this is not a kernel bug.
>
> Yes - i also could not understand this.
> The analog.ko is very old and there would be no need to change it.
>
> On the other hand i did found a forum entry with a tip that the analog module have
> to be patched, because something is wrong.
> Sorry but i have lost the link and the content.
>
> So has this kernel-module been changed in the past?
You can look through the last few years' changes at
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=history;f=drivers/input/joystick/analog.c
I'm not sure how much use that will be to you though.
> At least i also can't believe that the kernel-module is the problem, and so i
> investigated in the problem of the kernel-message registering "/class/input/input1"
> instead of "/dev/input/js0".
/class/input/input1 is the path to the device's information in sysfs,
which is quite separate from the path to its special file in /dev.
> I assumed that must have to do with udev, which seems to be responsible for that ?
> But the maintainer of udev says that everything is fine and there can't be a problem.
> (See bug 518815)
Marco d'Itri often needs to be convinced to take bugs seriously.
> I don't understand the interaction of udev and the kernel and so i need help to
> understand the mechanism of inserting kernel-modules.
The kernel detects devices on the PCI, USB or other bus and tries to
find a driver for them. At this point it has no idea what the device
actually does, but it has some kind of identifier that can be used to
find a driver. If no suitable driver is loaded then it runs "modprobe"
to load a driver.
The driver knows that the device is a network interface, disk interface,
or in this case an input device, and it registers it with the kernel in
the appropriate "class". The kernel then sends a message to udevd that
a device of this class has been added, and udevd follows the rules in
its configuration files. These rules specify the creation of device
files under /dev, and potentially many other actions.
> We need help, because there are many users outside, that still wants to use this
> good old analog gameport for gaming or simple as input for external signals.
>
> Can you please give some advice for further analysis?
As root, run:
rmmod analog
/etc/init.d/udev stop
udevd --debug >udevd.log 2>&1 &
sleep 1
modprobe analog
kill %1
/etc/init.d/udev start
At the end of the file udevd.log you should see the messages sent by the
kernel to udevd about the joystick device.
Ben
--
Ben Hutchings
Beware of programmers who carry screwdrivers. - Leonard Brandwein
Attachment:
signature.asc
Description: This is a digitally signed message part