LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Hardware (https://www.linuxquestions.org/questions/linux-hardware-18/)
-   -   USB Multi-card Flash Reader in Kernel 2.6.19 (https://www.linuxquestions.org/questions/linux-hardware-18/usb-multi-card-flash-reader-in-kernel-2-6-19-a-521381/)

sausagejohnson 01-21-2007 06:31 AM

USB Multi-card Flash Reader in Kernel 2.6.19
 
Hi Guys,

I am at my wits end getting my USB Multi-card Flash Reader working again since upgrading from a Fedora 4 (2.6.12), where everything was working fine, and no longer since Fedora 6 (2.6.19).

When I first installed the reader under 2.6.12, I had numerous problem which were corrected by compiling the right modules, disactivating echi-hcd (and only using ohci-hcd), and finally disactivating selinux (which caused the usb no end of problems).

But now in 2.6.19, I have done the same things and the techniques no longer work. Hoping someone can point out something that I may have missed. My current checklist is:

* Compiled in "usb-storage" as a module
* Compiled in "scsi_mod" as a module
* Compiled in "sg" into as a module
* Compiled in "sd_mod" as a module
* Compiled in "ohci-hcd" as a module
* Compiled in "uhci-hcd" as a module
* Compiled in "ehci-hcd" as a module
* Compiled in "vfat" as a module
* CONFIG_SCSI_MULTI_LUN=y
* CONFIG_BLK_DEV_SD=m

* cat /proc/scsi/scsi is empty
* Removing the echi with "modprobe -r echi-hcd" no longer helps
* Removing the selinux with "selinux=0" on the grub boot line does not help

There are no entries like /dev/sd* like there used to be.

Doing a cat /var/log/dmesg shows lots of happy messages about the usb ports, hubs, other devices etc, no errors or problems listed.

The only thing that could possible show as a problem is the following entries that I see when doing a:

lsusb

Unknown line at line 5947
Unknown line at line 5948
Unknown line at line 5949
Unknown line at line 5950
Unknown line at line 5951
Unknown line at line 5952
Unknown line at line 5953
Unknown line at line 5954
Unknown line at line 5955
Unknown line at line 5956
Unknown line at line 5957
Unknown line at line 5958
Bus 002 Device 003: ID 0510:100b Sejin Electron, Inc.
Bus 002 Device 002: ID 058f:9254 Alcor Micro Corp. Hub
Bus 002 Device 001: ID 0000:0000
Bus 001 Device 002: ID 0e97:0807 Fingerworks, Inc.
Bus 001 Device 001: ID 0000:0000

The unknown lines are a concern. The Fingerworks is my mouse which works, the Sejin is my Alphagrip keyboard. All USB activity is perfect. The Alcor is the Multicard device.

If anyone can lend me a hand toward some area that I haven't checklisted yet, or some info I can lookup to make my problem clearer, please let me know, I'd appreciate is greatly.

macemoneta 01-21-2007 01:07 PM

Using the default 2.6.19 kernel in FC6 from updates (along with a fully updated system), my multi-card USB reader is working just fine, with SELinux enabled. Perhaps your changes are breaking a working configuration?

Brian1 01-21-2007 01:33 PM

I would the only thing you need is multi-lun support. Needed by most maulticard readers I have seen. Not all but most.

I would start with a clean base kernel from http://www.kernel.org . I would get 2.6.19 since it the one most stable at the moment. Extract and place in your /usr/src directory /usr/src/linux-2.6.19. I use ' make xconfig ' but use your choice. Load a config file. Get the one that is in /boot. Use this as the base. It should match current setup from default install. Now check the multi-lun option like you say. Save then Exit. Do the standard ' make ', ' make modules_install ', and finally ' make install '. Reboot to the new kernel.

Brian

macemoneta 01-21-2007 01:45 PM

The Fedora default kernel already includes multi-LUN support; no kernel compile is needed. By using the kernel.org kernel, you will be backing out the additional patches in the Fedora kernel, which is not recommended.

Brian1 01-21-2007 02:06 PM

Did not know they finally got to putting multi-lun support in as default. I does make life easier in areas like this. As far as the kernel patches I don't know. I have always used my own kernels due to some hardware I have. Currently running the 2.6.20-rc5 with the pata scsi module for my IDE drives. All IDE drives are seen on the scsi bus now. No /dev/hd**. It works fine so far. Granted it is limited to certain IDE chipsets.

Brian

macemoneta 01-21-2007 02:42 PM

One of the things I like about Fedora is their transparency. You can see the patches in each kernel by checking CVS, and the kernel spec file in particular. It makes it easy to determine if you need/want a kernel upgrade, and the possible areas of impact.

From looking at the CVS, I can see that the PATA IDE support for Promise SATA (I assume that's what you're referring to) was pulled into the Fedora 2.6.19-1.2890 kernel. In other words, it's already in their default kernel. This is why switching to the vanilla kernel can be problematic; you end up backing out features you want, while pulling in unstable changes you probably don't need (like the switch to SCSI naming for IDE devices).

sausagejohnson 01-21-2007 03:45 PM

Hi macemoneta & Brian1,

Thanks for the responses. Multi Luns is defnately in my checklist. That was a requirement I learned from before. /sys/modules/scsi/luns_max is 256, but I still change it to around 8. Makes no difference either way.

The stock kernel that comes with FC6 is 2.6.18.something. This is a fresh 2.6.19 from kernel.org. I used my previous working kernel .config from before and the 'make' prompted me for file differences which was very handy.

So I have those two areas taken care of.

macemoneta 01-21-2007 04:07 PM

Again, the current FC6 update kernel is kernel-2.6.19-1.2895. You just need to:

yum -y update

to install it.

sausagejohnson 01-21-2007 04:29 PM

Ah ok. But is what is in the next step up? I would imagine 2.6.19 would have everything I need rather than just skipping to a minor kernel change in the hope that it makes a difference.

macemoneta 01-21-2007 04:36 PM

Perhaps you are reading the posts too quickly? I am recommending that you use the 2.6.19 kernel that has been created expressly for Fedora. What are you talking about?

sausagejohnson 01-21-2007 04:48 PM

I guess what I am trying to say is that the stock kernel that first came with (and was designed specifically for) FC6 had the same problem. I will try a kernel update with yum as you suggested and see if that makes any difference in the area of usb/scsi/multicard.

Unless there have been bug fixes in kernel-2.6.19-1.2895 that specifically address the issue of scsi and multicard readers, it's more the .config that I need from it. That also might be an avenue.

Just because that kernel is designed specifically for FC6 doesn't nescessarily guarentee that my hardware is completely compatible with it.

So I believe it really comes down to certain items that I chose to compile in or not compile in. Those entries are really of interest to me to know for sure what is going wrong as opposed to just getting it working with yet another whole kernel compile.

I'll report back on kernel-2.6.19-1.2895.

macemoneta 01-21-2007 05:02 PM

It's not just the kernel that you need. Many parts of the system are involved in proper device detection. The first step in any problem determination is to upgrade your system (yum update). The problem for your device could be in HAL, UDEV, etc. The kernel has the drivers, but that's only one piece.

macemoneta 01-21-2007 05:17 PM

I re-read some of your comments, and I think I see a communications problem that we are having. For some reason, you are under the impression that

Vanilla 2.6.19 > Fedora 2.6.19-1.2895

In reality,

Vanilla 2.6.19 < Fedora 2.6.19-1.2895

The Fedora kernel will have parts of 2.6.20rcX plus any Fedora fixes that have not yet made it into upstream (may appear in 2.6.21 and later, for example).

sausagejohnson 01-21-2007 05:46 PM

I did realise that Vanilla 2.6.19 < Fedora 2.6.19-1.2895 but wasn't aware that it may contain parts of 2.6.20rcX. But you've got me thinking about some of the other components to the linux system.

Because I upgraded from FC4 rather than installing fresh, I know that some old components are still in there. I know I had to upgrade HAL myself as this did not get picked up by anaconda. I should double check udev.

I do appreciate your help. I have had numerous problems after the upgrade but I have gotten most things to work by hunting out the old packages. I even got aiglx and compiz going which was tough.

So based on your posts, I have quite a few things to try/check tonight. I know a clean install of FC6 would have been much better but there is a bit of educational value for me going through this process.

sausagejohnson 01-27-2007 01:27 AM

Best to put this thread to bed. It came down to a hardware problem.

So after a gazillion GBs of yum downloads, resolving many dependency problems, it was largely a waste of time and bandwidth. But hey, I have a shiny distro, and extra backgrounds. :)

It occured to me to maybe check it in Windows as it usually had more success there. And hey, the reader doesn't show anymore. Unplug from the MB and back in? Wammo, it's back. Ahh windows.. bless it's little cotton socks.

So what was the problem? It seems my multi card reader has a little problem. During the booting of the linux OS, while the kernel probes my hardware, the multi card reader light will go out and the device is effectively gone. The autoprobe at boot time somehow kills the device.

The only way to resolve it is to wait for linux to load and then physically pull the header cable out, wait 30 seconds and plug it back it and the light comes back. And dmesg shows a wave of scsi devices light up.

Well it's been an interesting few days and the problem is now resolved. As suspected, upgrading a whole system is probably not the most elegant way to try and fix a problem and it certainly didn't fix the problem. I guess if I had done a little more basic research, I wouldn't have wasted so much time. The card reader was no doubt out of action way before the upgrade to FC6.

Anyway, some notes to help others having a similar problem:

1) "Unknown" lines when issuing an lsusb command such as...
Unknown line at line 5947
...are to be ignored. These mean nothing that will cause any problems.

2) Check your hardware in another machine or try another os like windows. The same problem (and where it has worked before) will largely indicate hardware failure.

3) Make sure scsi_mod is loaded and that multi-luns is compiled into your kernel. Also the other modules mentioned in my original post.


All times are GMT -5. The time now is 11:31 PM.