seiarl comm pccard does not respond...

Hi…

I have a Serial Communications PCCARD with two serial ports (see web
page below).

http://www.socketcom.com/product/SL0723-116.asp

  1. OS: QNX 6.3.0-SP1 - PE

  2. when the system comes up, the pccard gets recognized, and all seems
    ok. However, only one of the two serial ports seems to be active:

{}/root # ls /dev/ser*
/dev/ser1

{}/root # stty </dev/ser1
Name: /dev/ser1
Type: serial
Opens: 1
+raw +echoe +echoke +echoctl +imaxbel +onlcr
+ihflow +ohflow
intr=^C quit=^\ erase=^? kill=^U eof=^D start=^Q stop=^S susp=^Z
lnext=^V min=01 time=00 pr1=^[ pr2=5B left=44 right=43 up=41
down=42 ins=40 del=50 home=48 end=59
par=none bits=8 stopb=1 baud=57600 rows=0,0

\

  • how do I get to specify that I want to use the second serial port, and
    how do I pass these commands to the underlaying devp-pccard driver?
  • I have tried to modify the enum files and such, but it does not quite
    work. Perhaps there is a command line that I can pass to the driver when
    the driver starts?
  1. even so, this one serial port does not seem to work properly, that
    is, I cannot send/receive data through the port…
  • …unless I first start windows, then reboot to QNX.
  • it seems that while in windows, windows initializes some internal
    registers on this card including the interrupt assignment or something
    similar. Any ideas?
  1. what follows are the outputs to

pin
pin config
pin cis


Thanks for your help.

Regards…

Miguel.



{}/root # pin

Sock Func Type Flags PID Base Size IRQ
1 0 Serial C—I-±–X----- 69644 0x3f8 8 3
1 Empty ----MF---------- None



{}/root # pin config

; socket 1
[device]
manufacturer = “Socket”
"roduct = "Dual I/O HS Card Win CE Rev 2.1(Legacy)
regbase = 0x400
config = 0x0d, 0x0200, irq any, io 0x3f8-0x3ff (width=8), io 0x2f8-0x2ff
(width=8)
config = 0x0d, 0x0200, irq any, io 0x3f8-0x3ff (width=8), io 0x2f8-0x2ff
(width=8)
config = 0x0d, 0x0200, irq any, io 0x3f8-0x3ff (width=8), io 0x3e8-0x3ef
(width=8)
config = 0x0d, 0x0200, irq any, io 0x3f8-0x3ff (width=8), io 0x3e8-0x3ef
(width=8)
config = 0x15, 0x0200, irq any, io 0x2f8-0x2ff (width=8), io 0x3e8-0x3ef
(width=8)
config = 0x15, 0x0200, irq any, io 0x2f8-0x2ff (width=8), io 0x3e8-0x3ef
(width=8)
config = 0x25, 0x0200, irq any, io 0x2f8-0x2ff (width=8), io 0x2e8-0x2ef
(width=8)
config = 0x25, 0x0200, irq any, io 0x2f8-0x2ff (width=8), io 0x2e8-0x2ef
(width=8)
config = 0x1d, 0x0200, irq any, io 0x3e8-0x3ef (width=8), io 0x2e8-0x304
(width=8)
config = 0x1d, 0x0200, irq any, io 0x3e8-0x3ef (width=8), io 0x2e8-0x304
(width=8)
config = 0x2d, 0x0200, irq any, io any+8 (width=8)
config = 0x2d, 0x0200, irq any, io any+8 (width=8)
register = 0, 0x40, 0x40 ; level mode interrupts



{}/root # pin cis | more

Socket : 1 - Function : 0
Device : Null 0k
Checksum addr, len, val : 0x7 319 0xa2
Attribute Device : Function Specific 64k
Manufacturer ID : 0x104 0xa1
PC Card function : Serial Port
POST : 0x1
Tuple 0x22 link=4 : 00 02 0f 7f
Card tuple version : 5.00
Manufacturer : Socket
Name of Product : Dual I/O HS Card Win CE Rev 2.1(Legacy)
Configuration base/st : 0x400 0-subtuples
Configuration Index : 0xd Default
Interface : RdyBsy Active, I/O
Feature : 0x99
IO Space : Bus8 0x3F8-0x3FF 0x2F8-0x2FF
IRQ Description : Level 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Misc :
Physical Device Name : COM1/2;
Configuration Index : 0xd
Feature : 0x1
Configuration Index : 0xd Default
Interface : RdyBsy Active, I/O
Feature : 0x99
IO Space : Bus8 0x3F8-0x3FF 0x3E8-0x3EF
IRQ Description : Level 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

more similar lines

Does you machine have a built-in serial port? If so, then you will have to
start devp-pccard as follows:

devp-pccard -a0x2f8:0x3e8

and then ‘slay devc-ser8250’ and restart it as

devc-ser8250 0x2f8,3 0x3e8,3

If your machine doesn’t have a serial port, then try

devp-pccard -a0x3f8:0x2f8
devc-ser8250 0x3f8,3 0x2f8,3

“Miguel Simon” <simon@ou.edu> wrote in message
news:d8naed$6fb$1@inn.qnx.com

Hi…

I have a Serial Communications PCCARD with two serial ports (see web
page below).

http://www.socketcom.com/product/SL0723-116.asp

  1. OS: QNX 6.3.0-SP1 - PE

  2. when the system comes up, the pccard gets recognized, and all seems
    ok. However, only one of the two serial ports seems to be active:

{}/root # ls /dev/ser*
/dev/ser1

{}/root # stty </dev/ser1
Name: /dev/ser1
Type: serial
Opens: 1
+raw +echoe +echoke +echoctl +imaxbel +onlcr
+ihflow +ohflow
intr=^C quit=^\ erase=^? kill=^U eof=^D start=^Q stop=^S susp=^Z
lnext=^V min=01 time=00 pr1=^[ pr2=5B left=44 right=43 up=41
down=42 ins=40 del=50 home=48 end=59
par=none bits=8 stopb=1 baud=57600 rows=0,0

\

  • how do I get to specify that I want to use the second serial port, and
    how do I pass these commands to the underlaying devp-pccard driver?
  • I have tried to modify the enum files and such, but it does not quite
    work. Perhaps there is a command line that I can pass to the driver when
    the driver starts?
  1. even so, this one serial port does not seem to work properly, that
    is, I cannot send/receive data through the port…
  • …unless I first start windows, then reboot to QNX.
  • it seems that while in windows, windows initializes some internal
    registers on this card including the interrupt assignment or something
    similar. Any ideas?
  1. what follows are the outputs to

pin
pin config
pin cis


Thanks for your help.

Regards…

Miguel.



{}/root # pin

Sock Func Type Flags PID Base Size IRQ
1 0 Serial C—I-±–X----- 69644 0x3f8 8 3
1 Empty ----MF---------- None



{}/root # pin config

; socket 1
[device]
manufacturer = “Socket”
"roduct = "Dual I/O HS Card Win CE Rev 2.1(Legacy)
regbase = 0x400
config = 0x0d, 0x0200, irq any, io 0x3f8-0x3ff (width=8), io 0x2f8-0x2ff
(width=8)
config = 0x0d, 0x0200, irq any, io 0x3f8-0x3ff (width=8), io 0x2f8-0x2ff
(width=8)
config = 0x0d, 0x0200, irq any, io 0x3f8-0x3ff (width=8), io 0x3e8-0x3ef
(width=8)
config = 0x0d, 0x0200, irq any, io 0x3f8-0x3ff (width=8), io 0x3e8-0x3ef
(width=8)
config = 0x15, 0x0200, irq any, io 0x2f8-0x2ff (width=8), io 0x3e8-0x3ef
(width=8)
config = 0x15, 0x0200, irq any, io 0x2f8-0x2ff (width=8), io 0x3e8-0x3ef
(width=8)
config = 0x25, 0x0200, irq any, io 0x2f8-0x2ff (width=8), io 0x2e8-0x2ef
(width=8)
config = 0x25, 0x0200, irq any, io 0x2f8-0x2ff (width=8), io 0x2e8-0x2ef
(width=8)
config = 0x1d, 0x0200, irq any, io 0x3e8-0x3ef (width=8), io 0x2e8-0x304
(width=8)
config = 0x1d, 0x0200, irq any, io 0x3e8-0x3ef (width=8), io 0x2e8-0x304
(width=8)
config = 0x2d, 0x0200, irq any, io any+8 (width=8)
config = 0x2d, 0x0200, irq any, io any+8 (width=8)
register = 0, 0x40, 0x40 ; level mode interrupts



{}/root # pin cis | more

Socket : 1 - Function : 0
Device : Null 0k
Checksum addr, len, val : 0x7 319 0xa2
Attribute Device : Function Specific 64k
Manufacturer ID : 0x104 0xa1
PC Card function : Serial Port
POST : 0x1
Tuple 0x22 link=4 : 00 02 0f 7f
Card tuple version : 5.00
Manufacturer : Socket
Name of Product : Dual I/O HS Card Win CE Rev 2.1(Legacy)
Configuration base/st : 0x400 0-subtuples
Configuration Index : 0xd Default
Interface : RdyBsy Active, I/O
Feature : 0x99
IO Space : Bus8 0x3F8-0x3FF 0x2F8-0x2FF
IRQ Description : Level 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Misc :
Physical Device Name : COM1/2;
Configuration Index : 0xd
Feature : 0x1
Configuration Index : 0xd Default
Interface : RdyBsy Active, I/O
Feature : 0x99
IO Space : Bus8 0x3F8-0x3FF 0x3E8-0x3EF
IRQ Description : Level 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

more similar lines



\

Hi Hugh…

Thanks for your help. This is simple enough (and now I can follow the
documentation a bit better given your reference help).

My system does not have a built-in serial port. When I do the following:

deep-pccard -a0x3f8:0x2f8

devc-ser8250 0x3f8,3 0x2f8,3

The system goes to 100% CPU, and even spin running at priority 55
frezes. I can still type onto the terminal however, and I can kill the
devc-ser8250 driver. Then all goes back to normal. Now, when I do

devc-ser8250 0x3f8,3

then I can use /dev/ser1 ok and the system operates normally, but when I
issue the command

devc-ser8250 0x2f8,3

then the system goes to 100% CPU again.

I wonder if you have any suggestions? Thanks again.

Regards…

Miguel.


Hugh Brown wrote:

Does you machine have a built-in serial port? If so, then you will have to
start devp-pccard as follows:

devp-pccard -a0x2f8:0x3e8

and then ‘slay devc-ser8250’ and restart it as

devc-ser8250 0x2f8,3 0x3e8,3

If your machine doesn’t have a serial port, then try

devp-pccard -a0x3f8:0x2f8
devc-ser8250 0x3f8,3 0x2f8,3

There is something strange with this card. Although it is a dual function
card, it doesn’t show it being a dual function in the CIS. Is it possible
for you to send me this card, so that I can try and rectify the problem?

“Miguel Simon” <simon@ou.edu> wrote in message
news:d8tqkc$407$1@inn.qnx.com

Hi Hugh…

Thanks for your help. This is simple enough (and now I can follow the
documentation a bit better given your reference help).

My system does not have a built-in serial port. When I do the following:

deep-pccard -a0x3f8:0x2f8

devc-ser8250 0x3f8,3 0x2f8,3

The system goes to 100% CPU, and even spin running at priority 55
frezes. I can still type onto the terminal however, and I can kill the
devc-ser8250 driver. Then all goes back to normal. Now, when I do

devc-ser8250 0x3f8,3

then I can use /dev/ser1 ok and the system operates normally, but when I
issue the command

devc-ser8250 0x2f8,3

then the system goes to 100% CPU again.

I wonder if you have any suggestions? Thanks again.

Regards…

Miguel.


Hugh Brown wrote:
Does you machine have a built-in serial port? If so, then you will have
to
start devp-pccard as follows:

devp-pccard -a0x2f8:0x3e8

and then ‘slay devc-ser8250’ and restart it as

devc-ser8250 0x2f8,3 0x3e8,3

If your machine doesn’t have a serial port, then try

devp-pccard -a0x3f8:0x2f8
devc-ser8250 0x3f8,3 0x2f8,3

Hi Hugh…

Yes I can send this card to you. Please let me know where to send it,
and feel free to use my email address. Thanks.

Regards…

Miguel.


Hugh Brown wrote:

There is something strange with this card. Although it is a dual function
card, it doesn’t show it being a dual function in the CIS. Is it possible
for you to send me this card, so that I can try and rectify the problem?

“Miguel Simon” <> simon@ou.edu> > wrote in message
news:d8tqkc$407$> 1@inn.qnx.com> …

Hi Hugh…

Thanks for your help. This is simple enough (and now I can follow the
documentation a bit better given your reference help).

My system does not have a built-in serial port. When I do the following:

deep-pccard -a0x3f8:0x2f8

devc-ser8250 0x3f8,3 0x2f8,3

The system goes to 100% CPU, and even spin running at priority 55
frezes. I can still type onto the terminal however, and I can kill the
devc-ser8250 driver. Then all goes back to normal. Now, when I do

devc-ser8250 0x3f8,3

then I can use /dev/ser1 ok and the system operates normally, but when I
issue the command

devc-ser8250 0x2f8,3

then the system goes to 100% CPU again.

I wonder if you have any suggestions? Thanks again.

Regards…

Miguel.