From 456702ee87b1adbbb559778aafe98c349700178a Mon Sep 17 00:00:00 2001 From: Andrew Wygle Date: Sun, 22 May 2016 12:41:42 -0700 Subject: Cleaned up MSP430X port to match recent changes to ChibiOS mainline. Also fixed a couple of bugs identified as part of the refresh. --- os/hal/ports/MSP430X/hal_dma_lld.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'os/hal/ports/MSP430X/hal_dma_lld.c') diff --git a/os/hal/ports/MSP430X/hal_dma_lld.c b/os/hal/ports/MSP430X/hal_dma_lld.c index 43e1d6c..2e17afa 100644 --- a/os/hal/ports/MSP430X/hal_dma_lld.c +++ b/os/hal/ports/MSP430X/hal_dma_lld.c @@ -89,7 +89,9 @@ PORT_IRQ_HANDLER(DMA_VECTOR) { if (index < MSP430X_DMA_CHANNELS) { #if CH_CFG_USE_SEMAPHORES + chSysLockFromISR(); chSemSignalI(&dma_lock); + chSysUnlockFromISR(); #endif msp430x_dma_cb_t * cb = &callbacks[index]; @@ -129,7 +131,7 @@ void dmaInit(void) { bool dmaRequest(msp430x_dma_req_t * request, systime_t timeout) { /* Check if a DMA channel is available */ #if CH_CFG_USE_SEMAPHORES - msg_t semresult = chSemWaitTimeout(&dma_lock, timeout); + msg_t semresult = chSemWaitTimeoutS(&dma_lock, timeout); if (semresult != MSG_OK) return true; #endif -- cgit v1.2.3