Vojtech,
I duplicated Harold's report and then made a few changes.
Maybe it will be enough to help make a real patch.
On Fri, Apr 28, 2000 at 11:03:02AM -0600, Harold Oga wrote:
>Hi,
> I seem to be having a problem with the latest backport patch
>with regards to my ms intellimouse explorer usb mouse. Namely,
>it doesn't seem to want to admit the existance of char-major-13.
Hi,
Well, it seems my problems with the backport patch goes away
if I build all the usb stuff as modules rather than directly into
the kernel.
-Harold
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
On a SuSE 6.3 (2.2.13) system, Pentium 180 (my ancient home
system), UHCI add-in PCI adapter, I built vanilla 2.2.14 +
the USB backport patch, first as modules:
Hub/keyboard combo worked right away. Printer is recognized
(I didn't try to print).
Then I switched to USB in-kernel: UHCI, printer, usbkbd (HIDBP),
& usbmouse (HIDBP).
When I rebooted, my PS/2 keyboard was dead, but the USB keyboard
was working. Since my boot scripts start gpm for a PS/2 mouse
which wasn't there, maybe that has something to do with it.
Anyway, I killed gpm (from the USB kbd) and then my PS/2 kbd
worked OK.
However, my mouse wasn't recognized and there was no char major
13 listed in /proc/devices.
Until I modified usb-core.c to call input_init() and made simple
changes to input.c [input_init() not static; commented out
module_init() and module_exit()]. So my first guess is that
it's an init order problem....
On a different subject, it seems that I recall someone saying
that usbdevfs didn't work (or was empty) on the latest
(2.3.99-pre6-7) backport, but I used it both with USB as modules
and USB in-kernel with no problems.
~Randy
--- input.c.org Mon May 1 23:55:53 2000
+++ input.c Mon May 1 23:41:55 2000
@@ -367,7 +367,7 @@
devfs_unregister(handle);
}
-static int __init input_init(void)
+/*static*/ int __init input_init(void)
{
if (devfs_register_chrdev(INPUT_MAJOR, "input", &input_fops)) {
printk("input: unable to register char major %d", INPUT_MAJOR);
@@ -385,5 +385,5 @@
printk(KERN_ERR "input: can't unregister char major %d", INPUT_MAJOR);
}
-module_init(input_init);
-module_exit(input_exit);
+//module_init(input_init);
+//module_exit(input_exit);
--- usb-core.c.org Mon May 1 23:56:33 2000
+++ usb-core.c Mon May 1 23:47:10 2000
@@ -85,6 +85,14 @@
usbdevfs_init();
usb_hub_init();
+#if defined(CONFIG_INPUT_KEYBDEV) || defined(CONFIG_INPUT_MOUSEDEV) || \
+ defined(CONFIG_INPUT_JOYDEV) || defined(CONFIG_INPUT_EVDEV) || \
+ defined(CONFIG_INPUT_KBD) || defined(CONFIG_INPUT_MOUSE) || \
+ defined(CONFIG_INPUT_WACOM) || defined(CONFIG_INPUT_WMFORCE) || \
+ defined(CONFIG_INPUT_HID)
+ input_init();
+#endif
+
#ifndef CONFIG_USB_MODULE
#ifdef CONFIG_VIDEO_CPIA_USB
usb_cpia_init();
// in 2.3.99-to-2.2.14 backport:
Character devices:
1 mem
2 pty
3 ttyp
4 tty0
5 ptmx
6 lp
7 vcs
10 misc
36 netlink
128 ptm
136 pts
180 usb
Block devices:
1 ramdisk
2 fd
3 ide0
7 loop
22 ide1
45 pd
// after input_init() from usb-core.c:
Character devices:
1 mem
2 pty
3 ttyp
4 tty0
5 ptmx
6 lp
7 vcs
10 misc
13 input
36 netlink
128 ptm
136 pts
180 usb
Block devices:
1 ramdisk
2 fd
3 ide0
7 loop
22 ide1
45 pd
usb_mouse
keyboard
0- 15: usblp
hub
usbdevfs
T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 1.00 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 0.00
S: Product=USB UHCI Root Hub
S: SerialNumber=ff40
C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=255ms
T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=12 MxCh= 3
D: Ver= 1.00 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=04a5 ProdID=9213 Rev= 1.01
S: Manufacturer=API
S: Product=API USB KB HUB
S: SerialNumber=1234
C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=100mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 1 Ivl=255ms
T: Bus=01 Lev=02 Prnt=02 Port=00 Cnt=01 Dev#= 3 Spd=12 MxCh= 0
D: Ver= 1.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=04a5 ProdID=0001 Rev= 1.01
S: Manufacturer=API
S: Product=API USB KB HUB
S: SerialNumber=1234
C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr= 50mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=01 Driver=keyboard
E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl= 10ms
T: Bus=01 Lev=02 Prnt=02 Port=01 Cnt=02 Dev#= 4 Spd=1.5 MxCh= 0
D: Ver= 1.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=049c ProdID=0002 Rev= 0.00
C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr= 30mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=00 Prot=00 Driver=(none)
E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl= 10ms
T: Bus=01 Lev=02 Prnt=02 Port=02 Cnt=03 Dev#= 5 Spd=12 MxCh= 0
D: Ver= 1.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=03f0 ProdID=1004 Rev= 1.00
S: Manufacturer=Hewlett-Packard
S: Product=DeskJet 970C
S: SerialNumber=US98G1K0DMJT
C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 2mA
I: If#= 0 Alt= 0 #EPs= 2 Cls=07(print) Sub=01 Prot=01 Driver=usblp
E: Ad=81(I) Atr=02(Bulk) MxPS= 64 Ivl= 0ms
E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl= 0ms
I: If#= 0 Alt= 1 #EPs= 2 Cls=07(print) Sub=01 Prot=02 Driver=usblp
E: Ad=01(O) Atr=02(Bulk) MxPS= 64 Ivl= 0ms
E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl= 0ms
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]