how to write device driver for CIO-DIO24

I’m ready for writing device driver for CIO-DIO24. I’m wondering what’s the
simplest way
to implement it.


Thanks,

Belinda

Belinda <yye@borg.cs.dal.ca> wrote:

I’m ready for writing device driver for CIO-DIO24. I’m wondering what’s the
simplest way
to implement it.

You’ll probably have to fill us uninformed types in on just exactly
what a CIO-DIO24 is… Judging by the name, a 24 channel digital I/O
card? If so, you can download some resmgr (driver) samples from my
website. Go to:

www.parse.com/books/book_v3/download.html

Cheers,
-RK


Robert Krten, PARSE Software Devices +1 613 599 8316.
Realtime Systems Architecture, Consulting and Training at www.parse.com

Depending on what you are intending to do with the card, you might not need a
device driver.

Do you need multi-process access? That is, will more than one process be using
your digital I/O channels? If not, forget the device driver and just build an
access API (abstract data type or class).

Even if more than one process needs access, can this be done exclusively, for
example, one process handles input and another output. Then both can safely
access the 8255 (in mode 0) without interference via an access API – again no
driver needed.

If you think you need arbitrary accesses, a driver could be used.

We have used this and similar cards in a number of systems without a formal
device driver.

Belinda wrote:

I’m ready for writing device driver for CIO-DIO24. I’m wondering what’s the
simplest way
to implement it.

Thanks,

Belinda

Talking of Device Drivers (this has reminded me to ask), I’m having
trouble finding any documentation for the Serial I/O development kit. I
can find stuff for network and audio, but nothing for [intelligent]
serial I/O cards, such as the RocketPort.

I have searched the 6.1 disk and the QNX website without success. Can
someone point me in the right direction please?

Geoff Roberts.

nospam94@parse.com wrote:

Belinda <> yye@borg.cs.dal.ca> > wrote:
I’m ready for writing device driver for CIO-DIO24. I’m wondering what’s the
simplest way
to implement it.

You’ll probably have to fill us uninformed types in on just exactly
what a CIO-DIO24 is… Judging by the name, a 24 channel digital I/O
card? If so, you can download some resmgr (driver) samples from my
website. Go to:

www.parse.com/books/book_v3/download.html

Cheers,
-RK


Robert Krten, PARSE Software Devices +1 613 599 8316.
Realtime Systems Architecture, Consulting and Training at > www.parse.com

Realtime Technology Systems Pty Ltd
2 Hadleigh Circuit
Isabella Plains
ACT 2905
AUSTRALIA

Phone: 61-2-6291 3833
Fax: 61-2-6291 3838
Mobile: 0413 634 667
Email: geoff@rtts.com.au

“Geoff” <geoff@rtts.com.au> wrote in message
news:3BDBA05A.94EEF181@rtts.com.au

Talking of Device Drivers (this has reminded me to ask), I’m having
trouble finding any documentation for the Serial I/O development kit. I
can find stuff for network and audio, but nothing for [intelligent]
serial I/O cards, such as the RocketPort.

The source to serial driver are available under the CVS repository
cvs.qnx.com!

I have searched the 6.1 disk and the QNX website without success. Can
someone point me in the right direction please?

Geoff Roberts.

nospam94@parse.com > wrote:

Belinda <> yye@borg.cs.dal.ca> > wrote:
I’m ready for writing device driver for CIO-DIO24. I’m wondering
what’s the
simplest way
to implement it.

You’ll probably have to fill us uninformed types in on just exactly
what a CIO-DIO24 is… Judging by the name, a 24 channel digital I/O
card? If so, you can download some resmgr (driver) samples from my
website. Go to:

www.parse.com/books/book_v3/download.html

Cheers,
-RK


Robert Krten, PARSE Software Devices +1 613 599 8316.
Realtime Systems Architecture, Consulting and Training at > www.parse.com

Realtime Technology Systems Pty Ltd
2 Hadleigh Circuit
Isabella Plains
ACT 2905
AUSTRALIA

Phone: 61-2-6291 3833
Fax: 61-2-6291 3838
Mobile: 0413 634 667
Email: > geoff@rtts.com.au

Mario,

It has moved with 6.1 - it isn’t in CVS.

Bring up package installer and you will find a DDK for iochar.

Jay

Mario Charest wrote in message <9rjjms$h6m$1@inn.qnx.com>…

“Geoff” <> geoff@rtts.com.au> > wrote in message
news:> 3BDBA05A.94EEF181@rtts.com.au> …
Talking of Device Drivers (this has reminded me to ask), I’m having
trouble finding any documentation for the Serial I/O development kit. I
can find stuff for network and audio, but nothing for [intelligent]
serial I/O cards, such as the RocketPort.


The source to serial driver are available under the CVS repository
cvs.qnx.com!

I have searched the 6.1 disk and the QNX website without success. Can
someone point me in the right direction please?

Geoff Roberts.

nospam94@parse.com > wrote:

