tahrpup 6.0.5 CE

A home for all kinds of Puppy related projects
Message
Author
gyro
Posts: 1798
Joined: Tue 28 Oct 2008, 21:35
Location: Brisbane, Australia

Re: usb keyboard problem during "init" script

#321 Post by gyro »

mavrothal wrote:Do you see /lib/firmware?
I did another test using your latest "init".

In all boots I get the console message:

Code: Select all

mounting none on /proc/bus/usb failed : no such file or directory
Did a boot "pfix=rdsh":
Same as before, symbolic links there but "/pup_z/" is empty, usb keyboard not work.
Issuing "exec switch" proceeds to ok running system.

Did a boot "pfix=rdsh0":
Symbolic links there, all modules and firmware in "/lib". But usb keyboard not working.
Un-plug and plug-in the usb keyboard, still not work.
'lsmod' shows no modules loaded.
'modprobe hid-logitech-dj' gives error:

Code: Select all

FATAL: Could not open 'kernel/drivers/hid/hid-logitech-dj.ko' : no such file or directory
'cd /lib/modules/3.14.20/'
'modprobe hid-logitech-dj' gives just the '#' prompt.
'lsmod' shows module 'hid_logitech_dj' as loaded.
Usb keyboard now works.
Try to continue with boot, system hangs with traceback.

So, is there any way to continue with the boot after breaking out into a console with "rdsh0"?

A little promising, but having to 'modprobe' the exact module required by the keyboard. a bit messy.
And I still don't know if it would then proceed to boot to an ok running system.

gyro
Last edited by gyro on Tue 23 Dec 2014, 14:44, edited 1 time in total.

gyro
Posts: 1798
Joined: Tue 28 Oct 2008, 21:35
Location: Brisbane, Australia

Re: usb keyboard problem during "init" script

#322 Post by gyro »

@mavrothal,
Following the results of my previous test, I applied this patch to your 'init':

Code: Select all

--- init.orig	2014-12-23 17:30:56.993812000 +1000
+++ init	2014-12-23 23:38:25.920244843 +1000
@@ -1174,6 +1174,10 @@
 ln -sf /pup_z/lib/modules/$KERNELVER /lib/modules
 ln -sf /pup_z/lib/firmware /lib
 
+ZZDIR="`pwd`"
+cd /lib/modules/$KERNELVER
+modprobe hid-logitech-dj
+cd "$ZZDIR"
 
 [ "$RDSH" = "0" ] && exec /bin/sh >/dev/console 2>&1 #w091222
 
Results:
1) Booting "pfix=rdsh0", the Logitech usb keyboard works, the required module has been loaded.
Shows some promise, the approach could work if the problem is just missing modules.

2) Normal boot, a few extra messages flash past on the console but ended up with what seemed to be an ok running system.
Good, when I tried to add the modules to "initrd.gz", I didn't get this.

3) Normal boot, 2 savefolders, the Logitech usb keyboard does not work, proceeded to what seemed to be an ok running system.
This fails because the multiple savefiles question comes before the symbolic links are created and the module is loaded. Might have to move the resolution of multiple savefiles down.

Challenge: method still requires a 'modprobe' of the particular module.
How do we tell 'init' the name of the module? With a new boot parameter?

gyro

User avatar
mavrothal
Posts: 3096
Joined: Mon 24 Aug 2009, 18:23

Re: usb keyboard problem during "init" script

#323 Post by mavrothal »

gyro wrote:@mavrothal,
Following the results of my previous test, I applied this patch to your 'init':

Code: Select all

--- init.orig	2014-12-23 17:30:56.993812000 +1000
+++ init	2014-12-23 23:38:25.920244843 +1000
@@ -1174,6 +1174,10 @@
 ln -sf /pup_z/lib/modules/$KERNELVER /lib/modules
 ln -sf /pup_z/lib/firmware /lib
 
+ZZDIR="`pwd`"
+cd /lib/modules/$KERNELVER
+modprobe hid-logitech-dj
+cd "$ZZDIR"
 
 [ "$RDSH" = "0" ] && exec /bin/sh >/dev/console 2>&1 #w091222
 
Results:
1) Booting "pfix=rdsh0", the Logitech usb keyboard works, the required module has been loaded.
Shows some promise, the approach could work if the problem is just missing modules.

2) Normal boot, a few extra messages flash past on the console but ended up with what seemed to be an ok running system.
Good, when I tried to add the modules to "initrd.gz", I didn't get this.

