ccceaae212a5881c3bd49ecb3fd82b134a94af5d
[firefly-linux-kernel-4.4.55.git] / drivers / staging / wilc1000 / wilc_platform.h
1 #ifndef __WILC_platform_H__
2 #define __WILC_platform_H__
3
4 #include <linux/kthread.h>
5 #include <linux/semaphore.h>
6 #include <linux/module.h>
7 #include <linux/slab.h>
8 #include <linux/kernel.h>
9 #include <linux/delay.h>
10 #include <linux/types.h>
11 #include <linux/stat.h>
12 #include <linux/time.h>
13 #include <linux/version.h>
14 #include "linux/string.h"
15 /******************************************************************
16  *      OS specific types
17  *******************************************************************/
18
19 typedef struct timer_list WILC_TimerHandle;
20
21
22
23 /* Message Queue type is a structure */
24 typedef struct __Message_struct {
25         void *pvBuffer;
26         u32 u32Length;
27         struct __Message_struct *pstrNext;
28 } Message;
29
30 typedef struct __MessageQueue_struct {
31         struct semaphore hSem;
32         spinlock_t strCriticalSection;
33         bool bExiting;
34         u32 u32ReceiversCount;
35         Message *pstrMessageList;
36 } WILC_MsgQueueHandle;
37
38
39
40 /*Time represented in 64 bit format*/
41 typedef time_t WILC_Time;
42
43
44 /*******************************************************************
45  *      others
46  ********************************************************************/
47
48 /* Generic printf function */
49 #define __WILC_FILE__           __FILE__
50 #define __WILC_FUNCTION__       __func__
51 #define __WILC_LINE__           __LINE__
52 #endif