Merge branch 'master' of github.com:PX4/Firmware into pwm_ioctls

This commit is contained in:
Lorenz Meier
2013-10-30 09:15:55 +01:00
75 changed files with 2891 additions and 824 deletions
-6
View File
@@ -149,12 +149,6 @@ interface_init(void)
#endif
}
void
interface_tick()
{
}
/*
reset the I2C bus
used to recover from lockups
+2 -8
View File
@@ -162,9 +162,6 @@ user_start(int argc, char *argv[])
/* start the FMU interface */
interface_init();
/* add a performance counter for the interface */
perf_counter_t interface_perf = perf_alloc(PC_ELAPSED, "interface");
/* add a performance counter for mixing */
perf_counter_t mixer_perf = perf_alloc(PC_ELAPSED, "mix");
@@ -209,11 +206,6 @@ user_start(int argc, char *argv[])
/* track the rate at which the loop is running */
perf_count(loop_perf);
/* kick the interface */
perf_begin(interface_perf);
interface_tick();
perf_end(interface_perf);
/* kick the mixer */
perf_begin(mixer_perf);
mixer_tick();
@@ -224,6 +216,7 @@ user_start(int argc, char *argv[])
controls_tick();
perf_end(controls_perf);
#if 0
/* check for debug activity */
show_debug_messages();
@@ -240,6 +233,7 @@ user_start(int argc, char *argv[])
(unsigned)minfo.mxordblk);
last_debug_time = hrt_absolute_time();
}
#endif
}
}
+3 -17
View File
@@ -74,9 +74,6 @@ static DMA_HANDLE rx_dma;
static int serial_interrupt(int irq, void *context);
static void dma_reset(void);
/* if we spend this many ticks idle, reset the DMA */
static unsigned idle_ticks;
static struct IOPacket dma_packet;
/* serial register accessors */
@@ -150,16 +147,6 @@ interface_init(void)
debug("serial init");
}
void
interface_tick()
{
/* XXX look for stuck/damaged DMA and reset? */
if (idle_ticks++ > 100) {
dma_reset();
idle_ticks = 0;
}
}
static void
rx_handle_packet(void)
{
@@ -230,9 +217,6 @@ rx_dma_callback(DMA_HANDLE handle, uint8_t status, void *arg)
/* disable UART DMA */
rCR3 &= ~(USART_CR3_DMAT | USART_CR3_DMAR);
/* reset the idle counter */
idle_ticks = 0;
/* handle the received packet */
rx_handle_packet();
@@ -308,6 +292,7 @@ serial_interrupt(int irq, void *context)
/* it was too short - possibly truncated */
perf_count(pc_badidle);
dma_reset();
return 0;
}
@@ -343,7 +328,8 @@ dma_reset(void)
sizeof(dma_packet),
DMA_CCR_MINC |
DMA_CCR_PSIZE_8BITS |
DMA_CCR_MSIZE_8BITS);
DMA_CCR_MSIZE_8BITS |
DMA_CCR_PRIVERYHI);
/* start receive DMA ready for the next packet */
stm32_dmastart(rx_dma, rx_dma_callback, NULL, false);