Hello,
i have and ISA card to control a robot.
It’s at adress C8000.
On linux, there is no problem, i can read/write with the writeb function.
But on QNX, the out8/in8 function return me always ‘ff’ !!!
Please can you help me ?? Should i do something to access an IO ??
Thanks
As it turns out, x86 systems will let you use the adress directly, but other
architectures require a call to mmap_device_io( size_t len, uint64_t io ) to
get a handle for the device. Another call you need to make before in/out8
functions will work is ThreadCtl(_NTO_TCTL_IO, 0); Other than that, I/O is
pretty straightforward.
Regards,
David Kuechenmeister
david.kuechenmeister@viasat.com
“Manu” <manu@inpres.be> wrote in message news:a9ogmb$eso$1@inn.qnx.com…
Hello,
i have and ISA card to control a robot.
It’s at adress C8000.
On linux, there is no problem, i can read/write with the writeb function.
But on QNX, the out8/in8 function return me always ‘ff’ !!!
Please can you help me ?? Should i do something to access an IO ??
Thanks
It’s a x86 and i’ve the ThreadCtl(_NTO_TCTL_IO, 0); …
My driver for another ISA (8255) card works fine but not for this one…
It return always FF so i’m reading correctly … and on the same computer
with linux, it workd fine…
What’s the problem ?..
Regards
Manu Kleijnen
“David Kuechenmeister” <david.kuechenmeister@viasat.com> a écrit dans le
message news: a9ovuc$6dk$1@nntp.qnx.com…
As it turns out, x86 systems will let you use the adress directly, but
other
architectures require a call to mmap_device_io( size_t len, uint64_t io )
to
get a handle for the device. Another call you need to make before in/out8
functions will work is ThreadCtl(_NTO_TCTL_IO, 0); Other than that, I/O is
pretty straightforward.Regards,
David Kuechenmeister
david.kuechenmeister@viasat.com
“Manu” <> manu@inpres.be> > wrote in message news:a9ogmb$eso$> 1@inn.qnx.com> …
Hello,
i have and ISA card to control a robot.
It’s at adress C8000.
On linux, there is no problem, i can read/write with the writeb
function.
But on QNX, the out8/in8 function return me always ‘ff’ !!!
Please can you help me ?? Should i do something to access an IO ??
Thanks
\
“Manu” <manu@inpres.be> wrote in message news:a9p3v9$s8l$1@inn.qnx.com…
It’s a x86 and i’ve the ThreadCtl(_NTO_TCTL_IO, 0); …
My driver for another ISA (8255) card works fine but not for this one…
It return always FF so i’m reading correctly …
If you expect something else then 0XFF then you are not reading correctly.
in*() return value is what the hardware gave back. I’m not sure what you
meant by “I’m reading correctly…”
You might be reading the wrong address or have not initialiase the hardware
properly.
and on the same computer with linux, it workd fine…
…
What’s the problem ?..
You are mentionning address C8000, that’s not a typical IO addresse it
looks like a memory address to me. If it’s really an IO address then it is
most probably a PCI card, which means you should obtain the IO addresses
from the pci_* familly of function.
Regards
Manu Kleijnen“David Kuechenmeister” <> david.kuechenmeister@viasat.com> > a écrit dans le
message news: a9ovuc$6dk$> 1@nntp.qnx.com> …
As it turns out, x86 systems will let you use the adress directly, but
other
architectures require a call to mmap_device_io( size_t len, uint64_t
io )
to
get a handle for the device. Another call you need to make before
in/out8
functions will work is ThreadCtl(_NTO_TCTL_IO, 0); Other than that, I/O
is
pretty straightforward.Regards,
David Kuechenmeister
david.kuechenmeister@viasat.com
“Manu” <> manu@inpres.be> > wrote in message
news:a9ogmb$eso$> 1@inn.qnx.com> …
Hello,
i have and ISA card to control a robot.
It’s at adress C8000.
On linux, there is no problem, i can read/write with the writeb
function.
But on QNX, the out8/in8 function return me always ‘ff’ !!!
Please can you help me ?? Should i do something to access an IO ??
Thanks
\
Manu <manu@inpres.be> wrote:
Hello,
i have and ISA card to control a robot.
It’s at adress C8000.
On linux, there is no problem, i can read/write with the writeb function.
But on QNX, the out8/in8 function return me always ‘ff’ !!!
Please can you help me ?? Should i do something to access an IO ??
C8000 looks like a memory address, not an io-port address.
Look at mmap_device_memory() to get access to that, then you can
just access your card memory as if it were normal process memory
– essentially you’ll do shared memory between your process and
your ISA card.
-David
QNX Training Services
http://www.qnx.com/support/training/
Please followup in this newsgroup if you have further questions.
It’s a memory address and sometimes used by a MSystems DiskOnChip
Freddy
Manu <manu@inpres.be> wrote in message news:a9ogmb$eso$1@inn.qnx.com…
Hello,
i have and ISA card to control a robot.
It’s at adress C8000.
On linux, there is no problem, i can read/write with the writeb function.
But on QNX, the out8/in8 function return me always ‘ff’ !!!
Please can you help me ?? Should i do something to access an IO ??
Thanks