diff -ruN VoicePath_API-II_Lite_2.12.0.orig/api_lib/vp580_api/apiInit.c VoicePath_API-II_Lite_2.12.0/api_lib/vp580_api/apiInit.c --- VoicePath_API-II_Lite_2.12.0.orig/api_lib/vp580_api/apiInit.c 2008-07-22 12:19:57.000000000 -0700 +++ VoicePath_API-II_Lite_2.12.0/api_lib/vp580_api/apiInit.c 2008-08-28 19:30:11.579437419 -0700 @@ -963,14 +963,14 @@ pLineObj->digitGenStruct.makeTime = pDcFxoCfgProf[profileIndex]; profileIndex = VP_FXO_DIALING_PROFILE_FLASH_HOOK_MSB; - pLineObj->digitGenStruct.flashTime = + pLineObj->digitGenStruct.flashTime = (uint32) (pDcFxoCfgProf[profileIndex] << 8)&0xFF00; profileIndex = VP_FXO_DIALING_PROFILE_FLASH_HOOK_LSB; pLineObj->digitGenStruct.flashTime |= pDcFxoCfgProf[profileIndex]; profileIndex = VP_FXO_DIALING_PROFILE_INTERDIGIT_MSB; - pLineObj->digitGenStruct.dpInterDigitTime = + pLineObj->digitGenStruct.dpInterDigitTime = (uint32) (pDcFxoCfgProf[profileIndex] << 8)&0xFF00; profileIndex = VP_FXO_DIALING_PROFILE_INTERDIGIT_LSB; diff -ruN VoicePath_API-II_Lite_2.12.0.orig/api_lib/vp880_api/apiInit.c VoicePath_API-II_Lite_2.12.0/api_lib/vp880_api/apiInit.c --- VoicePath_API-II_Lite_2.12.0.orig/api_lib/vp880_api/apiInit.c 2008-07-22 12:19:58.000000000 -0700 +++ VoicePath_API-II_Lite_2.12.0/api_lib/vp880_api/apiInit.c 2008-08-28 19:30:11.635412542 -0700 @@ -1725,14 +1725,14 @@ } profileIndex = VP_FXO_DIALING_PROFILE_DTMF_ON_MSB; - pLineObj->digitGenStruct.dtmfOnTime = + pLineObj->digitGenStruct.dtmfOnTime = (uint32) (pDcFxoCfgProf[profileIndex] << 8)&0xFF00; profileIndex = VP_FXO_DIALING_PROFILE_DTMF_ON_LSB; pLineObj->digitGenStruct.dtmfOnTime |= pDcFxoCfgProf[profileIndex]; profileIndex = VP_FXO_DIALING_PROFILE_DTMF_OFF_MSB; - pLineObj->digitGenStruct.dtmfOffTime = + pLineObj->digitGenStruct.dtmfOffTime = (uint32) (pDcFxoCfgProf[profileIndex] << 8)&0xFF00; profileIndex = VP_FXO_DIALING_PROFILE_DTMF_OFF_LSB; @@ -1745,14 +1745,14 @@ pLineObj->digitGenStruct.makeTime = pDcFxoCfgProf[profileIndex]; profileIndex = VP_FXO_DIALING_PROFILE_FLASH_HOOK_MSB; - pLineObj->digitGenStruct.flashTime = + pLineObj->digitGenStruct.flashTime = (uint32) (pDcFxoCfgProf[profileIndex] << 8)&0xFF00; profileIndex = VP_FXO_DIALING_PROFILE_FLASH_HOOK_LSB; pLineObj->digitGenStruct.flashTime |= pDcFxoCfgProf[profileIndex]; profileIndex = VP_FXO_DIALING_PROFILE_INTERDIGIT_MSB; - pLineObj->digitGenStruct.dpInterDigitTime = + pLineObj->digitGenStruct.dpInterDigitTime = (uint32) (pDcFxoCfgProf[profileIndex] << 8)&0xFF00; profileIndex = VP_FXO_DIALING_PROFILE_INTERDIGIT_LSB; diff -ruN VoicePath_API-II_Lite_2.12.0.orig/arch/uvb/vp_api_types.h VoicePath_API-II_Lite_2.12.0/arch/uvb/vp_api_types.h --- VoicePath_API-II_Lite_2.12.0.orig/arch/uvb/vp_api_types.h 2008-07-22 12:20:08.000000000 -0700 +++ VoicePath_API-II_Lite_2.12.0/arch/uvb/vp_api_types.h 2008-08-28 19:30:11.639414397 -0700 @@ -10,9 +10,13 @@ #define VP_API_TYPES_H #include "vp_api_profile_type.h" +#ifdef __KERNEL__ +#include +#else #include "limits.h" /* For maximum that can be stored in an int */ +#endif -#define VP_GET_DEV_NODE(deviceId) "/dev/legVpDvr0" +#define VP_GET_DEV_NODE(deviceId) "/dev/legVpDvr"##deviceId /* VpDeviceIdType defines the type for the deviceId in the VpDevCtxType type. * This information is passed through the API to the HAL to communicate @@ -61,7 +65,8 @@ * NOTE: The 'C' potions of the VP-API assume C++ "bool" to be of the * same size as that of "char". Please make sure this assumption is correct. */ -typedef unsigned char bool; +//typedef unsigned char bool; +#define bool unsigned char #endif /* __cplusplus */ /****************** typedefs ***********************************/ diff -ruN VoicePath_API-II_Lite_2.12.0.orig/arch/uvb/vp_hal.c VoicePath_API-II_Lite_2.12.0/arch/uvb/vp_hal.c --- VoicePath_API-II_Lite_2.12.0.orig/arch/uvb/vp_hal.c 2008-07-22 12:20:08.000000000 -0700 +++ VoicePath_API-II_Lite_2.12.0/arch/uvb/vp_hal.c 2008-08-28 19:30:11.667408943 -0700 @@ -8,16 +8,18 @@ * * Copyright (c) 2008, Zarlink Semiconductor, Inc. */ +#ifndef __KERNEL__ #include #include #include +#endif -#include "asm/board/uvb_conn.h" /* Required for Zarlink Semiconductor UVB Only */ +//#include "asm/board/uvb_conn.h" /* Required for Zarlink Semiconductor UVB Only */ #include "vp_api_types.h" #include "hbi_hal.h" #include "hbi_hal.h" #include "sys_service.h" -#include "uvb_xs.h" /* Required for Zarlink Semiconductor UVB Only */ +//#include "uvb_xs.h" /* Required for Zarlink Semiconductor UVB Only */ #include "vp_hal.h" /****************************************************************************** diff -ruN VoicePath_API-II_Lite_2.12.0.orig/vpmod/Kbuild VoicePath_API-II_Lite_2.12.0/vpmod/Kbuild --- VoicePath_API-II_Lite_2.12.0.orig/vpmod/Kbuild 1969-12-31 16:00:00.000000000 -0800 +++ VoicePath_API-II_Lite_2.12.0/vpmod/Kbuild 2008-08-28 19:30:11.667408943 -0700 @@ -0,0 +1,7 @@ +EXTRA_CFLAGS = -I$(PWD)/api_lib/includes -I$(PWD)/arch/uvb -I$(PWD)/api_lib/vp580_api -I$(PWD)/api_lib/vp790_api -I$(PWD)/api_lib/vp880_api +leg_vp-objs := leg_vp_dvr.o ../api_lib/common/vp_api.o ../api_lib/common/vp_api_common.o ../api_lib/vcp2_api/vcp2_config.o ../arch/uvb/vp_hal.o \ +../api_lib/vp580_api/apicnt.o ../api_lib/vp580_api/apiInit.o ../api_lib/vp580_api/apiquery.o \ +../api_lib/vp790_api/apicnt.o ../api_lib/vp790_api/apiInit.o ../api_lib/vp790_api/apiquery.o \ +../api_lib/vp880_api/apiCal.o ../api_lib/vp880_api/apicnt.o ../api_lib/vp880_api/apiInit.o ../api_lib/vp880_api/apiquery.o \ + +obj-m += leg_vp.o diff -ruN VoicePath_API-II_Lite_2.12.0.orig/vpmod/leg_vp_dvr.c VoicePath_API-II_Lite_2.12.0/vpmod/leg_vp_dvr.c --- VoicePath_API-II_Lite_2.12.0.orig/vpmod/leg_vp_dvr.c 2008-07-22 12:20:06.000000000 -0700 +++ VoicePath_API-II_Lite_2.12.0/vpmod/leg_vp_dvr.c 2008-08-28 19:30:11.695412989 -0700 @@ -171,11 +171,15 @@ static int dev2_info[3] = {-1, -1, -1}; static int dev3_info[3] = {-1, -1, -1}; - /* registering 3 interger parameters with the insmod command */ + /* registering 3 interger parameters with the insmod command * MODULE_PARM (dev0_info, "3i"); MODULE_PARM (dev1_info, "3i"); MODULE_PARM (dev2_info, "3i"); - MODULE_PARM (dev3_info, "3i"); + MODULE_PARM (dev3_info, "3i");*/ + module_param_array(dev0_info, int, NULL, 0); + module_param_array(dev1_info, int, NULL, 0); + module_param_array(dev2_info, int, NULL, 0); + module_param_array(dev3_info, int, NULL, 0); #if (LEG_VP_DVR_NUM_DEVS != 4) #error (LEG_VP_DVR_NUM_DEVS does not match MODULE_PARMS) #endif @@ -2061,7 +2065,7 @@ */ if (0 <= result) { pfile->private_data = pDvrInfo; - MOD_INC_USE_COUNT; +// MOD_INC_USE_COUNT; } return result; @@ -2074,7 +2078,7 @@ struct inode *pInode, struct file *pfile) { - MOD_DEC_USE_COUNT; +// MOD_DEC_USE_COUNT; return 0; }