Hi.
I have a ACR30U reader from ACS.
It is not found on the usb bus.
I am running RedHat 9.0,
from /var/log/dmesg:
Linux version 2.4.20-8 ([EMAIL PROTECTED]) (gcc version
3.2.2 20030222 (Red Hat Linux 3.2.2-5)) #1 Thu Mar 13 17:54:28 EST 2003

I downloaded the driver from

http://www.acs.com.hk/downloads/acs30USBLinuxDriver-062402.tar.gz

and as I followed the instructions
in the readme.txt it all goes well ( "usbdevfs" is mounted, 2 drivers for
USB devices are loaded) but when I do connect the reader and write
cat /proc/bus/usb/devices
I get
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=fce0
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

So there is no line like:
[Vendor=072f ProdID=0001 Rev= 2.00]

The reader is not detected!

I have also installed pcsc-lite 1.2.0 and run the testpcsc and it
stops  when it tries to detect the reader:

$ testpcsc

MUSCLE PC/SC Lite Test Program

Testing SCardEstablishContext    : Command successful.
Testing SCardGetStatusChange

It just doesnt do anything.


I also tried, as root


strace /usr/local/sbin/pcscd -f -d stdout
and I get

execve("/usr/local/sbin/pcscd", ["/usr/local/sbin/pcscd", "-f", "-d",
"stdout"], [/* 41 vars */]) = 0
uname({sys="Linux", node="localhost", ...}) = 0
brk(0)                                  = 0x805e968
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x40016000
open("/etc/ld.so.preload", O_RDONLY)    = -1 ENOENT (No such file or
directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=97230, ...}) = 0
old_mmap(NULL, 97230, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40017000
close(3)                                = 0
open("/usr/lib/libusb-0.1.so.4", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\370\20"..., 512)
= 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=25004, ...}) = 0
old_mmap(NULL, 27976, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x4002f000
old_mmap(0x40034000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3,
0x4000) = 0x40034000
close(3)                                = 0
open("/lib/libdl.so.2", O_RDONLY)       = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\360\26"..., 512)
= 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=15084, ...}) = 0
old_mmap(NULL, 8620, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40036000
old_mmap(0x40038000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3,
0x2000) = 0x40038000
close(3)                                = 0
open("/lib/tls/libpthread.so.0", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\320>\0"..., 512)
= 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=79744, ...}) = 0
old_mmap(NULL, 50040, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40039000
old_mmap(0x40043000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3,
0xa000) = 0x40043000
old_mmap(0x40044000, 4984, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40044000
close(3)                                = 0
open("/lib/tls/libc.so.6", O_RDONLY)    = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0`V\1B4\0"..., 512)
= 512fstat64(3, {st_mode=S_IFREG|0755, st_size=1531064, ...}) = 0
old_mmap(0x42000000, 1257224, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =
0x42000000
old_mmap(0x4212e000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED,
3, 0x12e000) = 0x4212e000
old_mmap(0x42131000, 7944, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x42131000
close(3)                                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x40046000
set_thread_area({entry_number:-1 -> 6, base_addr:0x400464a0,
limit:1048575, seg_32bit:1, contents:0, read_exec_only:0,
limit_in_pages:1, seg_not_present:0, useable:1}) = 0
munmap(0x40017000, 97230)               = 0
set_tid_address(0x400464e8)             = 30728
rt_sigaction(SIGRTMIN, {0x4003ce30, [], SA_RESTORER, 0x40042618}, NULL, 8)
= 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN], NULL, 8) = 0
getrlimit(0x3, 0xbfffdb54)              = 0
write(2, "pcscdaemon.c:251 main: pcscd set"..., 47pcscdaemon.c:251 main:
pcscd set to foreground
) = 47
fstat64(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 0), ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
= 0x40017000
write(1, "pcscdaemon.c:265 main: debug mes"..., 48pcscdaemon.c:265 main:
debug messages to stdout
) = 48
stat64("/var/run/pcscd.pub", 0xbfffdb00) = -1 ENOENT (No such file or
directory)rt_sigaction(SIGQUIT, {0x804c990, [QUIT],
SA_RESTORER|SA_RESTART, 0x420275c8}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGTERM, {0x804c990, [TERM], SA_RESTORER|SA_RESTART,
0x420275c8}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGINT, {0x804c990, [INT], SA_RESTORER|SA_RESTART,
0x420275c8}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGHUP, {0x804c990, [HUP], SA_RESTORER|SA_RESTART,
0x420275c8}, {SIG_DFL}, 8) = 0
stat64("/var/run", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
brk(0)                                  = 0x805e968
brk(0x805f968)                          = 0x805f968
brk(0)                                  = 0x805f968
brk(0x8060000)                          = 0x8060000
brk(0)                                  = 0x8060000
brk(0x8061000)                          = 0x8061000
rmdir("/var/run/pcscd.pub")             = -1 ENOENT (No such file or
directory)
open("/var/run/pcscd.pub", O_RDWR|O_CREAT, 0644) = 3
chmod("/var/run/pcscd.pub", 0644)       = 0
lseek(3, 65536, SEEK_SET)               = 65536
write(3, "\0", 1)                       = 1
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0) = 0x40018000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0x1) = 0x40019000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0x2) = 0x4001a000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0x3) = 0x4001b000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0x4) = 0x4001c000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0x5) = 0x4001d000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0x6) = 0x4001e000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0x7) = 0x4001f000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0x8) = 0x40020000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0x9) = 0x40021000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0xa) = 0x40022000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0xb) = 0x40023000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0xc) = 0x40024000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0xd) = 0x40025000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0xe) = 0x40026000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0xf) = 0x40027000
open("/etc/reader.conf", O_RDONLY)      = -1 ENOENT (No such file or
directory)
write(1, "pcscdaemon.c:427 main: warning: "..., 53pcscdaemon.c:427 main:
warning: no reader.conf found
) = 53
write(1, "pcscdaemon.c:445 main: pcsc-lite"..., 47pcscdaemon.c:445 main:
pcsc-lite daemon ready.
) = 47
rt_sigaction(SIGQUIT, {0x804c990, [QUIT], SA_RESTORER|SA_RESTART,
0x420275c8}, {0x804c990, [QUIT], SA_RESTORER|SA_RESTART, 0x420275c8}, 8) =
0
rt_sigaction(SIGTERM, {0x804c990, [TERM], SA_RESTORER|SA_RESTART,
0x420275c8}, {0x804c990, [TERM], SA_RESTORER|SA_RESTART, 0x420275c8}, 8) =
0
rt_sigaction(SIGINT, {0x804c990, [INT], SA_RESTORER|SA_RESTART,
0x420275c8}, {0x804c990, [INT], SA_RESTORER|SA_RESTART, 0x420275c8}, 8) =
0
rt_sigaction(SIGHUP, {0x804c990, [HUP], SA_RESTORER|SA_RESTART,
0x420275c8}, {0x804c990, [HUP], SA_RESTORER|SA_RESTART, 0x420275c8}, 8) =
0
socket(PF_UNIX, SOCK_STREAM, 0)         = 4
unlink("/var/run/pcscd.comm")           = -1 ENOENT (No such file or
directory)
bind(4, {sa_family=AF_UNIX, path="/var/run/pcscd.comm"}, 22) = 0
listen(4, 1)                            = 0
chmod("/var/run/pcscd.comm", 0777)      = 0
rt_sigaction(SIGALRM, {SIG_IGN}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGPIPE, {SIG_IGN}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGHUP, {SIG_IGN}, {0x804c990, [HUP], SA_RESTORER|SA_RESTART,
0x420275c8}, 8) = 0
open("/usr/local/pcsc/drivers",
O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 5fstat64(5,
{st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
fcntl64(5, F_SETFD, FD_CLOEXEC)         = 0
brk(0)                                  = 0x8061000
brk(0x8062000)                          = 0x8062000
getdents64(5, /* 3 entries */, 4096)    = 88
open("/usr/local/pcsc/drivers/acsAcr30.bundle/Contents/Info.plist",
O_RDONLY) =
6
brk(0)                                  = 0x8062000
brk(0x8066000)                          = 0x8066000
ioctl(6, SNDCTL_TMR_TIMEBASE, 0xbfffafb0) = -1 ENOTTY (Inappropriate ioctl
for device)
fstat64(6, {st_mode=S_IFREG|0644, st_size=1131, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
= 0x40028000
read(6, "<?xml version=\"1.0\" encoding=\"UT"..., 8192) = 1131
read(6, "", 4096)                       = 0
read(6, "", 8192)                       = 0
ioctl(6, SNDCTL_TMR_TIMEBASE, 0xbfffaf90) = -1 ENOTTY (Inappropriate ioctl
for device)
close(6)                                = 0
munmap(0x40028000, 4096)                = 0
open("/usr/local/pcsc/drivers/acsAcr30.bundle/Contents/Info.plist",
O_RDONLY) =
6

fstat64(6, {st_mode=S_IFREG|0644, st_size=1131, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
= 0x40028000
read(6, "<?xml version=\"1.0\" encoding=\"UT"..., 8192) = 1131
read(6, "", 4096)                       = 0
read(6, "", 8192)                       = 0
ioctl(6, SNDCTL_TMR_TIMEBASE, 0xbfffaf80) = -1 ENOTTY (Inappropriate ioctl
for device)
close(6)                                = 0
munmap(0x40028000, 4096)                = 0
open("/usr/local/pcsc/drivers/acsAcr30.bundle/Contents/Info.plist",
O_RDONLY) =
6

fstat64(6, {st_mode=S_IFREG|0644, st_size=1131, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
= 0x40028000
read(6, "<?xml version=\"1.0\" encoding=\"UT"..., 8192) = 1131
read(6, "", 4096)                       = 0
read(6, "", 8192)                       = 0
ioctl(6, SNDCTL_TMR_TIMEBASE, 0xbfffaf90) = -1 ENOTTY (Inappropriate ioctl
for device)
close(6)                                = 0
munmap(0x40028000, 4096)                = 0
open("/usr/local/pcsc/drivers/acsAcr30.bundle/Contents/Info.plist",
O_RDONLY) =
6

fstat64(6, {st_mode=S_IFREG|0644, st_size=1131, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
= 0x40028000
read(6, "<?xml version=\"1.0\" encoding=\"UT"..., 8192) = 1131
read(6, "", 4096)                       = 0
read(6, "", 8192)                       = 0
ioctl(6, SNDCTL_TMR_TIMEBASE, 0xbfffaf90) = -1 ENOTTY (Inappropriate ioctl
for device)
close(6)                                = 0
munmap(0x40028000, 4096)                = 0
open("/usr/local/pcsc/drivers/acsAcr30.bundle/Contents/Info.plist",
O_RDONLY) =
6

fstat64(6, {st_mode=S_IFREG|0644, st_size=1131, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
= 0x40028000
read(6, "<?xml version=\"1.0\" encoding=\"UT"..., 8192) = 1131
read(6, "", 4096)                       = 0
read(6, "", 8192)                       = 0
ioctl(6, SNDCTL_TMR_TIMEBASE, 0xbfffaf90) = -1 ENOTTY (Inappropriate ioctl
for device)
close(6)                                = 0
munmap(0x40028000, 4096)                = 0
open("/usr/local/pcsc/drivers/acsAcr30.bundle/Contents/Info.plist",
O_RDONLY) =
6

fstat64(6, {st_mode=S_IFREG|0644, st_size=1131, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
= 0x40028000
read(6, "<?xml version=\"1.0\" encoding=\"UT"..., 8192) = 1131
read(6, "", 4096) = 0
read(6, "", 8192) = 0
ioctl(6, SNDCTL_TMR_TIMEBASE, 0xbfffaf90) = -1 ENOTTY (Inappropriate ioctl
for device)
close(6) = 0
munmap(0x40028000, 4096) = 0
getdents64(5, /* 0 entries */, 4096) = 0
close(5) = 0
mmap2(NULL, 8388608, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0x40047000
mprotect(0x40047000, 4096, PROT_NONE) = 0
clone(child_stack=0x408468d0,
flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID|CLONE_DETACHED,


[30729], {entry_number:6, base_addr:0x40846cc0, limit:1048575,
seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1,
seg_not_present:0, useable:1}) =
30729
select(5, [4], NULL, NULL, {1, 0})      = 0 (Timeout)
select(5, [4], NULL, NULL, {1, 0})      = 0 (Timeout)
select(5, [4], NULL, NULL, {1, 0})      = 0 (Timeout)
select(5, [4], NULL, NULL, {1, 0})      = 0 (Timeout)
select(5, [4], NULL, NULL, {1, 0})      = 0 (Timeout)
select(5, [4], NULL, NULL, {1, 0})      = 0 (Timeout)
select(5, [4], NULL, NULL, {1, 0})      = 0 (Timeout)
select(5, [4], NULL, NULL, {1, 0})      = 0 (Timeout)
select(5, [4], NULL, NULL, {1, 0})      = 0 (Timeout)
select(5, [4], NULL, NULL, {1, 0})      = 0 (Timeout)
select(5, [4], NULL, NULL, {1, 0})      = 0 (Timeout)
select(5, [4], NULL, NULL, {1, 0})      = 0 (Timeout)
select(5, [4], NULL, NULL, {1, 0} <unfinished ...>
pcscdaemon.c:502 Preparing for suicide
pcscdaemon.c:502 Preparing for suicide
pcscdaemon.c:502 Preparing for suicide
winscard_msg.c:234 SHMProcessEvents: Select returns with failure:
Interrupted system call
pcscdaemon.c:179 SVCServiceRun: Error in SHMProcessEvents
readerfactory.c:1683 RFCleanupReaders: entering cleaning function
pcscdaemon.c:468 at_exit: cleaning /var/run

so I think the problem is here:

ioctl(6, SNDCTL_TMR_TIMEBASE, 0xbfffaf90) = -1 ENOTTY (Inappropriate ioctl
for device)


Please help.


Luis.
_______________________________________________
Muscle mailing list
[EMAIL PROTECTED]
http://lists.musclecard.com/mailman/listinfo/muscle

Reply via email to