lantiq: ltq-vdsl-mei: update to version 1.4.8.5

In addition to the update this also fixes some build warnings and makes it
use the same configure option as used in Lantiq UGW.

Signed-off-by: Hauke Mehrtens <hauke.mehrtens@lantiq.com>

SVN-Revision: 47634
This commit is contained in:
John Crispin 2015-11-24 20:40:59 +00:00
parent ca541cffd0
commit 5d236c4dd0
4 changed files with 53 additions and 27 deletions

View file

@ -1,4 +1,5 @@
# Copyright (C) 2012 OpenWrt.org # Copyright (C) 2012 OpenWrt.org
# Copyright (C) 2015 Lantiq Beteiligungs GmbH & Co KG.
# #
# This is free software, licensed under the GNU General Public License v2. # This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information. # See /LICENSE for more information.
@ -7,14 +8,14 @@ include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=ltq-vdsl-vr9-mei PKG_NAME:=ltq-vdsl-vr9-mei
PKG_VERSION:=1.4.8.4 PKG_VERSION:=1.4.8.5
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_BASE_NAME:=drv_mei_cpe PKG_BASE_NAME:=drv_mei_cpe
PKG_SOURCE:=$(PKG_BASE_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_BASE_NAME)-$(PKG_VERSION).tar.gz
PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/$(PKG_BASE_NAME)-$(PKG_VERSION) PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/$(PKG_BASE_NAME)-$(PKG_VERSION)
PKG_SOURCE_URL:=https://github.com/xdarklight/$(PKG_BASE_NAME)/archive/v$(PKG_VERSION) PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources
PKG_MD5SUM:=30570722dc7f19ff2f0228838043f2a2 PKG_MD5SUM:=78bf61dbc3421123c6716b874a930759
PKG_FIXUP:=autoreconf PKG_FIXUP:=autoreconf
PKG_MAINTAINER:=John Crispin <blogic@openwrt.org> PKG_MAINTAINER:=John Crispin <blogic@openwrt.org>
PKG_USE_MIPS16:=0 PKG_USE_MIPS16:=0
@ -49,9 +50,6 @@ define Package/ltq-vdsl-mei_test/description
for test and development purposes. for test and development purposes.
endef endef
#DEBUG=-DDEBUG_PRINT=1
MAKE_FLAGS += \ MAKE_FLAGS += \
SHELL="$(BASH)" SHELL="$(BASH)"
@ -64,7 +62,7 @@ CONFIGURE_ARGS += \
--enable-error_print \ --enable-error_print \
--enable-ifxos-include="-I$(STAGING_DIR)/usr/include/ifxos/" \ --enable-ifxos-include="-I$(STAGING_DIR)/usr/include/ifxos/" \
--enable-ifxos-library="-L$(STAGING_DIR)/usr/lib" \ --enable-ifxos-library="-L$(STAGING_DIR)/usr/lib" \
--enable-add_drv_cflags="$(DEBUG) -DMEI_DRV_ATM_PTM_INTERFACE_ENABLE=1 -DMEI_EXPORT_INTERNAL_API=1 -DMEI_SUPPORT_DSM=0 -fno-pic -mno-abicalls -mlong-calls -O2 -g0" \ --enable-add_drv_cflags="-DMEI_SUPPORT_DSM=0 -DMEI_DRV_ATM_PTM_INTERFACE_ENABLE=1 -fno-pic -mlong-calls -O2 -g0" \
--enable-linux-26 \ --enable-linux-26 \
--enable-kernelbuild="$(LINUX_DIR)" \ --enable-kernelbuild="$(LINUX_DIR)" \
--enable-drv_test_appl=yes \ --enable-drv_test_appl=yes \

View file

