-
Driver Question
Hello,
I have never installed Linux at all.
My question is: I have an HP a705w (walmart) computer.
It has a 9in1 card reader in it.
Does this take one driver for the whole device or 9 individual drivers?
Thanks for any advice.
N2L
-
Have you tried to use it in Linux?
What make you think a driver is needed for your card reader?
Do you need one to use it in MS Windows?
Not much an answer I know but I don't think one is needed, at least I never need to bother with it.
-
The reader I have doesn't need a driver. The devices just show up as USB/SCSI devices (/dev/sdX).
-
most card readers works without special drivers, like happybunny siad, they just work
Registered Linux User #388117
-
The driver (usb-storage, to be specific) is included in pretty much every Linux kernel out there, and especially in distro kernels. (Distro kernels like to include everything under the sun, so they work on the most machines possible.)
However, multi-card readers show up as a single USB device, and expose multiple disks to the SCSI system (USB storage is basically SCSI-over-USB) using separate LUNs (logical unit numbers). So if your distro's SCSI disk module wasn't built with the "scan all LUNs on each SCSI device" option turned on, then you'll have to set the proper option dynamically before you'll be able to see any more than the first device in the multi-card reader. To set this option, you should be able to (as root) echo 16 >/sys/module/scsi_mod/parameters/max_luns and then re-plug the device. If that doesn't work, echo the same thing to max_report_luns as well (in that same directory), and replug the device again.
If you want to make it automatic, you'll have to set your distro up to provide max_luns=16 or max_report_luns=16 when it loads the scsi_mod module (generally this is done in some file under /etc/modprobe.d, or in /etc/modprobe.conf itself: add options scsi_mod max_luns=16 to the proper file).
I should note that every distro kernel I've ever seen does have this option turned on, so it should work fine. But if you built a kernel yourself, and didn't include this option at compile time (like I did), you'll only see one sdX device until you either set the option dynamically, or unload/reload the scsi_mod module, or reconfigure and rebuild the kernel.
-
The curiosity finally got hold of me so I dug out my 56 in1 card reader out, connected to the 1st USB port and tried to insert one memory card at a time in this order
XD 32Mb recognized as sde1
SD HC card 8Gb recognized as sdc1
Compact flash 32Mb recognized as sdd1
Memory stick Pro Duo 8Gb seen as sdf1
Then I switched on my 500Gb external hard disk into a eSata port and it was given the device name sdg1.
Finally inserting my 16Gb USB pen drive in a 2nd USB port had sdh1 to sdh8 shown up.
At this point I thought in for a penny in for a pound so I dug up yet another card reader and had it connected to the 3rd USB port.
A 2nd 128Mb compact flash card shown up sdj1
A 2nd 32Mb XD card showed up as sdk1
Lastly I plugged a 4Gb mini SD card in to get it recognized as sdi1.
Here is the fdisk -l output
Code:
root@saikee-desktop:~# fdisk -l
Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xbe153241
Device Boot Start End Blocks Id System
/dev/sda1 1 12158 97659103+ 17 Hidden HPFS/NTFS
/dev/sda2 * 12159 24316 97659135 7 HPFS/NTFS
/dev/sda3 24317 36598 98655165 5 Extended
/dev/sda4 36599 60801 194410597+ 83 Linux
/dev/sda5 24317 24438 979933+ 82 Linux swap / Solaris
/dev/sda6 24439 25654 9767488+ 83 Linux
/dev/sda7 25655 26870 9767488+ 83 Linux
/dev/sda8 26871 28086 9767488+ 83 Linux
/dev/sda9 28087 29302 9767488+ 83 Linux
/dev/sda10 29303 30518 9767488+ 83 Linux
/dev/sda11 30519 31734 9767488+ 83 Linux
/dev/sda12 31735 32950 9767488+ 83 Linux
/dev/sda13 32951 34166 9767488+ 83 Linux
/dev/sda14 34167 35382 9767488+ 83 Linux
/dev/sda15 35383 36598 9767488+ 83 Linux
Disk /dev/sdb: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x38c16d97
Device Boot Start End Blocks Id System
/dev/sdb1 1 15808 126977728+ 15 Unknown
/dev/sdb2 15809 29184 107442720 15 Unknown
/dev/sdb3 29185 42560 107442720 15 Unknown
/dev/sdb4 42561 60801 146520832+ 5 Extended
/dev/sdb5 42561 43776 9767488+ 83 Linux
/dev/sdb6 43777 44992 9767488+ 83 Linux
/dev/sdb7 44993 46208 9767488+ 83 Linux
/dev/sdb8 46209 47424 9767488+ 83 Linux
/dev/sdb9 47425 48640 9767488+ 83 Linux
/dev/sdb10 48641 49856 9767488+ 83 Linux
/dev/sdb11 49857 51072 9767488+ 83 Linux
/dev/sdb12 51073 53504 19535008+ 83 Linux
/dev/sdb13 53505 55936 19535008+ 83 Linux
/dev/sdb14 * 55937 58368 19535008+ 83 Linux
/dev/sdb15 58369 60801 19543041 83 Linux
Disk /dev/sdc: 8017 MB, 8017936384 bytes
202 heads, 59 sectors/track, 1313 cylinders
Units = cylinders of 11918 * 512 = 6102016 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
/dev/sdc1 1 1314 7825920 b W95 FAT32
Disk /dev/sdd: 32 MB, 32505856 bytes
4 heads, 32 sectors/track, 496 cylinders
Units = cylinders of 128 * 512 = 65536 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
/dev/sdd1 * 1 495 31664 4 FAT16 <32M
Disk /dev/sde: 32 MB, 32768000 bytes
8 heads, 16 sectors/track, 500 cylinders
Units = cylinders of 128 * 512 = 65536 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
/dev/sde1 * 1 500 31982+ 1 FAT12
Disk /dev/sdf: 8143 MB, 8143241216 bytes
256 heads, 62 sectors/track, 1002 cylinders
Units = cylinders of 15872 * 512 = 8126464 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
/dev/sdf1 * 1 1002 7951814 c W95 FAT32 (LBA)
Disk /dev/sdg: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x5a03cdb2
Device Boot Start End Blocks Id System
/dev/sdg1 1 60801 488384001 7 HPFS/NTFS
Disk /dev/sdh: 16.3 GB, 16357785600 bytes
64 heads, 32 sectors/track, 15600 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes
Disk identifier: 0x0004b902
Device Boot Start End Blocks Id System
/dev/sdh1 1 15600 15974384 5 Extended
/dev/sdh5 1 4768 4882400 83 Linux
/dev/sdh6 4769 9536 4882416 83 Linux
/dev/sdh7 9537 14304 4882416 83 Linux
/dev/sdh8 14305 15600 1327088 82 Linux swap / Solaris
Disk /dev/sdi: 4024 MB, 4024958976 bytes
110 heads, 45 sectors/track, 1588 cylinders
Units = cylinders of 4950 * 512 = 2534400 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
/dev/sdi1 2 1589 3926528 b W95 FAT32
Disk /dev/sdj: 128 MB, 128450560 bytes
8 heads, 32 sectors/track, 980 cylinders
Units = cylinders of 256 * 512 = 131072 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
/dev/sdj1 1 979 125296 6 FAT16
Disk /dev/sdk: 32 MB, 32768000 bytes
8 heads, 16 sectors/track, 500 cylinders
Units = cylinders of 128 * 512 = 65536 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
/dev/sdk1 * 1 500 31982+ 1 FAT12
root@saikee-desktop:~#
The distro is a Ubuntu. I used 2 card readers, 1 eSata port and 3 USB ports altogether. Whenever I plug any compact flash, SD, XD, memory stick, eSata hard disk, USB pen drive, etc , etc the kernel detected it immediately and could report in "fdisk" for each of the 9 devices.
I never have to bother with a driver.
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
|