ar71xx: ag71xx: make switch register access atomic
[openwrt.git] / package / ltq-tapi / patches / 000-portability.patch
1 --- a/src/Makefile.am
2 +++ b/src/Makefile.am
3 @@ -154,7 +154,7 @@ if KERNEL_2_6
4 drv_tapi_OBJS = "$(subst .c,.o, $(drv_tapi_SOURCES))"
5
6 drv_tapi.ko: $(drv_tapi_SOURCES) $(EXTRA_DIST)
7 - @echo -e "Making Linux 2.6.x kernel object"
8 + @echo "Making Linux 2.6.x kernel object"
9 @for f in $(drv_tapi_SOURCES) ; do \
10 if test ! -e $(PWD)/$$f; then \
11 echo " LN $$f" ; \
12 @@ -162,10 +162,10 @@ drv_tapi.ko: $(drv_tapi_SOURCES) $(EXTRA
13 ln -s @abs_srcdir@/$$f $(PWD)/$$f; \
14 fi; \
15 done;
16 - @echo -e "# drv_tapi: Generated to build Linux 2.6.x kernel object" > $(PWD)/Kbuild
17 - @echo -e "obj-m := $(subst .ko,.o,$@)" >> $(PWD)/Kbuild
18 - @echo -e "$(subst .ko,,$@)-y := $(drv_tapi_OBJS)" >> $(PWD)/Kbuild
19 - @echo -e "EXTRA_CFLAGS := -DHAVE_CONFIG_H $(CFLAGS) $(drv_tapi_CFLAGS) $(INCLUDES)" >> $(PWD)/Kbuild
20 + @echo "# drv_tapi: Generated to build Linux 2.6.x kernel object" > $(PWD)/Kbuild
21 + @echo "obj-m := $(subst .ko,.o,$@)" >> $(PWD)/Kbuild
22 + @echo "$(subst .ko,,$@)-y := $(drv_tapi_OBJS)" >> $(PWD)/Kbuild
23 + @echo "EXTRA_CFLAGS := -DHAVE_CONFIG_H $(CFLAGS) $(drv_tapi_CFLAGS) $(INCLUDES)" >> $(PWD)/Kbuild
24 $(MAKE) ARCH=@KERNEL_ARCH@ -C @KERNEL_BUILD_PATH@ O=@KERNEL_BUILD_PATH@ M=$(PWD) modules
25
26 clean-generic:
27 --- a/configure.in
28 +++ b/configure.in
29 @@ -128,7 +128,7 @@ dnl Set kernel build path
30 AC_ARG_ENABLE(kernelbuild,
31 AS_HELP_STRING(--enable-kernelbuild=x,Set the target kernel build path),
32 [
33 - if test -r $enableval/include/linux/autoconf.h; then
34 + if test -e $enableval/include/linux/autoconf.h -o -e $enableval/include/generated/autoconf.h; then
35 AC_SUBST([KERNEL_BUILD_PATH],[$enableval])
36 else
37 AC_MSG_ERROR([The kernel build directory is not valid or not configured!])
38 --- a/src/drv_tapi_linux.h
39 +++ b/src/drv_tapi_linux.h
40 @@ -24,6 +24,7 @@
41 #include <linux/version.h>
42 #include <linux/interrupt.h> /* in_interrupt() */
43 #include <linux/delay.h> /* mdelay - udelay */
44 +#include <linux/workqueue.h> /* work_struct */
45 #include <asm/poll.h> /* POLLIN, POLLOUT */
46
47 #include "ifx_types.h" /* ifx type definitions */
48 --- a/src/drv_tapi_linux.c
49 +++ b/src/drv_tapi_linux.c
50 @@ -47,6 +47,7 @@
51 #include <linux/errno.h>
52 #include <asm/uaccess.h> /* copy_from_user(), ... */
53 #include <asm/byteorder.h>
54 +#include <linux/smp_lock.h> /* lock_kernel() */
55 #include <asm/io.h>
56
57 #ifdef LINUX_2_6
58 @@ -55,7 +56,11 @@
59 #include <linux/sched.h>
60 #undef CONFIG_DEVFS_FS
61 #ifndef UTS_RELEASE
62 - #include "linux/utsrelease.h"
63 +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,33))
64 +# include <linux/utsrelease.h>
65 +#else
66 +# include <generated/utsrelease.h>
67 +#endif
68 #endif /* UTC_RELEASE */
69 #else
70 #include <linux/tqueue.h>
71 @@ -3718,7 +3723,11 @@ IFX_void_t TAPI_OS_ThreadKill(IFXOS_Thre
72 flag and released after the down() call. */
73 lock_kernel();
74 mb();
75 +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,28)
76 kill_proc(pThrCntrl->tid, SIGKILL, 1);
77 +#else
78 + kill_pid(find_vpid(pThrCntrl->tid), SIGKILL, 1);
79 +#endif
80 /* release the big kernel lock */
81 unlock_kernel();
82 wait_for_completion (&pThrCntrl->thrCompletion);
This page took 0.061301 seconds and 5 git commands to generate.