summaryrefslogtreecommitdiff
path: root/package
diff options
context:
space:
mode:
authorJohn Crispin <john@openwrt.org>2011-02-07 21:48:55 +0000
committerJohn Crispin <john@openwrt.org>2011-02-07 21:48:55 +0000
commitb549fce06bb8d59610836d14e2416637739fc488 (patch)
treedd49019a88dee016311e227af8f27b4fcb1e942c /package
parente651a9341a241ef5cefc1711d42e3f638aaba9b8 (diff)
downloadmtk-20170518-b549fce06bb8d59610836d14e2416637739fc488.zip
mtk-20170518-b549fce06bb8d59610836d14e2416637739fc488.tar.gz
mtk-20170518-b549fce06bb8d59610836d14e2416637739fc488.tar.bz2
* adss in-kernel udp redirect plugin for lantiq voice optimisation
SVN-Revision: 25413
Diffstat (limited to 'package')
-rw-r--r--package/ltq-kpi2udp/Makefile48
-rw-r--r--package/ltq-kpi2udp/patches/100-configure.patch11
-rw-r--r--package/ltq-kpi2udp/patches/110-ifx_udp_redirect.patch29
3 files changed, 88 insertions, 0 deletions
diff --git a/package/ltq-kpi2udp/Makefile b/package/ltq-kpi2udp/Makefile
new file mode 100644
index 0000000..497f743
--- /dev/null
+++ b/package/ltq-kpi2udp/Makefile
@@ -0,0 +1,48 @@
+#
+# Copyright (C) 2010 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+include $(INCLUDE_DIR)/kernel.mk
+
+PKG_NAME:=drv_kpi2udp
+PKG_VERSION:=2.2.0
+PKG_RELEASE:=1
+
+PKG_SOURCE:=drv_kpi2udp-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources
+PKG_MD5SUM:=af3855609554c7f3d2c3df8c597f50a7
+
+include $(INCLUDE_DIR)/package.mk
+
+define KernelPackage/ltq-kpi2udp
+ SUBMENU:=Voice over IP
+ TITLE:=TAPI KPI2UDP plug-in
+ URL:=http://www.lantiq.com/
+ DEPENDS:=+kmod-ltq-tapi @TARGET_lantiq
+ FILES:=$(PKG_BUILD_DIR)/drv_kpi2udp.ko
+ AUTOLOAD:=$(call AutoLoad,26,drv_kpi2udp)
+ MAINTAINER:=John Crispin <blogic@openwrt.org>
+endef
+
+define KernelPackage/ltq-kpi2udp/description
+ RTP packet path accelleration into IP stack (strongly recommended)
+endef
+
+CONFIGURE_ARGS += --enable-kernelincl="$(LINUX_DIR)/include" \
+ --enable-tapiincl="$(STAGING_DIR)/usr/include/drv_tapi" \
+ --with-ifxos-incl=$(STAGING_DIR)/usr/include/ifxos \
+ --enable-warning \
+ --enable-linux-26 \
+ --enable-kernelbuild="$(LINUX_DIR)" \
+ ARCH=$(LINUX_KARCH)
+
+define Build/Configure
+ (cd $(PKG_BUILD_DIR); aclocal && autoconf && automake)
+ $(call Build/Configure/Default)
+endef
+
+$(eval $(call KernelPackage,ltq-kpi2udp))
diff --git a/package/ltq-kpi2udp/patches/100-configure.patch b/package/ltq-kpi2udp/patches/100-configure.patch
new file mode 100644
index 0000000..8f6704e
--- /dev/null
+++ b/package/ltq-kpi2udp/patches/100-configure.patch
@@ -0,0 +1,11 @@
+--- a/configure.in
++++ b/configure.in
+@@ -113,7 +113,7 @@
+ AC_ARG_ENABLE(kernelbuild,
+ AS_HELP_STRING(--enable-kernelbuild=x,Set the target kernel build path),
+ [
+- if test -r $enableval/include/linux/autoconf.h; then
++ if test -r $enableval/include/generated/autoconf.h; then
+ AC_SUBST([KERNEL_BUILD_PATH],[$enableval])
+ else
+ AC_MSG_ERROR([The kernel build directory is not valid or not configured!])
diff --git a/package/ltq-kpi2udp/patches/110-ifx_udp_redirect.patch b/package/ltq-kpi2udp/patches/110-ifx_udp_redirect.patch
new file mode 100644
index 0000000..abb3d35
--- /dev/null
+++ b/package/ltq-kpi2udp/patches/110-ifx_udp_redirect.patch
@@ -0,0 +1,29 @@
+--- a/ifx_udp_redirect.c
++++ b/ifx_udp_redirect.c
+@@ -256,7 +256,7 @@
+ {
+ if (redtab.channels[i].in_use == IFX_TRUE)
+ {
+- if (redtab.channels[i].sk->sk_lock.owner != 0)
++ if (redtab.channels[i].sk->sk_lock.owned != 0)
+ return IFX_TRUE;
+ }
+ }
+@@ -545,7 +545,7 @@
+ #if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0))
+ if (sk->num != htons(sport))
+ #else
+- if (((struct inet_sock *)sk)->num != htons(sport))
++ if (((struct inet_sock *)sk)->inet_num != htons(sport))
+ #endif
+ {
+ return CALL_MK_SESSION_ERR;
+@@ -628,7 +628,7 @@
+ #if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0))
+ if((vsock != NULL)&&(vsk != NULL)&&(vsk->num > 0))
+ #else
+- if((vsock != NULL)&&(vsk != NULL)&&(((struct inet_sock *)vsk)->num > 0))
++ if((vsock != NULL)&&(vsk != NULL)&&(((struct inet_sock *)vsk)->inet_num > 0))
+ #endif
+ {
+ /*printk("[KPI2UDP] releasing vsock...%p, ops %p\n", vsock, vsock->ops);*/