@ -0,0 +1,26 @@
--- a/src/drv_mei_cpe_api.h
+++ b/src/drv_mei_cpe_api.h
@@ -937,7 +937,7 @@ typedef struct MEI_dev_s
#if ( defined(MEI_DRVOS_HAVE_DRV_SELECT) && (MEI_DRVOS_HAVE_DRV_SELECT == 1) )
/** support for select() */
IFX_boolean_t bNfcNeedWakeUp;
- MEI_DRVOS_event_t selNfcWakeupList;
+ IFXOS_drvSelectQueue_t selNfcWakeupList;
#endif
/** list of all open instances which can receive NFC's, EVT's ALM's */
--- a/src/drv_mei_cpe_linux.c
+++ b/src/drv_mei_cpe_linux.c
@@ -1220,9 +1220,9 @@ static unsigned int MEI_Poll (struct fil
}
MEI_DRVOS_SelectQueueAddTask(
- (MEI_DRVOS_select_OSArg_t*) filp,
- (MEI_DRVOS_event_t*) &(pMeiDev->selNfcWakeupList),
- (MEI_DRVOS_selectTable_t*) wait);
+ filp,
+ &(pMeiDev->selNfcWakeupList),
+ wait);
if (pDynNfc->pRecvDataCntrl[pDynNfc->rdIdxRd].bufCtrl != MEI_RECV_BUF_CTRL_FREE) /* buffer in use */
{

View file

@ -43,7 +43,7 @@
#ifdef MODULE #ifdef MODULE
#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0)) #if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0))
MODULE_PARM(major_number, "b"); MODULE_PARM(major_number, "b");
@@ -1783,7 +1787,9 @@ static int __init MEI_module_init (void) @@ -1798,7 +1802,9 @@ static int __init MEI_module_init (void)
return (result); return (result);
} }
@ -53,7 +53,7 @@
return 0; return 0;
} }
@@ -1907,6 +1913,10 @@ static void MEI_module_exit (void) @@ -1922,6 +1928,10 @@ static void MEI_module_exit (void)
#else #else
unregister_chrdev ( major_number , DRV_MEI_NAME ); unregister_chrdev ( major_number , DRV_MEI_NAME );
@ -64,7 +64,7 @@
#endif #endif
#if CONFIG_PROC_FS #if CONFIG_PROC_FS
@@ -1963,7 +1973,9 @@ static void MEI_module_exit (void) @@ -1978,7 +1988,9 @@ static void MEI_module_exit (void)
("MEI_DRV: Chipset Basic Exit failed" MEI_DRV_CRLF)); ("MEI_DRV: Chipset Basic Exit failed" MEI_DRV_CRLF));
} }
@ -74,7 +74,7 @@
/* touch one time this variable to avoid that the linker will remove it */ /* touch one time this variable to avoid that the linker will remove it */
debug_level = MEI_DRV_PRN_LEVEL_OFF; debug_level = MEI_DRV_PRN_LEVEL_OFF;
@@ -2080,6 +2092,10 @@ static int MEI_InitModuleRegCharDev(cons @@ -2095,6 +2107,10 @@ static int MEI_InitModuleRegCharDev(cons
("Using major number %d" MEI_DRV_CRLF, major_number)); ("Using major number %d" MEI_DRV_CRLF, major_number));
} }
@ -85,7 +85,7 @@
return 0; return 0;
#endif /* CONFIG_DEVFS_FS */ #endif /* CONFIG_DEVFS_FS */
} }
@@ -2120,21 +2136,32 @@ static int MEI_InitModuleBasics(void) @@ -2135,21 +2151,32 @@ static int MEI_InitModuleBasics(void)
} }
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,10,0)) #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,10,0))
@ -118,7 +118,7 @@
return 0; return 0;
} }
@@ -2454,11 +2481,15 @@ IFX_int32_t MEI_IoctlInitDevice( @@ -2469,11 +2496,15 @@ IFX_int32_t MEI_IoctlInitDevice(
pMeiDev->eModePoll = e_MEI_DEV_ACCESS_MODE_IRQ; pMeiDev->eModePoll = e_MEI_DEV_ACCESS_MODE_IRQ;
pMeiDev->intMask = ME_ARC2ME_INTERRUPT_UNMASK_ALL; pMeiDev->intMask = ME_ARC2ME_INTERRUPT_UNMASK_ALL;
@ -146,7 +146,7 @@
+int (*ifx_mei_atm_showtime_enter)(struct port_cell_info *, void *) = NULL; +int (*ifx_mei_atm_showtime_enter)(struct port_cell_info *, void *) = NULL;
+int (*ifx_mei_atm_showtime_exit)(void) = NULL; +int (*ifx_mei_atm_showtime_exit)(void) = NULL;
+ +
+ltq_ifx_mei_atm_showtime_enter_compat(IFX_uint8_t dslLineNum, +int ltq_ifx_mei_atm_showtime_enter_compat(IFX_uint8_t dslLineNum,
+ struct port_cell_info *cellInfo, + struct port_cell_info *cellInfo,
+ void *xdata) { + void *xdata) {
+ if (ifx_mei_atm_showtime_enter) + if (ifx_mei_atm_showtime_enter)
@ -155,7 +155,7 @@
+ return -e_MEI_ERR_OP_FAILED; + return -e_MEI_ERR_OP_FAILED;
+} +}
+ +
+ltq_ifx_mei_atm_showtime_exit_compat(IFX_uint8_t dslLineNum) { +int ltq_ifx_mei_atm_showtime_exit_compat(IFX_uint8_t dslLineNum) {
+ if (ifx_mei_atm_showtime_exit) + if (ifx_mei_atm_showtime_exit)
+ return ifx_mei_atm_showtime_exit(); + return ifx_mei_atm_showtime_exit();
+ +
@ -198,11 +198,12 @@
#if (MEI_EXPORT_INTERNAL_API == 1) && (MEI_DRV_ATM_PTM_INTERFACE_ENABLE == 1) #if (MEI_EXPORT_INTERNAL_API == 1) && (MEI_DRV_ATM_PTM_INTERFACE_ENABLE == 1)
@@ -42,8 +41,20 @@ extern IFX_int32_t MEI_InternalXtmSwhowt @@ -42,8 +41,21 @@ extern IFX_int32_t MEI_InternalXtmSwhowt
MEI_DYN_CNTRL_T *pMeiDynCntrl, MEI_DYN_CNTRL_T *pMeiDynCntrl,
MEI_XTM_ShowtimeExit_t *pArgXtm); MEI_XTM_ShowtimeExit_t *pArgXtm);
+#if 1 +#if 1
+#include <lantiq_atm.h>
+typedef enum { +typedef enum {
+ LTQ_MEI_SHOWTIME_ENTER, + LTQ_MEI_SHOWTIME_ENTER,
+ LTQ_MEI_SHOWTIME_EXIT + LTQ_MEI_SHOWTIME_EXIT
@ -221,9 +222,9 @@
const unsigned char line_idx, const unsigned char line_idx,
--- a/src/drv_mei_cpe_device_vrx.c --- a/src/drv_mei_cpe_device_vrx.c
+++ b/src/drv_mei_cpe_device_vrx.c +++ b/src/drv_mei_cpe_device_vrx.c
@@ -27,13 +27,6 @@ @@ -28,13 +28,6 @@
#include "drv_mei_cpe_mei_interface.h"
#include "drv_mei_cpe_api.h" #include "drv_mei_cpe_api.h"
#include "drv_mei_cpe_mei_vrx.h"
-#if defined(LINUX) -#if defined(LINUX)
-# if (LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)) -# if (LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0))
@ -235,7 +236,7 @@
IFX_int32_t MEI_GPIntProcess(MEI_MeiRegVal_t processInt, MEI_DEV_T *pMeiDev) IFX_int32_t MEI_GPIntProcess(MEI_MeiRegVal_t processInt, MEI_DEV_T *pMeiDev)
{ {
@@ -81,6 +74,7 @@ IFX_int32_t MEI_GetChipInfo(MEI_DEV_T *p @@ -82,6 +75,7 @@ IFX_int32_t MEI_GetChipInfo(MEI_DEV_T *p
*/ */
IFX_int32_t MEI_VR10_PcieEntitiesCheck(IFX_uint8_t nEntityNum) IFX_int32_t MEI_VR10_PcieEntitiesCheck(IFX_uint8_t nEntityNum)
{ {
@ -243,7 +244,7 @@
IFX_uint32_t pcie_entitiesNum; IFX_uint32_t pcie_entitiesNum;
/* get information from pcie driver */ /* get information from pcie driver */
@@ -101,6 +95,9 @@ IFX_int32_t MEI_VR10_PcieEntitiesCheck(I @@ -102,6 +96,9 @@ IFX_int32_t MEI_VR10_PcieEntitiesCheck(I
} }
return IFX_SUCCESS; return IFX_SUCCESS;
@ -253,7 +254,7 @@
} }
/** /**
@@ -115,6 +112,7 @@ IFX_int32_t MEI_VR10_PcieEntitiesCheck(I @@ -116,6 +113,7 @@ IFX_int32_t MEI_VR10_PcieEntitiesCheck(I
*/ */
IFX_int32_t MEI_VR10_PcieEntityInit(MEI_MEI_DRV_CNTRL_T *pMeiDrvCntrl) IFX_int32_t MEI_VR10_PcieEntityInit(MEI_MEI_DRV_CNTRL_T *pMeiDrvCntrl)
{ {
@ -261,7 +262,7 @@
IFX_uint8_t entityNum; IFX_uint8_t entityNum;
ifx_pcie_ep_dev_t MEI_pcie_ep_dev; ifx_pcie_ep_dev_t MEI_pcie_ep_dev;
@@ -137,6 +135,9 @@ IFX_int32_t MEI_VR10_PcieEntityInit(MEI_ @@ -138,6 +136,9 @@ IFX_int32_t MEI_VR10_PcieEntityInit(MEI_
pMeiDrvCntrl->MEI_pcie_irq = MEI_pcie_ep_dev.irq; pMeiDrvCntrl->MEI_pcie_irq = MEI_pcie_ep_dev.irq;
return IFX_SUCCESS; return IFX_SUCCESS;
@ -271,7 +272,7 @@
} }
/** /**
@@ -151,6 +152,7 @@ IFX_int32_t MEI_VR10_PcieEntityInit(MEI_ @@ -152,6 +153,7 @@ IFX_int32_t MEI_VR10_PcieEntityInit(MEI_
*/ */
IFX_int32_t MEI_VR10_PcieEntityFree(IFX_uint8_t entityNum) IFX_int32_t MEI_VR10_PcieEntityFree(IFX_uint8_t entityNum)
{ {
@ -279,7 +280,7 @@
if (ifx_pcie_ep_dev_info_release(entityNum)) if (ifx_pcie_ep_dev_info_release(entityNum))
{ {
PRN_ERR_USR_NL( MEI_DRV, MEI_DRV_PRN_LEVEL_ERR, PRN_ERR_USR_NL( MEI_DRV, MEI_DRV_PRN_LEVEL_ERR,
@@ -160,6 +162,9 @@ IFX_int32_t MEI_VR10_PcieEntityFree(IFX_ @@ -161,6 +163,9 @@ IFX_int32_t MEI_VR10_PcieEntityFree(IFX_
} }
return IFX_SUCCESS; return IFX_SUCCESS;
@ -289,7 +290,7 @@
} }
/** /**
@@ -174,6 +179,7 @@ IFX_int32_t MEI_VR10_PcieEntityFree(IFX_ @@ -175,6 +180,7 @@ IFX_int32_t MEI_VR10_PcieEntityFree(IFX_
*/ */
IFX_int32_t MEI_VR10_InternalInitDevice(MEI_DYN_CNTRL_T *pMeiDynCntrl) IFX_int32_t MEI_VR10_InternalInitDevice(MEI_DYN_CNTRL_T *pMeiDynCntrl)
{ {
@ -297,7 +298,7 @@
IFX_int32_t retVal; IFX_int32_t retVal;
IOCTL_MEI_devInit_t InitDev; IOCTL_MEI_devInit_t InitDev;
MEI_DEV_T *pMeiDev = pMeiDynCntrl->pMeiDev; MEI_DEV_T *pMeiDev = pMeiDynCntrl->pMeiDev;
@@ -198,5 +204,8 @@ IFX_int32_t MEI_VR10_InternalInitDevice( @@ -199,6 +205,9 @@ IFX_int32_t MEI_VR10_InternalInitDevice(
*MEI_GPIO_U32REG(GPIO_P0_ALSEL1) &= ~((1 << 0) | (1 << 3) | (1 << 8)); *MEI_GPIO_U32REG(GPIO_P0_ALSEL1) &= ~((1 << 0) | (1 << 3) | (1 << 8));
return IFX_SUCCESS; return IFX_SUCCESS;
@ -306,3 +307,4 @@
+#endif +#endif
} }
IFX_int32_t MEI_PLL_ConfigInit(MEI_DEV_T *pMeiDev)

View file

@ -1,6 +1,6 @@
--- a/src/drv_mei_cpe_linux.c --- a/src/drv_mei_cpe_linux.c
+++ b/src/drv_mei_cpe_linux.c +++ b/src/drv_mei_cpe_linux.c
@@ -1402,8 +1402,8 @@ struct proc_entry { @@ -1417,8 +1417,8 @@ struct proc_entry {
static void MEI_GetVersionProc(struct seq_file *s) static void MEI_GetVersionProc(struct seq_file *s)
{ {
seq_printf(s, "%s" MEI_DRV_CRLF, &MEI_WHATVERSION[4]); seq_printf(s, "%s" MEI_DRV_CRLF, &MEI_WHATVERSION[4]);