Belinda <> yye@borg.cs.dal.ca> > wrote:
I’m ready for writing device driver for CIO-DIO24. I’m wondering
what’s the
simplest way
to implement it.

You’ll probably have to fill us uninformed types in on just exactly
what a CIO-DIO24 is… Judging by the name, a 24 channel digital I/O
card? If so, you can download some resmgr (driver) samples from my
website. Go to:

www.parse.com/books/book_v3/download.html

Cheers,
-RK


Robert Krten, PARSE Software Devices +1 613 599 8316.
Realtime Systems Architecture, Consulting and Training at > www.parse.com

Realtime Technology Systems Pty Ltd
2 Hadleigh Circuit
Isabella Plains
ACT 2905
AUSTRALIA

Phone: 61-2-6291 3833
Fax: 61-2-6291 3838
Mobile: 0413 634 667
Email: > geoff@rtts.com.au

“Jay Hogg” <Jay.Hogg@t-netix.com.r-e-m-o-v-e> wrote in message
news:9rrnl4$eq3$1@inn.qnx.com

Mario,

It has moved with 6.1 - it isn’t in CVS.

oh!

Bring up package installer and you will find a DDK for iochar.

What’s the address?

I read the newsgroup every day. I check qdn.qnx.com every 2-3 days.
How come I miss this?

I get the impression communication between QNX and the community
isn’t as good as it was. Even qdn.qnx.com doesn’t even talk about
the release of the A patch for 6.1… Still stuck on the June 6, 6.1
release ;-|

  • Mario

Jay

Mario Charest wrote in message <9rjjms$h6m$> 1@inn.qnx.com> >…


“Geoff” <> geoff@rtts.com.au> > wrote in message
news:> 3BDBA05A.94EEF181@rtts.com.au> …
Talking of Device Drivers (this has reminded me to ask), I’m having
trouble finding any documentation for the Serial I/O development kit. I
can find stuff for network and audio, but nothing for [intelligent]
serial I/O cards, such as the RocketPort.


The source to serial driver are available under the CVS repository
cvs.qnx.com!

I have searched the 6.1 disk and the QNX website without success. Can
someone point me in the right direction please?

Geoff Roberts.

nospam94@parse.com > wrote:

Belinda <> yye@borg.cs.dal.ca> > wrote:
I’m ready for writing device driver for CIO-DIO24. I’m wondering
what’s the
simplest way
to implement it.

You’ll probably have to fill us uninformed types in on just exactly
what a CIO-DIO24 is… Judging by the name, a 24 channel digital I/O
card? If so, you can download some resmgr (driver) samples from my
website. Go to:

www.parse.com/books/book_v3/download.html

Cheers,
-RK


Robert Krten, PARSE Software Devices +1 613 599 8316.
Realtime Systems Architecture, Consulting and Training at
www.parse.com

Realtime Technology Systems Pty Ltd
2 Hadleigh Circuit
Isabella Plains
ACT 2905
AUSTRALIA

Phone: 61-2-6291 3833
Fax: 61-2-6291 3838
Mobile: 0413 634 667
Email: > geoff@rtts.com.au
\

Hi,

When I wrote API to control the ports, the functions provided by qnx to
read/write ports are
in8() or out8(). But these function should be used with ThreadCtl() under
root privilege.
Can I use it with other functions? I read the device driver of dev_8250 and
couldn’t find
the use of ThreadCtl() or ThreadCtl_r() in any place. And I’m very confused
about the concept
of the device resource managers in qnx. It takes different way from
writing device driver.

Another problem is about CIO-DIO24, which has portA, B, C. Does the serial
port
resource manager register it with indivual pathname, like /dev/CIO_DIOA,
/dev/CIO_DIOB, …
… In 8255 Control Register, BaseAddress+3, it is configured for mode and
direction,
which is make of two parts, GroupA and GroupB. What’s the intention of
GroupA
and GroupB. When I check whether the CIO-DIO24 is pluged into board with
the function pci_find_device(),
what is the deviceID and vendorID of CIO-DIO24?

I read some device driver of CIO-DIO24 wrote on Linux. Is there similar
programming
between on these two os, providing the functions like read(), write(),
open(), close() and ioctl()
to control ports?

Thanks,

Belinda

“Dean Douthat” <ddouthat@faac.com> wrote in message
news:3BD9604B.40F5F88E@faac.com

Depending on what you are intending to do with the card, you might not
need a
device driver.

Do you need multi-process access? That is, will more than one process be
using
your digital I/O channels? If not, forget the device driver and just
build an
access API (abstract data type or class).

Even if more than one process needs access, can this be done exclusively,
for
example, one process handles input and another output. Then both can
safely
access the 8255 (in mode 0) without interference via an access API –
again no
driver needed.

If you think you need arbitrary accesses, a driver could be used.

We have used this and similar cards in a number of systems without a
formal
device driver.

Belinda wrote:

I’m ready for writing device driver for CIO-DIO24. I’m wondering what’s
the
simplest way
to implement it.

Thanks,

Belinda