diff options
Diffstat (limited to 'c/src/libchip')
-rw-r--r-- | c/src/libchip/serial/ns16550.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/c/src/libchip/serial/ns16550.c b/c/src/libchip/serial/ns16550.c index 58dd7909be..8159dc6343 100644 --- a/c/src/libchip/serial/ns16550.c +++ b/c/src/libchip/serial/ns16550.c @@ -30,10 +30,13 @@ #include <libchip/serial.h> #include <libchip/sersupp.h> -#include <bsp/irq.h> - #include "ns16550_p.h" +#if !defined(CPU_SIMPLE_VECTORED_INTERRUPTS) + #include <bsp/irq.h> + #define NS16650_SUPPORTED +#endif + #ifdef BSP_FEATURE_IRQ_EXTENSION /* Nothing to do */ #elif defined BSP_FEATURE_IRQ_LEGACY @@ -44,9 +47,11 @@ #define BSP_FEATURE_IRQ_LEGACY_SHARED_HANDLER_SUPPORT #endif #else - #warning No interrupt support available + #undef NS16650_SUPPORTED #endif +#if defined(NS16550_SUPPORTED) + /* * Flow control is only supported when using interrupts */ @@ -719,3 +724,4 @@ NS16550_STATIC int ns16550_inbyte_nonblocking_polled( return -1; } } +#endif /* defined(NS16550_SUPPORTED) */ |