3) Normal boot, 2 savefolders, the Logitech usb keyboard does not work, proceeded to what seemed to be an ok running system.
This fails because the multiple savefiles question comes before the symbolic links are created and the module is loaded. Might have to move the resolution of multiple savefiles down.

Challenge: method still requires a 'modprobe' of the particular module.
How do we tell 'init' the name of the module? With a new boot parameter?

gyro
Good to know we are on a good road :D
The attached init fixes the extra messages.
I'll try to find some time to move savefile detection around but I'll be happy if bitten to it :wink:

I was actually thinking about how to tell init about the needed modules and the way kernel does that is with udev (unless techno has something better).
So I was thinking that zdrv in addition to kernel, firmware and aufs may also include udev so needed modules can be identified and loaded.
You may want to try this by just repackaging zdrv with udev (I guess is OK if it is also in main sfs for now)

Latter: Actually udev may not bee needed.
Just change the line

Code: Select all

MODALIASES="`cat /sys/bus/pci/devices/*/modalias`" #important, save to variable before loop.
to

Code: Select all

MODALIASES="`cat /sys/bus/*/devices/*/modalias`"
Takes a tad longer during boot (when a single dot appears) but should modprobe all needed modules at this point.

If this does not work we then can link udev from /pup_ro2 which is already loaded and try with udev.
Attachments
init.gz
(27.4 KiB) Downloaded 153 times
Last edited by mavrothal on Tue 23 Dec 2014, 16:16, edited 4 times in total.
== [url=http://www.catb.org/esr/faqs/smart-questions.html]Here is how to solve your[/url] [url=https://www.chiark.greenend.org.uk/~sgtatham/bugs.html]Linux problems fast[/url] ==

User avatar
rcrsn51
Posts: 13096
Joined: Tue 05 Sep 2006, 13:50
Location: Stratford, Ontario

#324 Post by rcrsn51 »

Somewhere back in this discussion, gyro wondered if the Logitech drivers could be built into the kernel like the other hid drivers. Is this not possible?

User avatar
mavrothal
Posts: 3096
Joined: Mon 24 Aug 2009, 18:23

#325 Post by mavrothal »

rcrsn51 wrote:Somewhere back in this discussion, gyro wondered if the Logitech drivers could be built into the kernel like the other hid drivers. Is this not possible?
It is. But what about the next missing module. Should all modules be build it to cover every possible (and rare) case?
A more generic approach is needed and this might just work
== [url=http://www.catb.org/esr/faqs/smart-questions.html]Here is how to solve your[/url] [url=https://www.chiark.greenend.org.uk/~sgtatham/bugs.html]Linux problems fast[/url] ==

User avatar
rcrsn51
Posts: 13096
Joined: Tue 05 Sep 2006, 13:50
Location: Stratford, Ontario

#326 Post by rcrsn51 »

mavrothal wrote:But what about the next missing module. Should all modules be build it to cover every possible (and rare) case?
Certainly not. Those modules can always be loaded manually once Puppy starts. But a keyboard driver is critical to making Puppy work as expected.

User avatar
alphadog
Posts: 109
Joined: Tue 07 Dec 2010, 11:20
Location: Deepest Wiltshire UK

Tahrpup Updates

#327 Post by alphadog »

Having some trouble here with the Tahrpup updates.
I run Tahr off of a usb stick with no save file at the moment (until I get this sorted if possible). My pc specs are below in my sig.
When I boot up my pc I always get all of my Hdds shown (see image 1).
After I have updated Tahrpup this bar appears ,as it should, I know, but it never goes away ( see image 2).
If I restart the graphical server (from the exit sub-menu ) the bar disappears but I am left with only 1 Hdd showing (see image 3).
Finally ; if I click on the "mount" icon on the desktop this bar appears and also never goes away (see image 4).
BTW this is using the 3.17 kernel.
Interesting !!!!!! I have just booted off a live cd with the 3.14 kernel and all is well with the world so perhaps I will just reinstall Tahrpup on the usb key.
Anybody shed any light on this ?
Attachments
capture4.png
When icon is pressed
(5.49 KiB) Downloaded 513 times
capture3.png
(8.13 KiB) Downloaded 511 times
capture2.png
(5.65 KiB) Downloaded 524 times
capture1.png
(8.96 KiB) Downloaded 514 times
Dell Optiplex760 8Gb RAM 256Gb SSD+500Gb HDD(Now running Bionicpup64)

User avatar
mavrothal
Posts: 3096
Joined: Mon 24 Aug 2009, 18:23

#328 Post by mavrothal »

Here is a couple of initrd.gz for tahrpup-6.0.
They are aiming to solve hardware detection issues as discussed above.
They both mount zdrv in the init and modprobe for needed modules.
The "modest" one is, well, modest in the sense that keeps the modprobe calls of the original init and adds some more. The "aggressive" one has none of the original modprobe calls.
To use them, rename/move your initrd.gz for safe keeping, and copy/move one of the two in its place.
Both initrds work for me in a frugal install on an ext4 partition, but I have not tested in say, booting from a VFAT USB stick in Russian language(!) or in a full install. I would appreciate any testing.
Both inits log everything in /initrd/tmp/bootinit.log, so if you have any issues, gzip this file and post it (contains no critical/sensitive/private etc info)
== [url=http://www.catb.org/esr/faqs/smart-questions.html]Here is how to solve your[/url] [url=https://www.chiark.greenend.org.uk/~sgtatham/bugs.html]Linux problems fast[/url] ==

User avatar
alphadog
Posts: 109
Joined: Tue 07 Dec 2010, 11:20
Location: Deepest Wiltshire UK

#329 Post by alphadog »

Thanks for these "Mavrothal".
I will not be able to test for a while due to Christmas being upon us and family oriented things to attend to . When I am able I will post back my findings.
Happy Christmas to one and all in the kennels.
Dell Optiplex760 8Gb RAM 256Gb SSD+500Gb HDD(Now running Bionicpup64)

User avatar
peebee
Posts: 4370
Joined: Sun 21 Sep 2008, 12:31
Location: Worcestershire, UK
Contact:

#330 Post by peebee »

mavrothal wrote:Here is a couple of initrd.gz for tahrpup-6.0.
Tried both initrd on my desktop

Neither keyboard (Logitech wireless; generic-usb wired) worked with both the moderate and agressive initrd

Just to make sure, I repeated the test with Slacko5.9.3 k3.4.94 and both keyboards worked as they should - i.e. could type a number to select from multiple savefolders.

Then swapped in the k3.4.103 kernel into TahrPup6 with the original initrd and repeated the experiment - both keyboards worked

So for me, the problem is kernel related.....

Cheers
peebee
ImageLxPup = Puppy + LXDE
Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

gcmartin

#331 Post by gcmartin »

Could a 32bit kernel parm have been changed or deprecated or some new parm added which would impact keyboard use (usb devices as anticipated new usb protocols/cables are being used in new usb devices)? Otherwise, this seemingly may be a bug associated with new 32bit kernels.

gyro
Posts: 1798
Joined: Tue 28 Oct 2008, 21:35
Location: Brisbane, Australia

Re: usb keyboard problem during "init" script

#332 Post by gyro »

mavrothal wrote:I'll try to find some time to move savefile detection around but I'll be happy if bitten to it :wink:
Well I did a very nasty hack to move the sorting out of multiple savefolders down till just before the savefolder is actually loaded. This puts it after the modules are made available, and after my 'modprobe'.

Sucess. My Logitech keyboard simply works, and it still boots to what appears to be an ok running system.

So, in my situation, there is a problem with the missing modules, and it can be fixed using the current approach. Just going to take a fair bit of work to do it properly.

gyro

gyro
Posts: 1798
Joined: Tue 28 Oct 2008, 21:35
Location: Brisbane, Australia

#333 Post by gyro »

mavrothal wrote:But what about the next missing module. Should all modules be build it to cover every possible (and rare) case?
A more generic approach is needed and this might just work
Not all modules, not a list of specific modules, just all modules that normally reside in "/lib/modules/3.14.20/kernel/drivers/hid/".

Edit:
I would think that would be a fairly generic solution. Although I have no idea as to how easy it would be to identify these modules before compiling the kernel.

gyro
Last edited by gyro on Wed 24 Dec 2014, 05:05, edited 2 times in total.

gyro
Posts: 1798
Joined: Tue 28 Oct 2008, 21:35
Location: Brisbane, Australia

#334 Post by gyro »

peebee wrote:Just to make sure, I repeated the test with Slacko5.9.3 k3.4.94 and both keyboards worked as they should - i.e. could type a number to select from multiple savefolders.
Consider the difference in the number of 'hid' modules in each kernel.
"/lib/modules/3.4.94/kernel/drivers/hid/" 34 items.
"/lib/modules/3.14.20/kernel/drivers/hid" 54 items.
The module for my Logitech keyboard, is one of those extra ones, in 3.14.20, but not 3.4.94.
So I expect if I used kernel 3.4.94 in tahpup 6, with the original 'init', my Logitech keyboard would work.

gyro

gyro
Posts: 1798
Joined: Tue 28 Oct 2008, 21:35
Location: Brisbane, Australia

#335 Post by gyro »

mavrothal wrote:Here is a couple of initrd.gz for tahrpup-6.0.
Do the "init" scripts include the changed "MODALIASES" line as per your earlier post?
I will test when I get an opportunity.

gyro

User avatar
mavrothal
Posts: 3096
Joined: Mon 24 Aug 2009, 18:23

#336 Post by mavrothal »

peebee wrote:
mavrothal wrote:Here is a couple of initrd.gz for tahrpup-6.0.
Tried both initrd on my desktop

Neither keyboard (Logitech wireless; generic-usb wired) worked with both the moderate and agressive initrd
<snip>
So for me, the problem is kernel related.....
Thx.
If the driver is not in the kernel, there is nothing to be done about it other than recompile the kernel with the missing driver
gyro wrote:
mavrothal wrote:Here is a couple of initrd.gz for tahrpup-6.0.
Do the "init" scripts include the changed "MODALIASES" line as per your earlier post?
I will test when I get an opportunity.
Yes they both do

BTW here is a 3rd version of the initrd that should be faster to load and hopefully do the same work. Is the "modest" version but instead of modprobe'ing everything, it does it only for /sys/bus/{mmc usb sdio hid serio tifm i2c pcmcia} that should cover almost all input devices
== [url=http://www.catb.org/esr/faqs/smart-questions.html]Here is how to solve your[/url] [url=https://www.chiark.greenend.org.uk/~sgtatham/bugs.html]Linux problems fast[/url] ==

User avatar
peebee
Posts: 4370
Joined: Sun 21 Sep 2008, 12:31
Location: Worcestershire, UK
Contact:

#337 Post by peebee »

mavrothal wrote:If the driver is not in the kernel, there is nothing to be done about it other than recompile the kernel with the missing driver
Both keyboards work fine with both the 3.4.103 and 3.14.20 kernels once the system is booted - so the drivers are in the kernel just not available/loaded when savefolders are being selected.....

Your "3rd way" initrd does not cure the problem for my setup....

FWIW - During grub4dos selection of which install to boot, only the wireless Logitech keyboard works - the wired generic-usb one doesn't.....both plugged in together but Logitech at the back, wired on a front panel usb port....
ImageLxPup = Puppy + LXDE
Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

User avatar
mavrothal
Posts: 3096
Joined: Mon 24 Aug 2009, 18:23

#338 Post by mavrothal »

peebee wrote:
mavrothal wrote:If the driver is not in the kernel, there is nothing to be done about it other than recompile the kernel with the missing driver
Both keyboards work fine with both the 3.4.103 and 3.14.20 kernels once the system is booted - so the drivers are in the kernel just not available/loaded when savefolders are being selected.....

FWIW - During grub4dos selection of which install to boot, only the wireless Logitech keyboard works - the wired generic-usb one doesn't.....both plugged in together but Logitech at the back, wired on a front panel usb port....
OK. Thx
You think you can post or PM the /initrd/tmp/bootinit.log file (assuming you used one of the 3 initrds) and the dmesg output (or /var/log/messages) ?

BTW does any of the keyboards needs specific firmware?
== [url=http://www.catb.org/esr/faqs/smart-questions.html]Here is how to solve your[/url] [url=https://www.chiark.greenend.org.uk/~sgtatham/bugs.html]Linux problems fast[/url] ==

gyro
Posts: 1798
Joined: Tue 28 Oct 2008, 21:35
Location: Brisbane, Australia

#339 Post by gyro »

mavrothal wrote:Here is a couple of initrd.gz for tahrpup-6.0.
Sorry, but these have no chance of making any difference when the keyboard is needed to enter the number for multiple savefolders, because all your good work happens after it.
And my tests using them confirmed this.

So, I patched the 'init' with a very crude hack to move the multiple savefolders down until just before the savefolder is loaded.
The difference can be observed in the order of console messages during boot.
I have attached this patch file as "int.move-multi.diff.gz".

Other bad news; my Logitech keyboard did not work until I also patched 'init' with the 'modprobe' for my particular module.

gyro
Attachments
init.move-multi.diff.gz
gunzip to produce the patch file
(800 Bytes) Downloaded 175 times

User avatar
peebee
Posts: 4370
Joined: Sun 21 Sep 2008, 12:31
Location: Worcestershire, UK
Contact:

#340 Post by peebee »

mavrothal wrote:You think you can post or PM the /initrd/tmp/bootinit.log file (assuming you used one of the 3 initrds) and the dmesg output (or /var/log/messages) ?

BTW does any of the keyboards needs specific firmware?
I never get to a working system - init just hangs at savefolder selection and system has to be hard powered down to recover - so not sure how to get these files for you - will the rdsh cheat code let me??

No firmware needed that I'm aware of....they "just work" in all situations other than savefolder selection

FYI - here are the dmesg lines for k3.4.94 and k.3.14.20 after booting to a working system with no savefolder - they are quite different
3.4.94 wrote:[ 2.156602] usb 2-2: Manufacturer: Logitech
[ 2.166729] input: Logitech USB Receiver as /devices/pci0000:00/0000:00:02.0/usb2/2-2/2-2:1.0/input/input0
[ 2.166740] logitech 0003:046D:C517.0001: input: USB HID v1.10 Keyboard [Logitech USB Receiver] on usb-0000:00:02.0-2/input0
[ 2.176560] logitech 0003:046D:C517.0002: fixing up Logitech keyboard report descriptor
[ 2.176992] input: Logitech USB Receiver as /devices/pci0000:00/0000:00:02.0/usb2/2-2/2-2:1.1/input/input1
[ 2.177075] logitech 0003:046D:C517.0002: input,hiddev0: USB HID v1.10 Mouse [Logitech USB Receiver] on usb-0000:00:02.0-2/input1

[ 2.575882] usb 2-6: Product: AMP USB KB Pro
[ 2.575884] usb 2-6: Manufacturer: AMP
[ 2.585990] input: AMP AMP USB KB Pro as /devices/pci0000:00/0000:00:02.0/usb2/2-6/2-6:1.0/input/input2
[ 2.586003] generic-usb 0003:0E8F:0021.0003: input: USB HID v1.10 Keyboard [AMP AMP USB KB Pro] on usb-0000:00:02.0-6/input0
[ 2.599909] input: AMP AMP USB KB Pro as /devices/pci0000:00/0000:00:02.0/usb2/2-6/2-6:1.1/input/input3
[ 2.599920] generic-usb 0003:0E8F:0021.0004: input: USB HID v1.10 Device [AMP AMP USB KB Pro] on usb-0000:00:02.0-6/input1
3.14.20 wrote:input: Logitech USB Receiver as /devices/pci0000:00/0000:00:02.0/usb2/2-2/2-2:1.0/0003:046D:C517.0001/input/input5
logitech 0003:046D:C517.0001: input,hidraw0: USB HID v1.10 Keyboard [Logitech USB Receiver] on usb-0000:00:02.0-2/input0
logitech 0003:046D:C517.0002: fixing up Logitech keyboard report descriptor
input: Logitech USB Receiver as /devices/pci0000:00/0000:00:02.0/usb2/2-2/2-2:1.1/0003:046D:C517.0002/input/input6
logitech 0003:046D:C517.0002: input,hiddev0,hidraw1: USB HID v1.10 Mouse [Logitech USB Receiver] on usb-0000:00:02.0-2/input1

input: AMP AMP USB KB Pro as /devices/pci0000:00/0000:00:02.0/usb2/2-6/2-6:1.0/0003:0E8F:0021.0003/input/input8
hid-generic 0003:0E8F:0021.0003: input,hidraw2: USB HID v1.10 Keyboard [AMP AMP USB KB Pro] on usb-0000:00:02.0-6/input0
input: AMP AMP USB KB Pro as /devices/pci0000:00/0000:00:02.0/usb2/2-6/2-6:1.1/0003:0E8F:0021.0004/input/input9
hid-generic 0003:0E8F:0021.0004: input,hidraw3: USB HID v1.10 Device [AMP AMP USB KB Pro] on usb-0000:00:02.0-6/input1
Last edited by peebee on Wed 24 Dec 2014, 12:29, edited 2 times in total.
ImageLxPup = Puppy + LXDE
Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

Post Reply