Forum Discussion
Altera_Forum
Honored Contributor
20 years agoDid you check the isr routine rs_interrupt in drivers/serial/NIOSserial.c?
/*
* This is the serial driver's generic interrupt routine
*/
irqreturn_t rs_interrupt(int irq, void *dev_id, struct pt_regs * regs)
{
struct NIOS_serial * info = (struct NIOS_serial *) dev_id;
np_uart * uart= (np_uart *)(info->port);
unsigned short stat = uart->np_uartstatus;
uart->np_uartstatus = 0; /* clear any error status */
if (stat & np_uartstatus_rrdy_mask) receive_chars(info, regs, stat);
if (stat & np_uartstatus_trdy_mask) transmit_chars(info);
return IRQ_HANDLED;
}