diff options
author | Gregory Nutt <gnutt@nuttx.org> | 2013-10-26 16:02:07 -0600 |
---|---|---|
committer | Gregory Nutt <gnutt@nuttx.org> | 2013-10-26 16:02:07 -0600 |
commit | e1c89ab2e8d9b42d3e14a4a890e41dc90b607d27 (patch) | |
tree | 958915544405695d694695943cfeca41248ffaa7 | |
parent | ec95525fdb2074f7fe1de7e8d2d76f2153b0b687 (diff) | |
download | px4-nuttx-e1c89ab2e8d9b42d3e14a4a890e41dc90b607d27.tar.gz px4-nuttx-e1c89ab2e8d9b42d3e14a4a890e41dc90b607d27.tar.bz2 px4-nuttx-e1c89ab2e8d9b42d3e14a4a890e41dc90b607d27.zip |
SAMA5 serial: Restore logic to minimize TX interrupts. Oddly, seems to improve ADC stability
-rw-r--r-- | nuttx/arch/arm/src/sama5/Make.defs | 2 | ||||
-rw-r--r-- | nuttx/arch/arm/src/sama5/sam_serial.c | 3 | ||||
-rw-r--r-- | nuttx/drivers/serial/serialirq.c | 2 |
3 files changed, 3 insertions, 4 deletions
diff --git a/nuttx/arch/arm/src/sama5/Make.defs b/nuttx/arch/arm/src/sama5/Make.defs index 727661ffd..2ca702c0c 100644 --- a/nuttx/arch/arm/src/sama5/Make.defs +++ b/nuttx/arch/arm/src/sama5/Make.defs @@ -58,7 +58,7 @@ CMN_ASRCS += cp15_clean_dcache.S cp15_flush_dcache.S cp15_invalidate_dcache_all. CMN_CSRCS = up_initialize.c up_idle.c up_interruptcontext.c up_exit.c CMN_CSRCS += up_createstack.c up_releasestack.c up_usestack.c up_vfork.c -CMN_CSRCS += up_mdelay.c up_udelay.c +CMN_CSRCS += up_puts.c up_mdelay.c up_udelay.c CMN_CSRCS += up_modifyreg8.c up_modifyreg16.c up_modifyreg32.c CMN_CSRCS += arm_assert.c arm_blocktask.c arm_copyfullstate.c arm_dataabort.c diff --git a/nuttx/arch/arm/src/sama5/sam_serial.c b/nuttx/arch/arm/src/sama5/sam_serial.c index f910f0a26..541dc01d3 100644 --- a/nuttx/arch/arm/src/sama5/sam_serial.c +++ b/nuttx/arch/arm/src/sama5/sam_serial.c @@ -1059,13 +1059,12 @@ static void up_txint(struct uart_dev_s *dev, bool enable) #ifndef CONFIG_SUPPRESS_SERIAL_INTS up_serialout(priv, SAM_UART_IER_OFFSET, UART_INT_TXRDY); -# if 0 /* Seems to be unnecessary */ /* Fake a TX interrupt here by just calling uart_xmitchars() with * interrupts disabled (note this may recurse). */ uart_xmitchars(dev); -# endif + #endif } else diff --git a/nuttx/drivers/serial/serialirq.c b/nuttx/drivers/serial/serialirq.c index 8e3f80ead..f18116b1f 100644 --- a/nuttx/drivers/serial/serialirq.c +++ b/nuttx/drivers/serial/serialirq.c @@ -153,7 +153,7 @@ void uart_recvchars(FAR uart_dev_t *dev) while (uart_rxavailable(dev)) { - char ch = uart_receive(dev, &status); + char ch = uart_receive(dev, &status); /* If the RX buffer becomes full, then the serial data is discarded. This is * necessary because on most serial hardware, you must read the data in order |