aboutsummaryrefslogtreecommitdiffstats
path: root/os/hal
diff options
context:
space:
mode:
authorGiovanni Di Sirio <gdisirio@gmail.com>2015-03-13 10:17:10 +0000
committerGiovanni Di Sirio <gdisirio@gmail.com>2015-03-13 10:17:10 +0000
commit19d593770fe3faeab96477e77c1fa370fd9d095f (patch)
tree0ac38775344636eadcd52a223ad4a31face55d5e /os/hal
parentcc7f8758b011d78a00ac2a143e780d101af59bc4 (diff)
downloadChibiOS-19d593770fe3faeab96477e77c1fa370fd9d095f.tar.gz
ChibiOS-19d593770fe3faeab96477e77c1fa370fd9d095f.tar.bz2
ChibiOS-19d593770fe3faeab96477e77c1fa370fd9d095f.zip
SPI code made more readable.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@7767 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'os/hal')
-rw-r--r--os/hal/include/spi.h15
-rw-r--r--os/hal/src/spi.c8
2 files changed, 4 insertions, 19 deletions
diff --git a/os/hal/include/spi.h b/os/hal/include/spi.h
index 265ed32c3..f03e8780c 100644
--- a/os/hal/include/spi.h
+++ b/os/hal/include/spi.h
@@ -213,20 +213,6 @@ typedef enum {
*/
#if (SPI_USE_WAIT == TRUE) || defined(__DOXYGEN__)
/**
- * @brief Waits for operation completion.
- * @details This function waits for the driver to complete the current
- * operation.
- * @pre An operation must be running while the function is invoked.
- * @note No more than one thread can wait on a SPI driver using
- * this function.
- *
- * @param[in] spip pointer to the @p SPIDriver object
- *
- * @notapi
- */
-#define _spi_wait_s(spip) (void) osalThreadSuspendS(&(spip)->thread)
-
-/**
* @brief Wakes up the waiting thread.
*
* @param[in] spip pointer to the @p SPIDriver object
@@ -239,7 +225,6 @@ typedef enum {
osalSysUnlockFromISR(); \
}
#else /* !SPI_USE_WAIT */
-#define _spi_wait_s(spip)
#define _spi_wakeup_isr(spip)
#endif /* !SPI_USE_WAIT */
diff --git a/os/hal/src/spi.c b/os/hal/src/spi.c
index 2bbdc0ea7..fe34c0609 100644
--- a/os/hal/src/spi.c
+++ b/os/hal/src/spi.c
@@ -285,7 +285,7 @@ void spiIgnore(SPIDriver *spip, size_t n) {
osalDbgAssert(spip->state == SPI_READY, "not ready");
osalDbgAssert(spip->config->end_cb == NULL, "has callback");
spiStartIgnoreI(spip, n);
- _spi_wait_s(spip);
+ (void) osalThreadSuspendS(&spip->thread);
osalSysUnlock();
}
@@ -317,7 +317,7 @@ void spiExchange(SPIDriver *spip, size_t n,
osalDbgAssert(spip->state == SPI_READY, "not ready");
osalDbgAssert(spip->config->end_cb == NULL, "has callback");
spiStartExchangeI(spip, n, txbuf, rxbuf);
- _spi_wait_s(spip);
+ (void) osalThreadSuspendS(&spip->thread);
osalSysUnlock();
}
@@ -345,7 +345,7 @@ void spiSend(SPIDriver *spip, size_t n, const void *txbuf) {
osalDbgAssert(spip->state == SPI_READY, "not ready");
osalDbgAssert(spip->config->end_cb == NULL, "has callback");
spiStartSendI(spip, n, txbuf);
- _spi_wait_s(spip);
+ (void) osalThreadSuspendS(&spip->thread);
osalSysUnlock();
}
@@ -373,7 +373,7 @@ void spiReceive(SPIDriver *spip, size_t n, void *rxbuf) {
osalDbgAssert(spip->state == SPI_READY, "not ready");
osalDbgAssert(spip->config->end_cb == NULL, "has callback");
spiStartReceiveI(spip, n, rxbuf);
- _spi_wait_s(spip);
+ (void) osalThreadSuspendS(&spip->thread);
osalSysUnlock();
}
#endif /* SPI_USE_WAIT == TRUE */