<div class='quotetop'>QUOTE </div>
--- Quote Start ---
Is it easy to mod de uClinux 4 altera_avalon_uarts driver ?[/b]
--- Quote End ---
very easy to mod the Linux driver to support more. All you need is to instantiate more Nios_serial structure. In the file
drivers/serial/NIOSserial.c:
static struct NIOS_serial nios_soft = {
// { 0,0,1,0,0,0,0, (nasys_printf_uart), (nasys_printf_uart_irq) }, /* ttyS0 */
{ 0,0,1,0,0,0,0, (int) (na_uart0), (na_uart0_irq) }, /* ttyS0 */# ifdef na_uart1
// { 0,0,0,0,0,0,0, (nasys_gdb_uart), (nasys_gdb_uart_irq) }, /* ttyS1 */
{ 0,0,0,0,0,0,0, (int) (na_uart1), (na_uart1_irq) }, /* ttyS1 */# endif# ifdef na_uart2
{ 0,0,0,0,0,0,0, (int) (na_uart2), (na_uart2_irq) }, /* ttyS2 */# endif# ifdef na_uart3
{ 0,0,0,0,0,0,0, (int) (na_uart3), (na_uart3_irq) }, /* ttyS3 */# endif
};
You can add more, or change to dynamically allocate and initialize this array. Maybe you also need minor change to the interrupt service routine since you have shared interrupts.
Wentao
Microtronix