After some work, I found out the problem is the multi-port card is using some of macros defined in au1000.h, which is not supposed to do. I gave it a dirty hack by defining such macros in the source file. Now I can see the interrupts coming up. BUT when I typed: echo "hello world!">/dev/ttyM0 the message is shown on terminal connected to this serial port. But it then is stuck there. Then the rs_timer gives a lot of timeouts and enter the interrupt service routine each time there is timeout. rs_close() is never got called. any suggestion on this part? What is the function of serial_timer? it is just sitting there, generating timeout, periodically. Just to make sure the interrupt routine will be called periodically? thanks On 6/28/05, Ralf Baechle <ralf@xxxxxxxxxxxxxx> wrote: > On Mon, Jun 27, 2005 at 05:06:27PM -0700, rolf liu wrote: > > > I am running 2.4.31 on db1550 with a pci multi-port board. the kernel > > starts up ok. but after start-up, I can't find the corresponding > > interrupt number for this board, which is irq 2. I can find the device > > under /proc/devices and /proc/tty/driver, etc. So I am now sure if it > > is working ok. Is there good (simple) method to test this serial port? > > Linux will only allocate the interrupt when the interface is actually > opened, just loading the driver doesn't suffice. > > Ralf >