Hi,
I have a TS-7260 with the standard kernel (2.4.26-ts11) - as shipped
from Technologix, and on top of it I have put an Advantech PCM-3641 4
port PC/104 Serial I/O card.
(http://www.advantech.net.au/products/Model_Detail.asp?model_id=1-23I3U0)
I have setup the Advantech board in the standard mode, (port addresses
standard COM1 to 4), with shared interrupts on IRQ5 (ARM IRQ21).
I configured the Interrupt status register to live at 0x230 - 0x23F,
(which matches the setting for the TS-SER4). This is because for both
the TS-SER4 and the Advantech this register can be moved around, but I
can't work out where the kernel EXPECTS it to be...
When the TS-7260 boots, the TS-BOOTROM Reports
">> Off board serial at : COM1 COM2 COM3 COM4"
and I have 4 devices in /dev/tts/0 to 3 which are automatically created..
I used setserial to set the interrupt for all ports to IRQ 21, eg
setserial /dev/tts/0 irq 21
setserial /dev/tts/1 irq 21
setserial /dev/tts/2 irq 21
setserial /dev/tts/3 irq 21
However, when I try to transmit data in a loopback from the TS-7260, I
only occasionally get data. I monitored the IRQ 5 line on the serial
board and it sticks high - eg the interrupt service routine can't 1)
work out the interrupts, or 2) the IRQ is not actually going anywhere
on the TS7260.
/proc/interrupts doesn't show IRQ 21 events.
I also tried to use the 'set_multiport' parameter to specify the
Interrupt status register location, mask and match values, eg
setserial /dev/tts/0 set_multiport port1 0x89c00230 mask1 0x0F match1 0x0F
but setserial chokes on the set_multiport parameter, and returns
"Cannot get multiport config: Invalid argument"
I also looked a bit deeper into the interrupt status register, and it
looks like the logic sense of the bits is INVERTED in the Advantech
PCM-3641 compared to the TS-SER4, eg when interrupt is pending the ISR
bit is clear for PCM-3641, but in the TS-SER4 a bit is set.
So - has anyone successfully go an Advantec PCM-3641 to work with a
TS-7xxx series ARM board??
Cheers
Kym
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/ts-7000/
<*> Your email settings:
Individual Email | Traditional
<*> To change settings online go to:
http://groups.yahoo.com/group/ts-7000/join
(Yahoo! ID required)
<*> To change settings via email:
<*> To unsubscribe from this group, send an email to:
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/
|