[PATCH v2 05/12] staging: wilc1000: simplify semaphore wrapper

Arnd Bergmann
2015-06-01T19:09:55Z

The driver has its own API for semaphores. This should
be replaced with mutexes and completions, but for the moment
we can start by removing the obviously unused parts.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
drivers/staging/wilc1000/wilc_osconfig.h | 1 -
drivers/staging/wilc1000/wilc_oswrapper.h | 2 --
drivers/staging/wilc1000/wilc_semaphore.c | 14 --------------
drivers/staging/wilc1000/wilc_semaphore.h | 18 +-----------------
4 files changed, 1 insertion(+), 34 deletions(-)

diff --git a/drivers/staging/wilc1000/wilc_osconfig.h b/drivers/staging/wilc1000/wilc_osconfig.h
index eec93b351f14..d0bf08f89906 100644
--- a/drivers/staging/wilc1000/wilc_osconfig.h
+++ b/drivers/staging/wilc1000/wilc_osconfig.h
@@ -10,7 +10,6 @@

/* OS features supported */

-#define CONFIG_WILC_SEMAPHORE_FEATURE 1
/* #define CONFIG_WILC_SEMAPHORE_TIMEOUT 1 */
#define CONFIG_WILC_SLEEP_FEATURE 1
#define CONFIG_WILC_SLEEP_HI_RES 1
diff --git a/drivers/staging/wilc1000/wilc_oswrapper.h b/drivers/staging/wilc1000/wilc_oswrapper.h
index fd5dd3c6316e..32fe48a6034b 100644
--- a/drivers/staging/wilc1000/wilc_oswrapper.h
+++ b/drivers/staging/wilc1000/wilc_oswrapper.h
@@ -55,9 +55,7 @@ typedef WILC_Uint16 WILC_WideChar;
#include "wilc_errorsupport.h"

/* Semaphore support */
-#ifdef CONFIG_WILC_SEMAPHORE_FEATURE
#include "wilc_semaphore.h"
-#endif

/* Sleep support */
#ifdef CONFIG_WILC_SLEEP_FEATURE
diff --git a/drivers/staging/wilc1000/wilc_semaphore.c b/drivers/staging/wilc1000/wilc_semaphore.c
index 637107bfb877..f09a88ca6ae4 100644
--- a/drivers/staging/wilc1000/wilc_semaphore.c
+++ b/drivers/staging/wilc1000/wilc_semaphore.c
@@ -1,7 +1,5 @@

#include "wilc_oswrapper.h"
-#ifdef CONFIG_WILC_SEMAPHORE_FEATURE
-

WILC_ErrNo WILC_SemaphoreCreate(WILC_SemaphoreHandle *pHandle,
tstrWILC_SemaphoreAttrs *pstrAttrs)
@@ -33,19 +31,9 @@ WILC_ErrNo WILC_SemaphoreAcquire(WILC_SemaphoreHandle *pHandle,
{
WILC_ErrNo s32RetStatus = WILC_SUCCESS;

- #ifndef CONFIG_WILC_SEMAPHORE_TIMEOUT
while (down_interruptible(pHandle))
;

- #else
- if (pstrAttrs == WILC_NULL) {
- down(pHandle);
- } else {
-
- s32RetStatus = down_timeout(pHandle, msecs_to_jiffies(pstrAttrs->u32TimeOut));
- }
- #endif
-
if (s32RetStatus == 0) {
return WILC_SUCCESS;
} else if (s32RetStatus == -ETIME) {
@@ -66,5 +54,3 @@ WILC_ErrNo WILC_SemaphoreRelease(WILC_SemaphoreHandle *pHandle,
return WILC_SUCCESS;

}
-
-#endif
diff --git a/drivers/staging/wilc1000/wilc_semaphore.h b/drivers/staging/wilc1000/wilc_semaphore.h
index 3006f9f20c4d..3c0ecc326fb3 100644
--- a/drivers/staging/wilc1000/wilc_semaphore.h
+++ b/drivers/staging/wilc1000/wilc_semaphore.h
@@ -10,11 +10,6 @@
* @version 1.0
*/

-
-#ifndef CONFIG_WILC_SEMAPHORE_FEATURE
-#error the feature WILC_OS_FEATURE_SEMAPHORE must be supported to include this file
-#endif
-
/*!
* @struct WILC_SemaphoreAttrs
* @brief Semaphore API options
@@ -28,14 +23,6 @@ typedef struct {
*/
WILC_Uint32 u32InitCount;

- #ifdef CONFIG_WILC_SEMAPHORE_TIMEOUT
- /*!<
- * Timeout for use with WILC_SemaphoreAcquire, 0 to return immediately and
- * WILC_OS_INFINITY to wait forever. default is WILC_OS_INFINITY
- */
- WILC_Uint32 u32TimeOut;
- #endif
-
} tstrWILC_SemaphoreAttrs;

@@ -47,12 +34,9 @@ typedef struct {
* @date 10 Aug 2010
* @version 1.0
*/
-static void WILC_SemaphoreFillDefault(tstrWILC_SemaphoreAttrs *pstrAttrs)
+static inline void WILC_SemaphoreFillDefault(tstrWILC_SemaphoreAttrs *pstrAttrs)
{
pstrAttrs->u32InitCount = 1;
- #ifdef CONFIG_WILC_SEMAPHORE_TIMEOUT
- pstrAttrs->u32TimeOut = WILC_OS_INFINITY;
- #endif
}
/*!
* @brief Creates a new Semaphore object
--
2.1.0.rc2