aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/lantiq/ltq-tapi/patches/200-linux-37.patch
blob: fd6133eec1950bc5c2a3c9f92fdfdbcf71a73cde (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
--- a/src/drv_tapi_linux.c
+++ b/src/drv_tapi_linux.c
@@ -47,7 +47,9 @@
 #include <linux/errno.h>
 #include <asm/uaccess.h>               /* copy_from_user(), ... */
 #include <asm/byteorder.h>
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,33))
 #include <linux/smp_lock.h>         /* lock_kernel() */
+#endif
 #include <asm/io.h>
 
 #ifdef LINUX_2_6
@@ -69,7 +71,9 @@
 #else
    #include <linux/tqueue.h>
    #include <linux/sched.h>
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,33))
    #include <linux/smp_lock.h>         /* lock_kernel() */
+#endif
 #endif /* LINUX_2_6 */
 
 #include "drv_tapi.h"
@@ -137,8 +141,13 @@ static ssize_t ifx_tapi_write(struct fil
                               size_t count, loff_t * ppos);
 static ssize_t ifx_tapi_read(struct file * filp, char *buf,
                               size_t length, loff_t * ppos);
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,36))
 static int ifx_tapi_ioctl(struct inode *inode, struct file *filp,
                               unsigned int nCmd, unsigned long nArgument);
+#else
+static long ifx_tapi_ioctl(struct file *filp,
+                              unsigned int nCmd, unsigned long nArgument);
+#endif
 static unsigned int ifx_tapi_poll (struct file *filp, poll_table *table);
 
 #ifdef CONFIG_PROC_FS
@@ -222,7 +231,11 @@ IFX_return_t TAPI_OS_RegisterLLDrv (IFX_
    IFX_char_t   *pRegDrvName = IFX_NULL;
    IFX_int32_t ret = 0;
 
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,36))
    if (tapi_fops.ioctl == IFX_NULL)
+#else
+   if (tapi_fops.unlocked_ioctl == IFX_NULL)
+#endif
    {
 #ifdef MODULE
       tapi_fops.owner =    THIS_MODULE;
@@ -230,7 +243,11 @@ IFX_return_t TAPI_OS_RegisterLLDrv (IFX_
       tapi_fops.read =     ifx_tapi_read;
       tapi_fops.write =    ifx_tapi_write;
       tapi_fops.poll =     ifx_tapi_poll;
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,36))
       tapi_fops.ioctl =    ifx_tapi_ioctl;
+#else
+      tapi_fops.unlocked_ioctl =    ifx_tapi_ioctl;
+#endif
       tapi_fops.open =     ifx_tapi_open;
       tapi_fops.release =  ifx_tapi_release;
    }
@@ -885,8 +902,13 @@ static IFX_uint32_t ifx_tapi_poll (struc
    - 0 and positive values - success
    - negative value - ioctl failed
 */
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,36))
 static int ifx_tapi_ioctl(struct inode *inode, struct file *filp,
                           unsigned int nCmd, unsigned long nArg)
+#else
+static long ifx_tapi_ioctl(struct file *filp,
+                          unsigned int nCmd, unsigned long nArg)
+#endif
 {
    TAPI_FD_PRIV_DATA_t *pTapiPriv;
    IFX_TAPI_ioctlCtx_t  ctx;
@@ -3725,7 +3747,9 @@ IFX_void_t TAPI_OS_ThreadKill(IFXOS_Thre
             kernel lock (lock_kernel()). The lock must be
             grabbed before changing the terminate
             flag and released after the down() call. */
-         lock_kernel();
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,33)
+	 lock_kernel();
+#endif
          mb();
 #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,28)
          kill_proc(pThrCntrl->tid, SIGKILL, 1);
@@ -3733,8 +3757,10 @@ IFX_void_t TAPI_OS_ThreadKill(IFXOS_Thre
          kill_pid(find_vpid(pThrCntrl->tid), SIGKILL, 1);
 #endif
          /* release the big kernel lock */
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,33)
          unlock_kernel();
-         wait_for_completion (&pThrCntrl->thrCompletion);
+#endif
+	 wait_for_completion (&pThrCntrl->thrCompletion);
 
 #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,23)
          /* Now we are sure the thread is in zombie state.
--- a/src/lib/lib_fifo/lib_fifo.c
+++ b/src/lib/lib_fifo/lib_fifo.c
@@ -41,7 +41,7 @@
 #ifdef LINUX
 /* if linux/slab.h is not available, use the precessor linux/malloc.h */
 #include <linux/slab.h>
-#elif VXWORKS
+#elif defined(VXWORKS)
 #include <sys_drv_debug.h>
 #endif /* LINUX */