summaryrefslogtreecommitdiffstats
path: root/recipes-kernel/linux/linux-imx-rt-3.10.17/0001-fix-build.patch
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-kernel/linux/linux-imx-rt-3.10.17/0001-fix-build.patch')
-rw-r--r--recipes-kernel/linux/linux-imx-rt-3.10.17/0001-fix-build.patch139
1 files changed, 139 insertions, 0 deletions
diff --git a/recipes-kernel/linux/linux-imx-rt-3.10.17/0001-fix-build.patch b/recipes-kernel/linux/linux-imx-rt-3.10.17/0001-fix-build.patch
new file mode 100644
index 0000000..8d9ed83
--- /dev/null
+++ b/recipes-kernel/linux/linux-imx-rt-3.10.17/0001-fix-build.patch
@@ -0,0 +1,139 @@
1Fix the build errors listed below
2
3Upstream-Status: Inappropriate [other]
4Freescale does not currently support the real-time kernel
5
6Signed-off-by: Jacob Kroon <jacob.kroon@mikrodidakt.se>
7
8 CC drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.o
9drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c: In function 'gckOS_WaitSignal':
10drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c:7835:5: error: passing argument 1 of 'spin_lock_irq' from incompatible pointer type [-Werror]
11 spin_lock_irq(&signal->obj.wait.lock);
12 ^
13In file included from include/linux/seqlock.h:29:0,
14 from include/linux/time.h:5,
15 from include/linux/stat.h:18,
16 from include/linux/module.h:10,
17 from drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_linux.h:27,
18 from drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c:22:
19include/linux/spinlock.h:316:20: note: expected 'struct spinlock_t *' but argument is of type 'struct raw_spinlock_t *'
20 static inline void spin_lock_irq(spinlock_t *lock)
21 ^
22drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c:7867:9: error: passing argument 1 of '__add_wait_queue_tail' from incompatible pointer type [-Werror]
23 __add_wait_queue_tail(&signal->obj.wait, &wait);
24 ^
25In file included from include/linux/mmzone.h:9:0,
26 from include/linux/gfp.h:4,
27 from include/linux/kmod.h:22,
28 from include/linux/module.h:13,
29 from drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_linux.h:27,
30 from drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c:22:
31include/linux/wait.h:120:20: note: expected 'struct wait_queue_head_t *' but argument is of type 'struct swait_head *'
32 static inline void __add_wait_queue_tail(wait_queue_head_t *head,
33 ^
34drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c:7879:13: error: passing argument 1 of 'spin_unlock_irq' from incompatible pointer type [-Werror]
35 spin_unlock_irq(&signal->obj.wait.lock);
36 ^
37In file included from include/linux/seqlock.h:29:0,
38 from include/linux/time.h:5,
39 from include/linux/stat.h:18,
40 from include/linux/module.h:10,
41 from drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_linux.h:27,
42 from drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c:22:
43include/linux/spinlock.h:341:20: note: expected 'struct spinlock_t *' but argument is of type 'struct raw_spinlock_t *'
44 static inline void spin_unlock_irq(spinlock_t *lock)
45 ^
46drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c:7881:13: error: passing argument 1 of 'spin_lock_irq' from incompatible pointer type [-Werror]
47 spin_lock_irq(&signal->obj.wait.lock);
48 ^
49In file included from include/linux/seqlock.h:29:0,
50 from include/linux/time.h:5,
51 from include/linux/stat.h:18,
52 from include/linux/module.h:10,
53 from drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_linux.h:27,
54 from drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c:22:
55include/linux/spinlock.h:316:20: note: expected 'struct spinlock_t *' but argument is of type 'struct raw_spinlock_t *'
56 static inline void spin_lock_irq(spinlock_t *lock)
57 ^
58drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c:7945:9: error: passing argument 1 of '__remove_wait_queue' from incompatible pointer type [-Werror]
59 __remove_wait_queue(&signal->obj.wait, &wait);
60 ^
61In file included from include/linux/mmzone.h:9:0,
62 from include/linux/gfp.h:4,
63 from include/linux/kmod.h:22,
64 from include/linux/module.h:13,
65 from drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_linux.h:27,
66 from drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c:22:
67include/linux/wait.h:133:20: note: expected 'struct wait_queue_head_t *' but argument is of type 'struct swait_head *'
68 static inline void __remove_wait_queue(wait_queue_head_t *head,
69 ^
70drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c:7958:5: error: passing argument 1 of 'spin_unlock_irq' from incompatible pointer type [-Werror]
71 spin_unlock_irq(&signal->obj.wait.lock);
72 ^
73In file included from include/linux/seqlock.h:29:0,
74 from include/linux/time.h:5,
75 from include/linux/stat.h:18,
76 from include/linux/module.h:10,
77 from drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_linux.h:27,
78 from drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c:22:
79include/linux/spinlock.h:341:20: note: expected 'struct spinlock_t *' but argument is of type 'struct raw_spinlock_t *'
80 static inline void spin_unlock_irq(spinlock_t *lock)
81 ^
82cc1: all warnings being treated as errors
83make[4]: *** [drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.o] Error 1
84
85Index: git/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c
86===================================================================
87--- git.orig/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c
88+++ git/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c
89@@ -7832,7 +7832,7 @@ gckOS_WaitSignal(
90
91 might_sleep();
92
93- spin_lock_irq(&signal->obj.wait.lock);
94+ raw_spin_lock_irq(&signal->obj.wait.lock);
95
96 if (signal->obj.done)
97 {
98@@ -7862,9 +7862,8 @@ gckOS_WaitSignal(
99 : Wait * HZ / 1000;
100 #endif
101
102- DECLARE_WAITQUEUE(wait, current);
103- wait.flags |= WQ_FLAG_EXCLUSIVE;
104- __add_wait_queue_tail(&signal->obj.wait, &wait);
105+ DEFINE_SWAITER(wait);
106+ swait_prepare_locked(&signal->obj.wait, &wait);
107
108 while (gcvTRUE)
109 {
110@@ -7876,9 +7875,9 @@ gckOS_WaitSignal(
111 }
112
113 __set_current_state(TASK_INTERRUPTIBLE);
114- spin_unlock_irq(&signal->obj.wait.lock);
115+ raw_spin_unlock_irq(&signal->obj.wait.lock);
116 timeout = schedule_timeout(timeout);
117- spin_lock_irq(&signal->obj.wait.lock);
118+ raw_spin_lock_irq(&signal->obj.wait.lock);
119
120 if (signal->obj.done)
121 {
122@@ -7942,7 +7941,7 @@ gckOS_WaitSignal(
123 }
124 }
125
126- __remove_wait_queue(&signal->obj.wait, &wait);
127+ swait_finish_locked(&signal->obj.wait, &wait);
128
129 #if gcdDETECT_TIMEOUT
130 if (complained)
131@@ -7955,7 +7954,7 @@ gckOS_WaitSignal(
132 #endif
133 }
134
135- spin_unlock_irq(&signal->obj.wait.lock);
136+ raw_spin_unlock_irq(&signal->obj.wait.lock);
137
138 OnError:
139 /* Return status. */