diff options
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.patch | 139 |
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 @@ | |||
1 | Fix the build errors listed below | ||
2 | |||
3 | Upstream-Status: Inappropriate [other] | ||
4 | Freescale does not currently support the real-time kernel | ||
5 | |||
6 | Signed-off-by: Jacob Kroon <jacob.kroon@mikrodidakt.se> | ||
7 | |||
8 | CC drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.o | ||
9 | drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c: In function 'gckOS_WaitSignal': | ||
10 | drivers/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 | ^ | ||
13 | In 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: | ||
19 | include/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 | ^ | ||
22 | drivers/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 | ^ | ||
25 | In 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: | ||
31 | include/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 | ^ | ||
34 | drivers/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 | ^ | ||
37 | In 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: | ||
43 | include/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 | ^ | ||
46 | drivers/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 | ^ | ||
49 | In 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: | ||
55 | include/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 | ^ | ||
58 | drivers/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 | ^ | ||
61 | In 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: | ||
67 | include/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 | ^ | ||
70 | drivers/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 | ^ | ||
73 | In 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: | ||
79 | include/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 | ^ | ||
82 | cc1: all warnings being treated as errors | ||
83 | make[4]: *** [drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.o] Error 1 | ||
84 | |||
85 | Index: 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. */ | ||