[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#248855: Useful clues for non-working USB keyboard on SunBlade 150 / sparc64



more digging. sorry about the length


$ svn diff -r"{"20040511"}":"{"20040619"}"  \
 d-i/packages/usb-discover/ohci-pci.lst
Index: d-i/packages/usb-discover/ohci-pci.lst
===================================================================
--- d-i/packages/usb-discover/ohci-pci.lst      (revision 15106)
+++ d-i/packages/usb-discover/ohci-pci.lst      (revision 16927)
@@ -1,18 +1 @@
-0e117020
-0e11a0f8
-10227404
-1022740c
-10227414
-10330035
-10397001
-1045a0f8
-1045c861
-10559462
-106b0019
-106b0026
-108e1103
-10950670
-10950673
-10b95237
-11660220
-11660221
+10de0067

Note - 108e1103 is the USB host controller in these troublesome sunblades.

I see now the connection to discover1-data. The usb-discover Makefile uses
/usr/share/discover/pci.lst on the d-i build host and dumps into the udeb
all the e.g. ohci entries, as (e.g.) /usr/lib/usb-discover/ohci-pci.lst.
/lib/debian-installer-startup.d/S33usb-linux runs /usr/sbin/usb-discover,
which references the ohci-pci.lst and friends.



I was able to mount and compare the boot/initrd.gz files for all three
versions. The only differences between 20040511 and RC2 are
--- /mnt/a/usr/lib/usb-discover/ohci-pci.lst    Thu Jan  1 10:00:00 1970
+++ /mnt/b/usr/lib/usb-discover/ohci-pci.lst    Thu Jan  1 10:00:00 1970
@@ -3,6 +3,9 @@
 10227404
 1022740c
 10227414
+10227449
+10227461
+10227464
 10330035
 10397001
 1045a0f8
@@ -14,5 +17,7 @@
 10950670
 10950673
 10b95237
+10de0067
+10de00d7
 11660220
 11660221

none of which matter to our problem.



Not much change in /usr/share/discover/pci.lst either,
--- /mnt/a/usr/share/discover/pci.lst   Thu Jan  1 10:00:00 1970
+++ /mnt/b/usr/share/discover/pci.lst   Thu Jan  1 10:00:00 1970
<snip>
 108e Sun Microsystems Computer Corp.
-       108e1001        unknown sunhme  Happy Meal
+       108e1001        ethernet        sunhme  Happy Meal
        108e1101        ethernet        sungem  RIO GEM
-       108e1102        unknown ohci1394        RIO 1394
+       108e1102        bridge  ohci1394        RIO 1394
        108e1103        usb     usb-ohci        RIO USB
        108e2bad        ethernet        sungem  GEM


Hmm, maybe this discovery stuff is all a red herring.



I noticed the usb-linux startup script has moved from
   lib/debian-installer.d/S45usb-linux
to
   lib/debian-installer-startup.d/S33usb-linux
so possibly the order that things happen has changed enough to matter?
See below.

These scripts both do one thing, call /usr/sbin/usb-discover. The only
change there is around the hid support module, sometime after 20040619.
--- /mnt/a/usr/sbin/usb-discover        Thu Jan  1 10:00:00 1970
+++ /mnt/b/usr/sbin/usb-discover        Thu Jan  1 10:00:00 1970
@@ -50,9 +50,12 @@
        if [ "$kver" = 2.6 ]; then
                modprobe usbkbd || true
                modprobe hid || true
+               # ... which changed in 2.6.6 to:
+               modprobe usbhid || true
        else
                modprobe usbkbd  || true
-               modprobe keybdev || true
+               modprobe hid || true
+               modprobe keybdev || true
        fi
        modprobe usbserial || true
 fi


About the order of events -
20040511:
 /etc/init.d/rcS runs, which calls everything in /etc/rcS.d, ie
   S01mount
   S50sysklog
   S55kbd-chooser
 /sbin/debian-installer runs, calling everything in /lib/debian-installer.d
   S10lowmem
   S20templates
   S25env2debconf
   S30term-linux
   S31lowmem
   S35framebuffer-linux
   S40utf8-linux
   S45usb-linux
   S50frontend
   S50priority
   S60devpts-linux
   S70main-menu-linux
   S90utf8-linux

RC2:
   /sbin/debian-installer-startup runs, calling all the scripts in
     /lib/debian-installer-startup.d,
   S01mount
   S10syslog
   S20templates
   S30read-environment
   S33usb-linux
   S35term
   S38lowmem
   S55kbd-chooser
   and then /sbin/debian-installer, calling its .d scripts,
   S30term
   S35framebuffer-linux
   S40term-linux
   S60frontend
   S70menu-linux
   S72menu-exit


so in 20040511 kbd-chooser was running earlier, before term-linux or
usb-linux. About the only significant difference I can see is that in
20040511 kbd-chooser ran before usb-linux tried to load any USB support
modules. Now, usb-linux runs first, and it loads full HID support
(hid.o).

Possibly significant, kbd-chooser now also turns on unicode support
(kbd-mode -u).

I guess now we need some installer log files for attempts with each disc?

Cheers
Vince





Reply to: