diff --git a/c/src/ChangeLog b/c/src/ChangeLog index 8b5fded3b5..6fd6b7600d 100644 --- a/c/src/ChangeLog +++ b/c/src/ChangeLog @@ -1,3 +1,8 @@ +2005-04-18 Jennifer Averett + + * libchip/serial/ns16550.c: Modified + ISR to work with PPC new exception processing + 2005-03-14 Joel Sherrill * libchip/network/dec21140.c, libchip/network/elnk.c, diff --git a/c/src/libchip/serial/ns16550.c b/c/src/libchip/serial/ns16550.c index d98cd01f1f..01110f394a 100644 --- a/c/src/libchip/serial/ns16550.c +++ b/c/src/libchip/serial/ns16550.c @@ -67,7 +67,13 @@ console_fns ns16550_fns_polled = { FALSE /* deviceOutputUsesInterrupts */ }; +#if defined(__PPC__) +#ifdef _OLD_EXCEPTIONS extern void set_vector( rtems_isr_entry, rtems_vector_number, int ); +#else +#include +#endif +#endif /* * ns16550_init @@ -510,6 +516,9 @@ NS16550_STATIC void ns16550_process( } while((ucInterruptId&0xf)!=0x1); } +#if defined(__PPC__) +#ifdef _OLD_EXCEPTIONS + /* * ns16550_isr */ @@ -528,6 +537,26 @@ NS16550_STATIC rtems_isr ns16550_isr( } } +#else + +NS16550_STATIC rtems_isr ns16550_isr( + void *entry +) +{ + console_tbl *ptr = entry; + int minor; + + for(minor=0;minor