We can't have DMA on both I2C1 and USART2. Since we need it more for I2C, and since USART2 is going back to being ignored once I2C works, let's make the call.

Turn off the debug output on I2C for now.
This commit is contained in:
px4dev 2013-01-10 02:12:49 -08:00
parent 329f595bca
commit 5e35491a38
2 changed files with 12 additions and 1 deletions

View File

@ -51,6 +51,8 @@
#include <drivers/drv_pwm_output.h>
#include <drivers/drv_hrt.h>
#include <stm32_uart.h>
#include "px4io.h"
__EXPORT int user_start(int argc, char *argv[]);
@ -59,6 +61,8 @@ extern void up_cxxinitialize(void);
struct sys_state_s system_state;
static struct hrt_call serial_dma_call;
int user_start(int argc, char *argv[])
{
/* run C++ ctors before we go any further */
@ -72,6 +76,12 @@ int user_start(int argc, char *argv[])
/* configure the high-resolution time/callout interface */
hrt_init();
/*
* Poll at 1ms intervals for received bytes that have not triggered
* a DMA event.
*/
hrt_call_every(&serial_dma_call, 1000, 1000, (hrt_callout)stm32_serial_dma_poll, NULL);
/* print some startup info */
lib_lowprintf("\nPX4IO: starting\n");

View File

@ -190,7 +190,8 @@ CONFIG_USART3_2STOP=0
CONFIG_USART1_RXDMA=y
SERIAL_HAVE_CONSOLE_DMA=y
CONFIG_USART2_RXDMA=y
# Conflicts with I2C1 DMA
CONFIG_USART2_RXDMA=n
CONFIG_USART3_RXDMA=y
#