[OpenWrt-Devel] [PATCH 1/8] lantiq: ltq-ifxos: fix build warnings

Hauke Mehrtens hauke at hauke-m.de
Tue Nov 24 15:24:58 EST 2015


From: Hauke Mehrtens <hauke.mehrtens at lantiq.com>

This makes the build script use the same configure options as used by
Lantiq  UGW and fixes some warnings and cleans up some of the patches.

Signed-off-by: Hauke Mehrtens <hauke.mehrtens at lantiq.com>
---
 package/kernel/lantiq/ltq-ifxos/Makefile           |  6 ++++--
 .../lantiq/ltq-ifxos/patches/001-warnings.patch    | 24 ++++++++++++++++++++++
 .../lantiq/ltq-ifxos/patches/100-compat.patch      | 19 ++++++-----------
 3 files changed, 34 insertions(+), 15 deletions(-)
 create mode 100644 package/kernel/lantiq/ltq-ifxos/patches/001-warnings.patch

diff --git a/package/kernel/lantiq/ltq-ifxos/Makefile b/package/kernel/lantiq/ltq-ifxos/Makefile
index 9919a9b..70fb4da 100644
--- a/package/kernel/lantiq/ltq-ifxos/Makefile
+++ b/package/kernel/lantiq/ltq-ifxos/Makefile
@@ -8,7 +8,7 @@ include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=lib_ifxos
 PKG_VERSION:=1.5.19
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
 PKG_SOURCE_URL:=https://github.com/xdarklight/$(PKG_NAME)/archive/v$(PKG_VERSION)
@@ -31,12 +31,14 @@ define KernelPackage/ltq-ifxos
   AUTOLOAD:=$(call AutoLoad,10,drv_ifxos)
 endef
 
+MAKE_FLAGS+=-s
+
 CONFIGURE_ARGS += \
 	ARCH=$(LINUX_KARCH) \
 	--enable-linux-26 \
 	--enable-kernelbuild="$(LINUX_DIR)" \
 	--enable-kernelincl="$(LINUX_DIR)/include" \
-	--enable-add_drv_cflags="-fno-pic -mno-abicalls -mlong-calls -G 0"
+	--with-kernel-module
 
 ifdef CONFIG_TARGET_lantiq
   define Build/InstallDev
diff --git a/package/kernel/lantiq/ltq-ifxos/patches/001-warnings.patch b/package/kernel/lantiq/ltq-ifxos/patches/001-warnings.patch
new file mode 100644
index 0000000..78940649
--- /dev/null
+++ b/package/kernel/lantiq/ltq-ifxos/patches/001-warnings.patch
@@ -0,0 +1,24 @@
+--- a/src/include/linux/ifxos_linux_thread.h
++++ b/src/include/linux/ifxos_linux_thread.h
+@@ -206,7 +206,7 @@ typedef struct
+ /**
+    LINUX User Thread - map the Thread ID.
+ */
+-typedef int    IFXOS_thread_t;
++typedef pthread_t    IFXOS_thread_t;
+ 
+ /**
+    LINUX Kernel Process - map the Process ID.
+--- a/src/linux/ifxos_linux_socket_appl.c
++++ b/src/linux/ifxos_linux_socket_appl.c
+@@ -363,8 +363,8 @@ IFX_int_t IFXOS_SocketSendTo(
+    IFXOS_RETURN_IF_POINTER_NULL(pBuffer, IFX_ERROR);
+    IFXOS_RETURN_IF_ARG_LE_ZERO(bufSize_byte, IFX_ERROR);
+ 
+-   ret = (IFX_int_t)sendto((int)socFd, (const char*)pBuffer, 
+-		(int)bufSize_byte, 0, pSocAddr, sizeof(IFXOS_sockAddr_t));
++   ret = (IFX_int_t)sendto(socFd, pBuffer, 
++		bufSize_byte, 0, (struct sockaddr *)pSocAddr, sizeof(IFXOS_sockAddr_t));
+ 
+    return ret;
+ }
diff --git a/package/kernel/lantiq/ltq-ifxos/patches/100-compat.patch b/package/kernel/lantiq/ltq-ifxos/patches/100-compat.patch
index dcd260e..80275e6 100644
--- a/package/kernel/lantiq/ltq-ifxos/patches/100-compat.patch
+++ b/package/kernel/lantiq/ltq-ifxos/patches/100-compat.patch
@@ -40,28 +40,21 @@
  
     /* Enable signals in Kernel >= 2.6 */
     allow_signal(SIGKILL);
-@@ -221,9 +218,7 @@ IFX_int32_t IFXOS_ThreadInit(
+@@ -221,9 +218,11 @@ IFX_int32_t IFXOS_ThreadInit(
           init_completion(&pThrCntrl->thrCompletion);
  
           /* start kernel thread via the wrapper function */
 -         pThrCntrl->tid = kernel_thread( (IFXOS_KERNEL_THREAD_StartRoutine)IFXOS_KernelThreadStartup,
 -                        (void *)pThrCntrl,
 -                        IFXOS_DRV_THREAD_OPTIONS);
-+         pThrCntrl->tid = kthread_run(IFXOS_KernelThreadStartup, (void *)pThrCntrl, "ifxos");
++         pThrCntrl->tid = kthread_run(IFXOS_KernelThreadStartup, (void *)pThrCntrl, pThrCntrl->thrParams.pName);
++         if (IS_ERR(pThrCntrl->tid)) {
++            IFXOS_PRN_USR_ERR_NL( IFXOS, IFXOS_PRN_LEVEL_ERR,
++               ("IFXOS ERROR - Problem creating thread: %li" IFXOS_CRLF, PTR_ERR(pThrCntrl->tid)));
++         }
  
           pThrCntrl->bValid = IFX_TRUE;
  
---- a/src/include/ifxos_thread.h
-+++ b/src/include/ifxos_thread.h
-@@ -111,7 +111,7 @@ typedef struct IFXOS_ThreadParams_s
- /**
-    Function type of the user thread/task function.
- */
--typedef IFX_int32_t (*IFXOS_ThreadFunction_t)(IFXOS_ThreadParams_t *);
-+typedef int (*IFXOS_ThreadFunction_t)(void*);
- 
- /** @} */
- 
 --- a/src/include/linux/ifxos_linux_thread.h
 +++ b/src/include/linux/ifxos_linux_thread.h
 @@ -152,7 +152,7 @@ typedef struct
-- 
2.6.2
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel



More information about the openwrt-devel mailing list