wanpipe-3.4.5.tgz
This commit is contained in:
parent
539174b95a
commit
7bbfefe672
|
@ -8,6 +8,26 @@ For more info visit: http://wiki.sangoma.com
|
||||||
|
|
||||||
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
* Tue Aug 18 2009 Nenad Corbic <ncorbic@sangoma.com> - Stable - 3.4.5
|
||||||
|
=====================================================================
|
||||||
|
|
||||||
|
- New firmawre feature for A101/2/5/8: Free Run Timer Interrupt
|
||||||
|
The AFT T1/E1 cards will now provide perfect timing to zatpel/dahdi
|
||||||
|
even when the ports are not connected. The free run interrupt
|
||||||
|
will be enabled when all zaptel/dahdi ports are down, or on
|
||||||
|
inital card start. To test this feature just start a wanpipe
|
||||||
|
port with zaptel/dahdi and run zttest.
|
||||||
|
A108 firmare V38
|
||||||
|
A104/2/1/ firmware V36
|
||||||
|
|
||||||
|
- Added module inc cound when zaptel/dahdi starts.
|
||||||
|
So wanpipe drivers do not crash if one tries to unload
|
||||||
|
zaptel/dahdi before stopping wanpipe drivers.
|
||||||
|
|
||||||
|
- Dahdi 2.2 Support
|
||||||
|
- Updated for 2.6.30 kernel
|
||||||
|
|
||||||
|
|
||||||
* Fri Jun 17 2009 Nenad Corbic <ncorbic@sangoma.com> - Stable - 3.4.4
|
* Fri Jun 17 2009 Nenad Corbic <ncorbic@sangoma.com> - Stable - 3.4.4
|
||||||
=====================================================================
|
=====================================================================
|
||||||
|
|
||||||
|
|
13
Makefile
13
Makefile
|
@ -61,6 +61,10 @@ ifndef INSTALLPREFIX
|
||||||
INSTALLPREFIX=
|
INSTALLPREFIX=
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifndef LIBPREFIX
|
||||||
|
LIBPREFIX=/usr
|
||||||
|
endif
|
||||||
|
|
||||||
ifndef 64BIT_4G
|
ifndef 64BIT_4G
|
||||||
64BIT_4G="Disabled"
|
64BIT_4G="Disabled"
|
||||||
else
|
else
|
||||||
|
@ -91,6 +95,9 @@ ZAPHDLC_PRIV=/etc/wanpipe/.zaphdlc
|
||||||
|
|
||||||
EXTRA_CFLAGS += $(EXTRA_FLAGS)
|
EXTRA_CFLAGS += $(EXTRA_FLAGS)
|
||||||
|
|
||||||
|
#Enable for debugging only
|
||||||
|
#EXTRA_CFLAGS += -DWANPIPE_PERFORMANCE_DEBUG
|
||||||
|
|
||||||
|
|
||||||
#Check if zaptel exists
|
#Check if zaptel exists
|
||||||
ifneq (,$(wildcard $(ZAPDIR)/zaptel.h))
|
ifneq (,$(wildcard $(ZAPDIR)/zaptel.h))
|
||||||
|
@ -298,7 +305,7 @@ all_util: install_inc
|
||||||
PREFIX=$(INSTALLPREFIX) HOSTCFLAGS="$(EXTRA_UTIL_FLAGS)" HOSTCFLAGS="$(EXTRA_UTIL_FLAGS)" ARCH=$(ARCH)
|
PREFIX=$(INSTALLPREFIX) HOSTCFLAGS="$(EXTRA_UTIL_FLAGS)" HOSTCFLAGS="$(EXTRA_UTIL_FLAGS)" ARCH=$(ARCH)
|
||||||
|
|
||||||
all_lib:
|
all_lib:
|
||||||
$(shell cd api/libsangoma; ./init-automake.sh > /dev/null; ./configure --prefix=/usr > /dev/null;)
|
$(shell cd api/libsangoma; ./init-automake.sh >> $(PWD)/.cfg_log; ./configure --prefix=$(LIBPREFIX) >> $(PWD)/.cfg_log;)
|
||||||
$(MAKE) -C api/libsangoma clean
|
$(MAKE) -C api/libsangoma clean
|
||||||
$(MAKE) -C api/libsangoma all
|
$(MAKE) -C api/libsangoma all
|
||||||
|
|
||||||
|
@ -358,9 +365,9 @@ install_inc:
|
||||||
@\cp -rf $(PWD)/patches/kdrivers/wanec/*.h $(INSTALLPREFIX)/usr/include/wanpipe/
|
@\cp -rf $(PWD)/patches/kdrivers/wanec/*.h $(INSTALLPREFIX)/usr/include/wanpipe/
|
||||||
|
|
||||||
smgbri:
|
smgbri:
|
||||||
@cd ssmg/libsangoma.trunk; ./configure --prefix=/usr ; cd ../..;
|
@cd ssmg/libsangoma.trunk; ./configure --prefix=$(LIBPREFIX) ; cd ../..;
|
||||||
$(MAKE) -C ssmg/libsangoma.trunk/ CC=$(CC) PREFIX=$(INSTALLPREFIX) KDIR=$(KDIR)
|
$(MAKE) -C ssmg/libsangoma.trunk/ CC=$(CC) PREFIX=$(INSTALLPREFIX) KDIR=$(KDIR)
|
||||||
@cd ssmg/sangoma_mgd.trunk/lib/libteletone; ./configure --prefix=/usr ; cd ../../..;
|
@cd ssmg/sangoma_mgd.trunk/lib/libteletone; ./configure --prefix=$(LIBPREFIX) ; cd ../../..;
|
||||||
$(MAKE) -C ssmg/sangoma_mgd.trunk/lib/libteletone CC=$(CC) PREFIX=$(INSTALLPREFIX) KDIR=$(KDIR)
|
$(MAKE) -C ssmg/sangoma_mgd.trunk/lib/libteletone CC=$(CC) PREFIX=$(INSTALLPREFIX) KDIR=$(KDIR)
|
||||||
$(MAKE) -C ssmg/sangoma_mgd.trunk/ CC=$(CC) PREFIX=$(INSTALLPREFIX) KDIR=$(KDIR) ASTDIR=$(ASTDIR)
|
$(MAKE) -C ssmg/sangoma_mgd.trunk/ CC=$(CC) PREFIX=$(INSTALLPREFIX) KDIR=$(KDIR) ASTDIR=$(ASTDIR)
|
||||||
|
|
||||||
|
|
352
Setup
352
Setup
|
@ -9,6 +9,11 @@
|
||||||
# as published by the Free Software Foundation; either version
|
# as published by the Free Software Foundation; either version
|
||||||
# 2 of the License, or (at your option) any later version.
|
# 2 of the License, or (at your option) any later version.
|
||||||
# ----------------------------------------------------------------------------
|
# ----------------------------------------------------------------------------
|
||||||
|
# Jul 29, 2009 Konrad Hammel Added --with-asterisk option
|
||||||
|
# Jul 27, 2009 Konrad Hammel Update to not compile unneeded utilities in
|
||||||
|
# TDM_VOICE mode.
|
||||||
|
# Jul 24, 2008 Konrad Hammel Removed the addition of UDEV rules for Dahdi
|
||||||
|
# installs, only needed for Zaptel
|
||||||
# Jul 30, 2008 Jignesh Patel Added check for sctp utlity
|
# Jul 30, 2008 Jignesh Patel Added check for sctp utlity
|
||||||
# May 30, 2008 Jignesh Patel Fixed bootscript installation failure
|
# May 30, 2008 Jignesh Patel Fixed bootscript installation failure
|
||||||
# Mar 12, 2008 Konrad Hammel Updated for Zaptel-1.4.9 (kernel sub-dir)
|
# Mar 12, 2008 Konrad Hammel Updated for Zaptel-1.4.9 (kernel sub-dir)
|
||||||
|
@ -1011,10 +1016,9 @@ get_kernel_ver ()
|
||||||
local err=0
|
local err=0
|
||||||
|
|
||||||
IFS="="
|
IFS="="
|
||||||
|
|
||||||
while read name value;
|
while read name value;
|
||||||
do
|
do
|
||||||
|
|
||||||
if [ $AWK_SUPPORT = YES ]; then
|
if [ $AWK_SUPPORT = YES ]; then
|
||||||
name=`echo $name | awk '{ gsub(" ", "") ; print }'`
|
name=`echo $name | awk '{ gsub(" ", "") ; print }'`
|
||||||
elif [ $BASH_SUPPORT -gt 1 ]; then
|
elif [ $BASH_SUPPORT -gt 1 ]; then
|
||||||
|
@ -1048,14 +1052,14 @@ get_kernel_ver ()
|
||||||
|
|
||||||
KERNEL_VERSION=$KVER"."$KPATCH"."$KLVL$KEVER
|
KERNEL_VERSION=$KVER"."$KPATCH"."$KLVL$KEVER
|
||||||
|
|
||||||
if [ $KVER -eq 2 ] && [ $KPATCH -eq 6 ]; then
|
if [ "$KVER" -eq "2" ] && [ "$KPATCH" -eq "6" ]; then
|
||||||
KERN_VER=26;
|
KERN_VER=26;
|
||||||
LINUXDRIVERS_NET="drivers/net/wan"
|
LINUXDRIVERS_NET="drivers/net/wan"
|
||||||
KLVL=${KLVL:-6}
|
KLVL=${KLVL:-6}
|
||||||
elif [ $KVER -eq 2 ] && [ $KPATCH -eq 4 ]; then
|
elif [ "$KVER" -eq "2" ] && [ "$KPATCH" -eq "4" ]; then
|
||||||
KERN_VER=24;
|
KERN_VER=24;
|
||||||
LINUXDRIVERS_NET="drivers/net/wan"
|
LINUXDRIVERS_NET="drivers/net/wan"
|
||||||
elif [ $KVER -eq 2 ] && [ $KPATCH -eq 2 ]; then
|
elif [ "$KVER" -eq "2" ] && [ "$KPATCH" -eq "2" ]; then
|
||||||
KERN_VER=22;
|
KERN_VER=22;
|
||||||
LINUXDRIVERS_NET="drivers/net"
|
LINUXDRIVERS_NET="drivers/net"
|
||||||
if [ $ADSL_PROT = YES ];then
|
if [ $ADSL_PROT = YES ];then
|
||||||
|
@ -2093,7 +2097,7 @@ WARNING: The Linux source in $SOURCEDIR has not been configured.
|
||||||
|
|
||||||
|
|
||||||
echo
|
echo
|
||||||
echo "Compiling ${DISTR_NAME} WanCfg Utility ..."
|
echo -n "Compiling ${DISTR_NAME} WanCfg Utility ..."
|
||||||
|
|
||||||
WANCFG_DEFS=
|
WANCFG_DEFS=
|
||||||
if [ "$TDM_PROT" = "YES" ]; then
|
if [ "$TDM_PROT" = "YES" ]; then
|
||||||
|
@ -2106,7 +2110,7 @@ WARNING: The Linux source in $SOURCEDIR has not been configured.
|
||||||
|
|
||||||
if [ $? -eq 0 ]
|
if [ $? -eq 0 ]
|
||||||
then
|
then
|
||||||
echo -e "Done.\n"
|
echo -e "Done.\n\n"
|
||||||
else
|
else
|
||||||
echo
|
echo
|
||||||
echo -e "Failed!\n"
|
echo -e "Failed!\n"
|
||||||
|
@ -2126,104 +2130,124 @@ WARNING: The Linux source in $SOURCEDIR has not been configured.
|
||||||
|
|
||||||
cd $PROD_HOME/util/misc
|
cd $PROD_HOME/util/misc
|
||||||
|
|
||||||
echo
|
|
||||||
echo -n "Compiling WANPIPE Misc Utilities ..."
|
echo -n "Compiling WANPIPE Misc Utilities ..."
|
||||||
eval "make CC=$CC SYSINC=$SOURCEDIR/include > /dev/null"
|
eval "make CC=$CC SYSINC=$SOURCEDIR/include > /dev/null"
|
||||||
echo -e "Done.\n"
|
echo -e "Done.\n\n"
|
||||||
|
|
||||||
echo
|
if [ $TDM_VOICE_ONLY = 'YES' ]; then
|
||||||
echo -n "Compiling WANPIPE LibSangoma API library ..."
|
echo -e "Compiling WANPIPE LibSangoma API Library ... skipped, not required.\n\n"
|
||||||
|
|
||||||
cd $PROD_HOME/api
|
|
||||||
|
|
||||||
if [ $superuser = "YES" ] && [ -z $ROOT ]; then
|
|
||||||
eval "find /usr/local/lib -name 'libsangoma*' > /dev/null 2>/dev/null"
|
|
||||||
if [ $? -eq 0 ]; then
|
|
||||||
eval "find /usr/local/lib -name 'libsangoma*' | xargs rm > /dev/null 2>/dev/null"
|
|
||||||
eval "find /usr/local/include -name 'libsangoma*' | xargs rm > /dev/null 2>/dev/null"
|
|
||||||
fi
|
|
||||||
eval "find /usr/local/lib -name 'libstelephony*' > /dev/null 2>/dev/null"
|
|
||||||
if [ $? -eq 0 ]; then
|
|
||||||
eval "find /usr/local/lib -name 'libstelephony*' | xargs rm > /dev/null 2>/dev/null"
|
|
||||||
eval "find /usr/local/include -name 'libstelephony*' | xargs rm > /dev/null 2>/dev/null"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
cd libsangoma
|
|
||||||
eval "./init-automake.sh >> $CMP_LOG 2>> $CMP_LOG"
|
|
||||||
eval "./configure --prefix=/usr >> $CMP_LOG 2>> $CMP_LOG"
|
|
||||||
eval "make clean >> $CMP_LOG 2>> $CMP_LOG"
|
|
||||||
eval "make CC=$CC SYSINC=$WANPIPE_INCLUDE_DIR >> $CMP_LOG 2>> $CMP_LOG"
|
|
||||||
if [ $? -eq 0 ]; then
|
|
||||||
echo -e "Done.\n"
|
|
||||||
else
|
else
|
||||||
echo -e "Failed. \n"
|
echo -n "Compiling WANPIPE LibSangoma API library ..."
|
||||||
pause
|
|
||||||
fi
|
|
||||||
eval "make install DESTDIR=$ROOT >> $CMP_LOG 2>> $CMP_LOG"
|
|
||||||
|
|
||||||
cd ..
|
cd $PROD_HOME/api
|
||||||
|
|
||||||
if [ -e libstelephony ]; then
|
if [ $superuser = "YES" ] && [ -z $ROOT ]; then
|
||||||
echo -n "Compiling WANPIPE LibStelephony API library ..."
|
eval "find /usr/local/lib -name 'libsangoma*' > /dev/null 2>/dev/null"
|
||||||
|
if [ $? -eq 0 ]; then
|
||||||
cd libstelephony
|
eval "find /usr/local/lib -name 'libsangoma*' | xargs rm -f > /dev/null 2>/dev/null"
|
||||||
|
eval "find /usr/local/include -name 'libsangoma*' | xargs rm -f > /dev/null 2>/dev/null"
|
||||||
|
fi
|
||||||
|
eval "find /usr/local/lib -name 'libstelephony*' > /dev/null 2>/dev/null"
|
||||||
|
if [ $? -eq 0 ]; then
|
||||||
|
eval "find /usr/local/lib -name 'libstelephony*' | xargs rm -f > /dev/null 2>/dev/null"
|
||||||
|
eval "find /usr/local/include -name 'libstelephony*' | xargs rm -f > /dev/null 2>/dev/null"
|
||||||
|
fi
|
||||||
|
eval "find /usr/lib -name 'libsangoma*' > /dev/null 2>/dev/null"
|
||||||
|
if [ $? -eq 0 ]; then
|
||||||
|
eval "find /usr/lib -name 'libsangoma*' | xargs rm -f > /dev/null 2>/dev/null"
|
||||||
|
eval "find /usr/include -name 'libsangoma*' | xargs rm -f > /dev/null 2>/dev/null"
|
||||||
|
fi
|
||||||
|
eval "find /usr/lib/lib -name 'libstelephony*' > /dev/null 2>/dev/null"
|
||||||
|
if [ $? -eq 0 ]; then
|
||||||
|
eval "find /usr/lib -name 'libstelephony*' | xargs rm -f > /dev/null 2>/dev/null"
|
||||||
|
eval "find /usr/include -name 'libstelephony*' | xargs rm -f > /dev/null 2>/dev/null"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd libsangoma
|
||||||
eval "./init-automake.sh >> $CMP_LOG 2>> $CMP_LOG"
|
eval "./init-automake.sh >> $CMP_LOG 2>> $CMP_LOG"
|
||||||
eval "./configure --prefix=/usr >> $CMP_LOG 2>> $CMP_LOG"
|
eval "./configure --prefix=/usr >> $CMP_LOG 2>> $CMP_LOG"
|
||||||
eval "make clean >> $CMP_LOG 2>> $CMP_LOG"
|
eval "make clean >> $CMP_LOG 2>> $CMP_LOG"
|
||||||
eval "make CC=$CC SYSINC=$WANPIPE_INCLUDE_DIR >> $CMP_LOG 2>> $CMP_LOG"
|
eval "make CC=$CC SYSINC=$WANPIPE_INCLUDE_DIR >> $CMP_LOG 2>> $CMP_LOG"
|
||||||
if [ $? -eq 0 ]; then
|
if [ $? -eq 0 ]; then
|
||||||
echo -e "Done.\n"
|
echo -e "Done.\n\n"
|
||||||
else
|
else
|
||||||
echo -e "Failed. -- Note this library is not mandatory its safe to continue install \n"
|
echo -e "Failed. \n\n"
|
||||||
pause
|
pause
|
||||||
fi
|
fi
|
||||||
|
eval "make install DESTDIR=$ROOT >> $CMP_LOG 2>> $CMP_LOG"
|
||||||
|
cd ..
|
||||||
fi
|
fi
|
||||||
|
|
||||||
eval "make install DESTDIR=$ROOT >> $CMP_LOG 2>> $CMP_LOG"
|
if [ $TDM_VOICE_ONLY = 'YES' ]; then
|
||||||
|
echo -e "Compiling WANPIPE LibStelephony API Library ... skipped, not required.\n\n"
|
||||||
|
|
||||||
if [ $superuser = "YES" ] && [ -z $ROOT ]; then
|
|
||||||
eval "ldconfig > /dev/null 2> /dev/null"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo
|
|
||||||
echo -n "Compiling WANPIPE API Development Utilities ..."
|
|
||||||
|
|
||||||
cd $PROD_HOME/api
|
|
||||||
|
|
||||||
if [ -f Makefile ]; then
|
|
||||||
eval "make CC=$CC SYSINC=$WANPIPE_INCLUDE_DIR >> $CMP_LOG 2>> $CMP_LOG"
|
|
||||||
if [ $? -eq 0 ]; then
|
|
||||||
echo -e "Done.\n"
|
|
||||||
else
|
|
||||||
echo -e "Failed!\n"
|
|
||||||
echo -e "\tERROR: Failed to compile WANPIPE API Tools !!!"
|
|
||||||
echo -e "\t\nPlease contact Sangoma Technologies"
|
|
||||||
pause
|
|
||||||
fi
|
|
||||||
else
|
else
|
||||||
echo "Skiped"
|
if [ -e libstelephony ]; then
|
||||||
|
echo -n "Compiling WANPIPE LibStelephony API library ..."
|
||||||
|
cd libstelephony
|
||||||
|
eval "./init-automake.sh >> $CMP_LOG 2>> $CMP_LOG"
|
||||||
|
eval "./configure --prefix=/usr >> $CMP_LOG 2>> $CMP_LOG"
|
||||||
|
eval "make clean >> $CMP_LOG 2>> $CMP_LOG"
|
||||||
|
eval "make CC=$CC SYSINC=$WANPIPE_INCLUDE_DIR >> $CMP_LOG 2>> $CMP_LOG"
|
||||||
|
if [ $? -eq 0 ]; then
|
||||||
|
echo -e "Done.\n\n"
|
||||||
|
else
|
||||||
|
echo -e "Failed. -- Note this library is not mandatory its safe to continue install \n\n"
|
||||||
|
pause
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
eval "make install DESTDIR=$ROOT >> $CMP_LOG 2>> $CMP_LOG"
|
||||||
|
|
||||||
|
|
||||||
|
if [ $superuser = "YES" ] && [ -z $ROOT ]; then
|
||||||
|
eval "ldconfig > /dev/null 2> /dev/null"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ $TDM_VOICE_ONLY = 'YES' ]; then
|
||||||
|
echo -e "Compiling WANPIPE API Development Utilities ... skipped, not required.\n\n"
|
||||||
|
else
|
||||||
|
echo -n "Compiling WANPIPE API Development Utilities ..."
|
||||||
|
|
||||||
|
cd $PROD_HOME/api
|
||||||
|
|
||||||
|
if [ -f Makefile ]; then
|
||||||
|
eval "make CC=$CC SYSINC=$WANPIPE_INCLUDE_DIR >> $CMP_LOG 2>> $CMP_LOG"
|
||||||
|
if [ $? -eq 0 ]; then
|
||||||
|
echo -e "Done.\n"
|
||||||
|
else
|
||||||
|
echo -e "Failed!\n"
|
||||||
|
echo -e "\tERROR: Failed to compile WANPIPE API Tools !!!"
|
||||||
|
echo -e "\tPlease contact support at Sangoma Technologies"
|
||||||
|
echo -e "\temail: techdesk@sangoma.com"
|
||||||
|
echo -e "\tPlease include the file setup_drv_compile.log\n"
|
||||||
|
pause
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo -e "Skipped, no makefile\n"
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -d $PROD_HOME/util/wanec_client ] && [ -d $DRIVER_UPDATE_DIR/wanec ] ; then
|
if [ -d $PROD_HOME/util/wanec_client ] && [ -d $DRIVER_UPDATE_DIR/wanec ] ; then
|
||||||
echo
|
|
||||||
echo -n "Compiling WANPIPE HWEC Utilities ..."
|
echo -n "Compiling WANPIPE HWEC Utilities ..."
|
||||||
cd $PROD_HOME/util/wanec_client
|
cd $PROD_HOME/util/wanec_client
|
||||||
eval "make CC=$CC SYSINC=$WANPIPE_INCLUDE_DIR WANEC_DIR=$DRIVER_UPDATE_DIR/wanec >> $CMP_LOG 2>> $CMP_LOG "
|
eval "make CC=$CC SYSINC=$WANPIPE_INCLUDE_DIR WANEC_DIR=$DRIVER_UPDATE_DIR/wanec >> $CMP_LOG 2>> $CMP_LOG "
|
||||||
if [ $? -eq 0 ]; then
|
if [ $? -eq 0 ]; then
|
||||||
echo -e "Done.\n"
|
echo -e "Done.\n\n"
|
||||||
else
|
else
|
||||||
echo -e "Failed!\n"
|
echo -e "Failed!\n"
|
||||||
echo -e "\tERROR: Failed to compile WANPIPE HWEC Tools !!!"
|
echo -e "\tERROR: Failed to compile WANPIPE HWEC Tools !!!"
|
||||||
echo -e "\t\nPlease contact Sangoma Technologies"
|
echo -e "\tPlease contact support at Sangoma Technologies"
|
||||||
|
echo -e "\temail: techdesk@sangoma.com"
|
||||||
|
echo -e "\tPlease include the file setup_drv_compile.log\n"
|
||||||
pause
|
pause
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
echo
|
echo
|
||||||
echo -n "WANPIPE HWEC Utilities not installed"
|
echo -n "WANPIPE HWEC Utilities not installed"
|
||||||
echo
|
echo
|
||||||
fi
|
fi
|
||||||
echo -e "\tWANPIPE Environment Setup Complete !!!\n"
|
echo -e "\tWANPIPE Environment Setup Complete !!!\n"
|
||||||
pause
|
pause
|
||||||
return 0
|
return 0
|
||||||
|
@ -3100,6 +3124,7 @@ if [ -z $NONINTERACTIVE ]; then
|
||||||
enable_protocols $DEFAULT_PROTOCOLS
|
enable_protocols $DEFAULT_PROTOCOLS
|
||||||
|
|
||||||
elif [ "$response" -eq 2 ]; then
|
elif [ "$response" -eq 2 ]; then
|
||||||
|
TDM_VOICE_ONLY=YES
|
||||||
enable_protocols "TDM"
|
enable_protocols "TDM"
|
||||||
enable_protocols "AFT_TE1"
|
enable_protocols "AFT_TE1"
|
||||||
LIP_PROT=NO
|
LIP_PROT=NO
|
||||||
|
@ -3295,6 +3320,8 @@ ENDOFTEXT
|
||||||
rm -rf $DRIVER_TMP_DIR
|
rm -rf $DRIVER_TMP_DIR
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
eval "find $PROD_HOME -name \"Module.symvers*\" | xargs \rm -f"
|
||||||
|
|
||||||
\mkdir "$DRIVER_TMP_DIR"
|
\mkdir "$DRIVER_TMP_DIR"
|
||||||
\mkdir "$DRIVER_TMP_DIR/mod"
|
\mkdir "$DRIVER_TMP_DIR/mod"
|
||||||
\mkdir "$DRIVER_TMP_DIR/tmp"
|
\mkdir "$DRIVER_TMP_DIR/tmp"
|
||||||
|
@ -4391,6 +4418,10 @@ WANPIPE_OBJS=
|
||||||
echo -n "Linking Wanpipe Driver and protocols ..."
|
echo -n "Linking Wanpipe Driver and protocols ..."
|
||||||
|
|
||||||
#Link in appropriate protocols as needed.
|
#Link in appropriate protocols as needed.
|
||||||
|
if [ -e $MODSYM ]; then
|
||||||
|
eval "\rm -f $MODSYM"
|
||||||
|
fi
|
||||||
|
|
||||||
if [ "$TDM_PROT" = "YES" ]; then
|
if [ "$TDM_PROT" = "YES" ]; then
|
||||||
if [ -f $ZAPTEL_SYM_DIR/$MODSYM ]; then
|
if [ -f $ZAPTEL_SYM_DIR/$MODSYM ]; then
|
||||||
cat $ZAPTEL_SYM_DIR/$MODSYM >> $MODSYM
|
cat $ZAPTEL_SYM_DIR/$MODSYM >> $MODSYM
|
||||||
|
@ -4704,9 +4735,11 @@ ENDOFTEXT
|
||||||
function install_chan_woomera()
|
function install_chan_woomera()
|
||||||
{
|
{
|
||||||
AST_MODULES=chan_woomera.c
|
AST_MODULES=chan_woomera.c
|
||||||
if test $NONINTERACTIVE; then
|
if [ "$AST_DFLT_INSTALL_DIR" = "" ]; then
|
||||||
ast_src_dir=/usr/src/asterisk
|
ast_src_dir=/usr/src/asterisk
|
||||||
fi
|
else
|
||||||
|
ast_src_dir=$AST_DFLT_INSTALL_DIR
|
||||||
|
fi
|
||||||
|
|
||||||
cd $PROD_HOME/$SSMG_DIR
|
cd $PROD_HOME/$SSMG_DIR
|
||||||
cd sangoma_mgd.trunk
|
cd sangoma_mgd.trunk
|
||||||
|
@ -5548,18 +5581,18 @@ function tdmv_apply_zaptel_dchan_patch_old ()
|
||||||
}
|
}
|
||||||
|
|
||||||
function tdmv_apply_zaptel_chunk_patch () {
|
function tdmv_apply_zaptel_chunk_patch () {
|
||||||
lhome=`pwd`
|
lhome=`pwd`
|
||||||
TEMP=tmp
|
TEMP=tmp
|
||||||
cd $ZAPTEL_SOURCE_DIR
|
cd $ZAPTEL_SOURCE_DIR
|
||||||
echo "Applying Zaptel/Dahdi Chunk patch..."
|
echo "Applying Zaptel/Dahdi Chunk patch..."
|
||||||
echo " "
|
echo " "
|
||||||
|
|
||||||
filetopatch="zaptel.h"
|
filetopatch="zaptel.h"
|
||||||
chunkname="ZT_CHUNKSIZE"
|
chunkname="ZT_CHUNKSIZE"
|
||||||
dhname="Zaptel"
|
dhname="Zaptel"
|
||||||
isdahdi="no"
|
isdahdi="no"
|
||||||
if [ -f $ZAPTEL_SOURCE_DIR/dahdi/kernel.h ]; then
|
if [ -f $ZAPTEL_SOURCE_DIR/dahdi/kernel.h ]; then
|
||||||
filetopatch="kernel.h"
|
filetopatch="$ZAPTEL_SOURCE_DIR/dahdi/$kernel.h"
|
||||||
chunkname="DAHDI_CHUNKSIZE"
|
chunkname="DAHDI_CHUNKSIZE"
|
||||||
dhname="Dahdi"
|
dhname="Dahdi"
|
||||||
isdahdi="yes"
|
isdahdi="yes"
|
||||||
|
@ -5636,20 +5669,31 @@ function tdmv_apply_zaptel_chunk_patch () {
|
||||||
fi
|
fi
|
||||||
# for zaptel-1.2.26 or later (including Dahdi)
|
# for zaptel-1.2.26 or later (including Dahdi)
|
||||||
if [ -f Kbuild ]; then
|
if [ -f Kbuild ]; then
|
||||||
eval "cat Kbuild | sed 's/^obj-m.*+=.*wct4xx.*//g'>$TEMP 2>/dev/null "
|
eval "cat Kbuild | sed 's/^obj-.*+=.*wct4xx.*//g'>$TEMP 2>/dev/null "
|
||||||
if [ $? -ne 0 ]; then
|
if [ $? -ne 0 ]; then
|
||||||
echo " Failed to remove wct4xxp from Kbuild"
|
echo " Failed to remove wct4xxp from Kbuild"
|
||||||
exit 1
|
exit 1
|
||||||
|
|
||||||
else
|
else
|
||||||
eval "\mv -f $TEMP Kbuild"
|
eval "\mv -f $TEMP Kbuild"
|
||||||
echo " wct4xxp module removed from Kbuild successfully"
|
echo " wct4xxp module removed from Kbuild successfully"
|
||||||
zaptel_modified=1
|
zaptel_modified=1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
eval "cat Kbuild | sed 's/^obj-.*+=.*wcb4xx.*//g'>$TEMP 2>/dev/null "
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
echo " Failed to remove wcb4xxp from Kbuild"
|
||||||
|
exit 1
|
||||||
|
|
||||||
|
else
|
||||||
|
eval "\mv -f $TEMP Kbuild"
|
||||||
|
echo " wcb4xxp module removed from Kbuild successfully"
|
||||||
|
zaptel_modified=1
|
||||||
|
fi
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
cd $lhome
|
cd $lhome
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
function tdmv_apply_zaptel_echo_debug_patch ()
|
function tdmv_apply_zaptel_echo_debug_patch ()
|
||||||
|
@ -5934,6 +5978,13 @@ function tdmv_check_zaptel_udev()
|
||||||
echo " UDEV rules not used "
|
echo " UDEV rules not used "
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ $DAHDI_SUPPORT = "YES" ]; then
|
||||||
|
echo " Dahdi installed, no need to add UDEV rules"
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
#UDEV rules
|
#UDEV rules
|
||||||
if [ ! -f /etc/udev/rules.d/50-udev.rules ]; then
|
if [ ! -f /etc/udev/rules.d/50-udev.rules ]; then
|
||||||
echo " UDEV rules not found/or not used "
|
echo " UDEV rules not found/or not used "
|
||||||
|
@ -6211,7 +6262,7 @@ function find_ast_dirs ()
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo
|
echo
|
||||||
echo "Looking for Asteris/CallWeaver directory in /usr/src ..."
|
echo "Looking for Asterisk/CallWeaver directory in /usr/src ..."
|
||||||
echo "-------------------------------------------"
|
echo "-------------------------------------------"
|
||||||
if [ "$astdirs" = "" ]; then
|
if [ "$astdirs" = "" ]; then
|
||||||
astdirs=`find /usr/src -maxdepth 2 -name 'asterisk*' | xargs `
|
astdirs=`find /usr/src -maxdepth 2 -name 'asterisk*' | xargs `
|
||||||
|
@ -6654,7 +6705,7 @@ ENDOFTEXT
|
||||||
echo "Enabling the AFT TE1 Support"
|
echo "Enabling the AFT TE1 Support"
|
||||||
PROTOCOL_DEFINES="$PROTOCOL_DEFINES -DCONFIG_PRODUCT_WANPIPE_AFT -DCONFIG_PRODUCT_WANPIPE_AFT_CORE -DCONFIG_PRODUCT_WANPIPE_AFT_TE1 -DCONFIG_PRODUCT_WANPIPE_AFT_56K -DCONFIG_PRODUCT_WANPIPE_AFT_RM -DCONFIG_PRODUCT_WANPIPE_CODEC_SLINEAR_LAW -DCONFIG_PRODUCT_WANPIPE_AFT_BRI -DCONFIG_PRODUCT_WANPIPE_AFT_SERIAL -DCONFIG_PRODUCT_WANPIPE_AFT_A600 "
|
PROTOCOL_DEFINES="$PROTOCOL_DEFINES -DCONFIG_PRODUCT_WANPIPE_AFT -DCONFIG_PRODUCT_WANPIPE_AFT_CORE -DCONFIG_PRODUCT_WANPIPE_AFT_TE1 -DCONFIG_PRODUCT_WANPIPE_AFT_56K -DCONFIG_PRODUCT_WANPIPE_AFT_RM -DCONFIG_PRODUCT_WANPIPE_CODEC_SLINEAR_LAW -DCONFIG_PRODUCT_WANPIPE_AFT_BRI -DCONFIG_PRODUCT_WANPIPE_AFT_SERIAL -DCONFIG_PRODUCT_WANPIPE_AFT_A600 "
|
||||||
if [ $REL != "3.4" ]; then
|
if [ $REL != "3.4" ]; then
|
||||||
PROTOCOL_DEFINES="$PROTOCOL_DEFINES -DCONFIG_PRODUCT_WANPIPE_USB -DCONFIG_PRODUCT_WANPIPE_AFT_A700 "
|
PROTOCOL_DEFINES="$PROTOCOL_DEFINES -DCONFIG_PRODUCT_WANPIPE_USB -DCONFIG_PRODUCT_WANPIPE_AFT_A700 "
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
AFT_TE1_PROT=YES
|
AFT_TE1_PROT=YES
|
||||||
|
@ -7078,7 +7129,7 @@ function detect_rpm_build_utility()
|
||||||
function compile_aft_firmware_util()
|
function compile_aft_firmware_util()
|
||||||
{
|
{
|
||||||
lhome=`pwd`
|
lhome=`pwd`
|
||||||
\cp -f $PROD_HOME/util/wan_aftup $PROD_HOME/rpmbuild/etc/wanpipe/firmware/ -r
|
\cp -rf $PROD_HOME/util/wan_aftup $PROD_HOME/rpmbuild/etc/wanpipe/firmware/
|
||||||
|
|
||||||
cd $PROD_HOME/rpmbuild/etc/wanpipe/firmware/wan_aftup
|
cd $PROD_HOME/rpmbuild/etc/wanpipe/firmware/wan_aftup
|
||||||
echo "Compiling firmware update utilities..."
|
echo "Compiling firmware update utilities..."
|
||||||
|
@ -7150,51 +7201,72 @@ or
|
||||||
optional command extensions:
|
optional command extensions:
|
||||||
----------------------------
|
----------------------------
|
||||||
|
|
||||||
--silent : Non interactive. Run all above commands
|
--silent : Non interactive. Run all above commands
|
||||||
without user interaction. Thus default
|
without user interaction. Thus default
|
||||||
environment values are assumed such
|
environment values are assumed such
|
||||||
as:
|
as:
|
||||||
|
|
||||||
Linux source dir: $SOURCEDIR
|
Linux source dir: $SOURCEDIR
|
||||||
Architecture : uname -m
|
Architecture : uname -m
|
||||||
Kernel Image : uname -r
|
Kernel Image : uname -r
|
||||||
|
|
||||||
--builddir : Install WANPIPE package into a virtual
|
--builddir : Install WANPIPE package into a virtual
|
||||||
directory. The path must be
|
directory. The path must be
|
||||||
absolute and must exist. Default is set
|
absolute and must exist. Default is set
|
||||||
to system root( / ).
|
to system root( / ).
|
||||||
eg: --builddir=/root/wanpipe_build
|
eg: --builddir=/root/wanpipe_build
|
||||||
|
|
||||||
--with-linux: Build modules using a custom linux
|
--with-linux : Build modules using a custom linux
|
||||||
source directory. Default value is
|
source directory. Default value is
|
||||||
set to $SOURCEDIR
|
set to $SOURCEDIR
|
||||||
eg: --with-linux=/usr/src/linux-2.4.4
|
eg: --with-linux=/usr/src/linux-2.4.4
|
||||||
|
|
||||||
--arch : Build modules using a custom defined
|
--with-zaptel : Build modules using a certain verion of
|
||||||
architecture. (i686 or i586)
|
zaptel or dahdi
|
||||||
By default: (uname -m)
|
eg: --with-zaptel=/usr/src/zaptel-1.4.12
|
||||||
eg: --arch=i686
|
--with-zaptel=/usr/src/dahdi-linux-2.2.0.2
|
||||||
|
|
||||||
|
--with-asterisk : Build modules using a certain verions of
|
||||||
|
Asterisk
|
||||||
|
eg: --with-asterisk=/usr/src/asterisk-1.6.0.9
|
||||||
|
|
||||||
--split_rpms: Option to split the rpm build into
|
--arch : Build modules using a custom defined
|
||||||
util and modules package. Thus,
|
architecture. (i686 or i586)
|
||||||
splitting user space utilities and
|
By default: (uname -m)
|
||||||
kernel modules into two packages.
|
eg: --arch=i686
|
||||||
Default: one rpm package containing
|
|
||||||
both utilites and modules.
|
|
||||||
eg: ./Setup buildrpm --split_rpms
|
|
||||||
|
|
||||||
--linux-vanilla: Compile wanpipe drivers as if the
|
--split_rpms : Option to split the rpm build into
|
||||||
current linux source is a vanilla source.
|
util and modules package. Thus,
|
||||||
Used to remove the default assumption that
|
splitting user space utilities and
|
||||||
stock distribution kernels pull changes
|
kernel modules into two packages.
|
||||||
from higher linux kernel versions.
|
Default: one rpm package containing
|
||||||
|
both utilites and modules.
|
||||||
|
eg: ./Setup buildrpm --split_rpms
|
||||||
|
|
||||||
--no-gcc-debug: Remove -g option out of gcc compile argumetns.
|
--linux-vanilla : Compile wanpipe drivers as if the
|
||||||
|
current linux source is a vanilla source.
|
||||||
|
Used to remove the default assumption that
|
||||||
|
stock distribution kernels pull changes
|
||||||
|
from higher linux kernel versions.
|
||||||
|
|
||||||
|
--no-gcc-debug : Remove -g option out of gcc compile argumetns.
|
||||||
|
|
||||||
|
--noautostart : Do not install start scripts, used to overwrite
|
||||||
|
the install of these scripts when using --silent
|
||||||
|
|
||||||
|
--64bit_4GB : Use this option when installing on systems using
|
||||||
|
a 64bit kernel and 4GB of RAM or more. Wanpipe
|
||||||
|
needs to be aware that 64bit memory mapping is
|
||||||
|
used.
|
||||||
|
|
||||||
|
--dahdi-chunk : Use to increase the chunk size of Dahdi.
|
||||||
|
Drastically improves performance in TDM Voice
|
||||||
|
See the wiki for more information
|
||||||
|
|
||||||
|
|
||||||
--protocol: Option to compile in extra protocols
|
--protocol : Option to compile in extra protocols
|
||||||
that are not installed by default.
|
that are not installed by default.
|
||||||
eg: ./Setup install --protocol=<PROT>
|
eg: ./Setup install --protocol=<PROT>
|
||||||
|
|
||||||
Extra Protocols Supported:
|
Extra Protocols Supported:
|
||||||
|
|
||||||
|
@ -7255,7 +7327,7 @@ KERNEL_UNAME=`uname -r`
|
||||||
PKG_NAME=wanpipe
|
PKG_NAME=wanpipe
|
||||||
DISTR_NAME="WANPIPE"
|
DISTR_NAME="WANPIPE"
|
||||||
PROD=wanrouter
|
PROD=wanrouter
|
||||||
PROD_VER=3.4.4
|
PROD_VER=3.4.5
|
||||||
PROD_HOME=`pwd`
|
PROD_HOME=`pwd`
|
||||||
META_CONF=$PROD_HOME/$PROD.rc
|
META_CONF=$PROD_HOME/$PROD.rc
|
||||||
WAN_INTR_DIR=$PROD_HOME/interfaces
|
WAN_INTR_DIR=$PROD_HOME/interfaces
|
||||||
|
@ -7305,7 +7377,7 @@ bri_auto_install="NO"
|
||||||
setup_install_quick="NO"
|
setup_install_quick="NO"
|
||||||
MODSYM=Module.symvers
|
MODSYM=Module.symvers
|
||||||
DEFAULT_KERNEL_VERSION="NO"
|
DEFAULT_KERNEL_VERSION="NO"
|
||||||
|
TDM_VOICE_ONLY=NO #used to detect whether this is a zaptel/dahdi only install...no API compile then
|
||||||
|
|
||||||
echo > $CMP_LOG
|
echo > $CMP_LOG
|
||||||
echo "WANPIPE DRIVER COMPILE LOG" >> $CMP_LOG
|
echo "WANPIPE DRIVER COMPILE LOG" >> $CMP_LOG
|
||||||
|
@ -7692,6 +7764,25 @@ if [ "$PKG_NAME" != "wanpipe-lite" ]; then
|
||||||
set_zaptel_source_dir
|
set_zaptel_source_dir
|
||||||
|
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
--with-asterisk*)
|
||||||
|
AST_DFLT_INSTALL_DIR=`echo $arg | cut -d'=' -f2`;
|
||||||
|
if [ "$AST_DFLT_INSTALL_DIR" = "" ]; then
|
||||||
|
echo "Error invalid --with-asterisk option";
|
||||||
|
exit 1;
|
||||||
|
fi
|
||||||
|
if [ ! -d "$AST_DFLT_INSTALL_DIR" ]; then
|
||||||
|
echo "Error: Asterisk source directory not found: $AST_DFLT_INSTALL_DIR";
|
||||||
|
exit 1;
|
||||||
|
fi
|
||||||
|
if [ ! -f "$AST_DFLT_INSTALL_DIR/Makefile" ]; then
|
||||||
|
echo "Error: Invalid Asterisk source found in $AST_DFLT_INSTALL_DIR";
|
||||||
|
exit 1;
|
||||||
|
fi
|
||||||
|
AST_PATH_OP="YES";
|
||||||
|
echo "Asterisk path defined as: $AST_DFLT_INSTALL_DIR"
|
||||||
|
|
||||||
|
;;
|
||||||
|
|
||||||
--no-zaptel-compile*)
|
--no-zaptel-compile*)
|
||||||
ZAPTEL_COMPILE_DISABLE="YES";
|
ZAPTEL_COMPILE_DISABLE="YES";
|
||||||
|
@ -7770,16 +7861,17 @@ if [ "$PKG_NAME" != "wanpipe-lite" ]; then
|
||||||
--gz-modules)
|
--gz-modules)
|
||||||
GZ_MODULES="YES";
|
GZ_MODULES="YES";
|
||||||
;;
|
;;
|
||||||
--zap-chunk*)
|
|
||||||
|
--zap-chunk* | --dahdi-chunk*)
|
||||||
ZAP_CHUNK=`echo $arg | cut -d'=' -f2`;
|
ZAP_CHUNK=`echo $arg | cut -d'=' -f2`;
|
||||||
|
|
||||||
if [ $ZAP_CHUNK != "8" ] && [ $ZAP_CHUNK != "16" ] && [ $ZAP_CHUNK != "40" ] && [ $ZAP_CHUNK != "80" ]; then
|
if [ $ZAP_CHUNK != "8" ] && [ $ZAP_CHUNK != "16" ] && [ $ZAP_CHUNK != "40" ] && [ $ZAP_CHUNK != "80" ]; then
|
||||||
echo "Error: Invalid Zaptel Chunk size"
|
echo "Error: Invalid Dahdi/Zaptel Chunk size"
|
||||||
exit 1;
|
exit 1;
|
||||||
else
|
else
|
||||||
echo "WARNING: Zaptel custom chunk option is EXPERIMENTAL"
|
echo "WARNING:"
|
||||||
echo "The wct4xxp module will be removed from your system"
|
echo "The wct4xxp module will be removed from your system"
|
||||||
getyn "Do you want to use custom Zaptel chunk size of $ZAP_CHUNK"
|
getyn "Do you want to use custom Dahdi/Zaptel chunk size of $ZAP_CHUNK"
|
||||||
if [ $? -eq 0 ]; then
|
if [ $? -eq 0 ]; then
|
||||||
ZAP_CHUNK_OP="YES"
|
ZAP_CHUNK_OP="YES"
|
||||||
else
|
else
|
||||||
|
|
|
@ -61,38 +61,9 @@ int wanpipe_hdlc_decode (wanpipe_hdlc_engine_t *hdlc_eng,
|
||||||
unsigned char *buf, int len)
|
unsigned char *buf, int len)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
int word_len;
|
|
||||||
int found=1;
|
|
||||||
int gotdata=0;
|
int gotdata=0;
|
||||||
|
|
||||||
|
|
||||||
word_len=len-(len%4);
|
|
||||||
/* Before decoding the packet, make sure that the current
|
|
||||||
* bit stream contains data. Decoding is very expensive,
|
|
||||||
* thus perform word (32bit) comparision test */
|
|
||||||
|
|
||||||
|
|
||||||
#if 0
|
|
||||||
for (i=0;i<word_len;i+=4){
|
|
||||||
if ((*(unsigned int*)&buf[i]) != *(unsigned int*)buf){
|
|
||||||
found=1;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if ((len%4) && !found){
|
|
||||||
for (i=word_len;i<len;i++){
|
|
||||||
if (buf[i]!=buf[0]){
|
|
||||||
found=1;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Data found proceed to decode
|
|
||||||
* the bitstream and pull out data packets */
|
|
||||||
if (found){
|
|
||||||
wanpipe_hdlc_decoder_t *hdlc_decoder = &hdlc_eng->decoder;
|
wanpipe_hdlc_decoder_t *hdlc_decoder = &hdlc_eng->decoder;
|
||||||
|
|
||||||
for (i=0; i<len; i++){
|
for (i=0; i<len; i++){
|
||||||
|
@ -107,7 +78,6 @@ int wanpipe_hdlc_decode (wanpipe_hdlc_engine_t *hdlc_eng,
|
||||||
hdlc_decoder->stats.frame_overflow++;
|
hdlc_decoder->stats.frame_overflow++;
|
||||||
init_hdlc_decoder(hdlc_decoder);
|
init_hdlc_decoder(hdlc_decoder);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
return gotdata;
|
return gotdata;
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,143 @@
|
||||||
|
Automake Init Done
|
||||||
|
|
||||||
|
Please run
|
||||||
|
-> ./configure --prefix=/usr
|
||||||
|
-> make
|
||||||
|
-> make install
|
||||||
|
checking for a BSD-compatible install... /usr/bin/install -c
|
||||||
|
checking whether build environment is sane... yes
|
||||||
|
checking for gawk... gawk
|
||||||
|
checking whether make sets $(MAKE)... yes
|
||||||
|
checking for gcc... gcc
|
||||||
|
checking for C compiler default output file name... a.out
|
||||||
|
checking whether the C compiler works... yes
|
||||||
|
checking whether we are cross compiling... no
|
||||||
|
checking for suffix of executables...
|
||||||
|
checking for suffix of object files... o
|
||||||
|
checking whether we are using the GNU C compiler... yes
|
||||||
|
checking whether gcc accepts -g... yes
|
||||||
|
checking for gcc option to accept ANSI C... none needed
|
||||||
|
checking for style of include used by make... GNU
|
||||||
|
checking dependency style of gcc... gcc3
|
||||||
|
checking build system type... i686-redhat-linux-gnu
|
||||||
|
checking host system type... i686-redhat-linux-gnu
|
||||||
|
checking for a sed that does not truncate output... /bin/sed
|
||||||
|
checking for egrep... grep -E
|
||||||
|
checking for ld used by gcc... /usr/bin/ld
|
||||||
|
checking if the linker (/usr/bin/ld) is GNU ld... yes
|
||||||
|
checking for /usr/bin/ld option to reload object files... -r
|
||||||
|
checking for BSD-compatible nm... /usr/bin/nm -B
|
||||||
|
checking whether ln -s works... yes
|
||||||
|
checking how to recognise dependent libraries... pass_all
|
||||||
|
checking how to run the C preprocessor... gcc -E
|
||||||
|
checking for ANSI C header files... yes
|
||||||
|
checking for sys/types.h... yes
|
||||||
|
checking for sys/stat.h... yes
|
||||||
|
checking for stdlib.h... yes
|
||||||
|
checking for string.h... yes
|
||||||
|
checking for memory.h... yes
|
||||||
|
checking for strings.h... yes
|
||||||
|
checking for inttypes.h... yes
|
||||||
|
checking for stdint.h... yes
|
||||||
|
checking for unistd.h... yes
|
||||||
|
checking dlfcn.h usability... yes
|
||||||
|
checking dlfcn.h presence... yes
|
||||||
|
checking for dlfcn.h... yes
|
||||||
|
checking for g++... g++
|
||||||
|
checking whether we are using the GNU C++ compiler... yes
|
||||||
|
checking whether g++ accepts -g... yes
|
||||||
|
checking dependency style of g++... gcc3
|
||||||
|
checking how to run the C++ preprocessor... g++ -E
|
||||||
|
checking for g77... no
|
||||||
|
checking for f77... no
|
||||||
|
checking for xlf... no
|
||||||
|
checking for frt... no
|
||||||
|
checking for pgf77... no
|
||||||
|
checking for fort77... no
|
||||||
|
checking for fl32... no
|
||||||
|
checking for af77... no
|
||||||
|
checking for f90... no
|
||||||
|
checking for xlf90... no
|
||||||
|
checking for pgf90... no
|
||||||
|
checking for epcf90... no
|
||||||
|
checking for f95... f95
|
||||||
|
checking whether we are using the GNU Fortran 77 compiler... yes
|
||||||
|
checking whether f95 accepts -g... yes
|
||||||
|
checking the maximum length of command line arguments... 32768
|
||||||
|
checking command to parse /usr/bin/nm -B output from gcc object... ok
|
||||||
|
checking for objdir... .libs
|
||||||
|
checking for ar... ar
|
||||||
|
checking for ranlib... ranlib
|
||||||
|
checking for strip... strip
|
||||||
|
checking if gcc supports -fno-rtti -fno-exceptions... no
|
||||||
|
checking for gcc option to produce PIC... -fPIC
|
||||||
|
checking if gcc PIC flag -fPIC works... yes
|
||||||
|
checking if gcc static flag -static works... yes
|
||||||
|
checking if gcc supports -c -o file.o... yes
|
||||||
|
checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes
|
||||||
|
checking whether -lc should be explicitly linked in... no
|
||||||
|
checking dynamic linker characteristics... GNU/Linux ld.so
|
||||||
|
checking how to hardcode library paths into programs... immediate
|
||||||
|
checking whether stripping libraries is possible... yes
|
||||||
|
checking if libtool supports shared libraries... yes
|
||||||
|
checking whether to build shared libraries... yes
|
||||||
|
checking whether to build static libraries... yes
|
||||||
|
configure: creating libtool
|
||||||
|
appending configuration tag "CXX" to libtool
|
||||||
|
checking for ld used by g++... /usr/bin/ld
|
||||||
|
checking if the linker (/usr/bin/ld) is GNU ld... yes
|
||||||
|
checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes
|
||||||
|
checking for g++ option to produce PIC... -fPIC
|
||||||
|
checking if g++ PIC flag -fPIC works... yes
|
||||||
|
checking if g++ static flag -static works... yes
|
||||||
|
checking if g++ supports -c -o file.o... yes
|
||||||
|
checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes
|
||||||
|
checking dynamic linker characteristics... GNU/Linux ld.so
|
||||||
|
checking how to hardcode library paths into programs... immediate
|
||||||
|
appending configuration tag "F77" to libtool
|
||||||
|
checking if libtool supports shared libraries... yes
|
||||||
|
checking whether to build shared libraries... yes
|
||||||
|
checking whether to build static libraries... yes
|
||||||
|
checking for f95 option to produce PIC... -fPIC
|
||||||
|
checking if f95 PIC flag -fPIC works... yes
|
||||||
|
checking if f95 static flag -static works... yes
|
||||||
|
checking if f95 supports -c -o file.o... yes
|
||||||
|
checking whether the f95 linker (/usr/bin/ld) supports shared libraries... yes
|
||||||
|
checking dynamic linker characteristics... GNU/Linux ld.so
|
||||||
|
checking how to hardcode library paths into programs... immediate
|
||||||
|
checking for ar... ar
|
||||||
|
checking fcntl.h usability... yes
|
||||||
|
checking fcntl.h presence... yes
|
||||||
|
checking for fcntl.h... yes
|
||||||
|
checking netinet/in.h usability... yes
|
||||||
|
checking netinet/in.h presence... yes
|
||||||
|
checking for netinet/in.h... yes
|
||||||
|
checking for stdlib.h... (cached) yes
|
||||||
|
checking for string.h... (cached) yes
|
||||||
|
checking sys/ioctl.h usability... yes
|
||||||
|
checking sys/ioctl.h presence... yes
|
||||||
|
checking for sys/ioctl.h... yes
|
||||||
|
checking sys/socket.h usability... yes
|
||||||
|
checking sys/socket.h presence... yes
|
||||||
|
checking for sys/socket.h... yes
|
||||||
|
checking sys/time.h usability... yes
|
||||||
|
checking sys/time.h presence... yes
|
||||||
|
checking for sys/time.h... yes
|
||||||
|
checking for unistd.h... (cached) yes
|
||||||
|
checking math.h usability... yes
|
||||||
|
checking math.h presence... yes
|
||||||
|
checking for math.h... yes
|
||||||
|
checking whether time.h and sys/time.h may both be included... yes
|
||||||
|
checking sys/select.h usability... yes
|
||||||
|
checking sys/select.h presence... yes
|
||||||
|
checking for sys/select.h... yes
|
||||||
|
checking for sys/socket.h... (cached) yes
|
||||||
|
checking types of arguments for select... int,fd_set *,struct timeval *
|
||||||
|
checking for gettimeofday... yes
|
||||||
|
checking for memset... yes
|
||||||
|
checking for select... yes
|
||||||
|
checking for socket... yes
|
||||||
|
configure: creating ./config.status
|
||||||
|
config.status: creating Makefile
|
||||||
|
config.status: creating config.h
|
||||||
|
config.status: executing depfiles commands
|
|
@ -0,0 +1,51 @@
|
||||||
|
Tue Jul 21 17:44:15 EDT 2009
|
||||||
|
IF => w1g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w2g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w3g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w4g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w5g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w6g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w7g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w8g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w9g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w10g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w11g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w12g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w13g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w14g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w15g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w16g1 Number of receiver overrun errors: 0
|
||||||
|
Wed Jul 22 15:50:00 EDT 2009
|
||||||
|
IF => w1g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w2g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w3g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w4g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w5g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w6g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w7g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w8g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w9g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w10g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w11g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w12g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w13g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w14g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w15g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w16g1 Number of receiver overrun errors: 0
|
||||||
|
Wed Jul 22 15:50:11 EDT 2009
|
||||||
|
IF => w1g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w2g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w3g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w4g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w5g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w6g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w7g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w8g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w9g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w10g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w11g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w12g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w13g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w14g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w15g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w16g1 Number of receiver overrun errors: 0
|
|
@ -24,6 +24,7 @@ TARGETS += aft_tdm_voice_api_dtmf
|
||||||
TARGETS += aft_tdm_voice_api_rm_events
|
TARGETS += aft_tdm_voice_api_rm_events
|
||||||
#TARGETS += aft_tdm_voice_api_rm_dtmf
|
#TARGETS += aft_tdm_voice_api_rm_dtmf
|
||||||
#TARGETS += aft_tdm_voice_api_rxhook
|
#TARGETS += aft_tdm_voice_api_rxhook
|
||||||
|
TARGETS = aft_tdm_hdlc_test
|
||||||
|
|
||||||
####### RULES ################################################################
|
####### RULES ################################################################
|
||||||
|
|
||||||
|
|
|
@ -284,7 +284,7 @@ void process_con_rx(void)
|
||||||
|
|
||||||
|
|
||||||
/* Rx packet recevied OK
|
/* Rx packet recevied OK
|
||||||
* Each rx packet will contain 16 bytes of
|
* Each rx packet will contain sizeof(wp_tdm_api_tx_hdr_t) bytes of
|
||||||
* rx header, that must be removed. The
|
* rx header, that must be removed. The
|
||||||
* first byte of the 16 byte header will
|
* first byte of the 16 byte header will
|
||||||
* indicate an error condition.
|
* indicate an error condition.
|
||||||
|
@ -451,7 +451,7 @@ void process_con_tx(timeslot_t *slot)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
printf("%s: Tx Starting to write on sock %i data (0x%X) f=%x l=%x hdr_sz=%i\n",
|
printf("%s: Tx Starting to write on sock %i data (0x%X) f=%x l=%x hdr_sz=%i\n",
|
||||||
slot->if_name,slot->sock,slot->data,Tx_data[16],Tx_data[Tx_hdlc_len+sizeof(wp_tdm_api_tx_hdr_t)-1],
|
slot->if_name,slot->sock,slot->data,Tx_data[sizeof(wp_tdm_api_tx_hdr_t)],Tx_data[Tx_hdlc_len+sizeof(wp_tdm_api_tx_hdr_t)-1],
|
||||||
sizeof(wp_tdm_api_tx_hdr_t));
|
sizeof(wp_tdm_api_tx_hdr_t));
|
||||||
|
|
||||||
|
|
||||||
|
@ -479,11 +479,11 @@ void process_con_tx(timeslot_t *slot)
|
||||||
printf("TX DATA ORIG: Len=%i\n",Tx_hdlc_len);
|
printf("TX DATA ORIG: Len=%i\n",Tx_hdlc_len);
|
||||||
print_packet(&Tx_data[sizeof(wp_tdm_api_tx_hdr_t)],Tx_hdlc_len);
|
print_packet(&Tx_data[sizeof(wp_tdm_api_tx_hdr_t)],Tx_hdlc_len);
|
||||||
#endif
|
#endif
|
||||||
wanpipe_hdlc_encode(hdlc_eng,&Tx_data[16],Tx_hdlc_len,&Tx_hdlc_data[16],&Tx_encoded_hdlc_len,&next_idle);
|
wanpipe_hdlc_encode(hdlc_eng,&Tx_data[sizeof(wp_tdm_api_tx_hdr_t)],Tx_hdlc_len,&Tx_hdlc_data[sizeof(wp_tdm_api_tx_hdr_t)],&Tx_encoded_hdlc_len,&next_idle);
|
||||||
if (Tx_encoded_hdlc_len < (max_tx_len*2)){
|
if (Tx_encoded_hdlc_len < (max_tx_len*2)){
|
||||||
int j;
|
int j;
|
||||||
for (j=0;j<((max_tx_len*2) - Tx_encoded_hdlc_len);j++){
|
for (j=0;j<((max_tx_len*2) - Tx_encoded_hdlc_len);j++){
|
||||||
Tx_hdlc_data[16+Tx_encoded_hdlc_len+j]=next_idle;
|
Tx_hdlc_data[sizeof(wp_tdm_api_tx_hdr_t)+Tx_encoded_hdlc_len+j]=next_idle;
|
||||||
}
|
}
|
||||||
Tx_encoded_hdlc_len+=j;
|
Tx_encoded_hdlc_len+=j;
|
||||||
}
|
}
|
||||||
|
@ -508,7 +508,7 @@ void process_con_tx(timeslot_t *slot)
|
||||||
#if 0
|
#if 0
|
||||||
printf("Data %i\n",Tx_hdlc_len);
|
printf("Data %i\n",Tx_hdlc_len);
|
||||||
for (i=0;i<Tx_hdlc_len;i++){
|
for (i=0;i<Tx_hdlc_len;i++){
|
||||||
printf(" 0x%X",Tx_hdlc_data[16+i]);
|
printf(" 0x%X",Tx_hdlc_data[sizeof(wp_tdm_api_tx_hdr_t)+i]);
|
||||||
}
|
}
|
||||||
printf("\n");
|
printf("\n");
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -0,0 +1,85 @@
|
||||||
|
Tue Jul 21 17:45:57 EDT 2009
|
||||||
|
IF => w1g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w2g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w3g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w4g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w5g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w6g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w7g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w8g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w9g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w10g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w11g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w12g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w13g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w14g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w15g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w16g1 Number of receiver overrun errors: 0
|
||||||
|
Wed Jul 22 15:52:40 EDT 2009
|
||||||
|
IF => w1g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w2g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w3g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w4g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w5g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w6g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w7g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w8g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w9g1 Number of receiver overrun errors: 1
|
||||||
|
IF => w10g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w11g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w12g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w13g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w14g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w15g1 Number of receiver overrun errors: 1
|
||||||
|
IF => w16g1 Number of receiver overrun errors: 0
|
||||||
|
Wed Jul 22 15:52:43 EDT 2009
|
||||||
|
IF => w1g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w2g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w3g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w4g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w5g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w6g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w7g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w8g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w9g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w10g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w11g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w12g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w13g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w14g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w15g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w16g1 Number of receiver overrun errors: 0
|
||||||
|
Wed Jul 22 15:53:38 EDT 2009
|
||||||
|
IF => w1g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w2g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w3g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w4g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w5g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w6g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w7g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w8g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w9g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w10g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w11g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w12g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w13g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w14g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w15g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w16g1 Number of receiver overrun errors: 0
|
||||||
|
Wed Jul 22 15:54:36 EDT 2009
|
||||||
|
IF => w1g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w2g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w3g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w4g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w5g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w6g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w7g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w8g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w9g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w10g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w11g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w12g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w13g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w14g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w15g1 Number of receiver overrun errors: 0
|
||||||
|
IF => w16g1 Number of receiver overrun errors: 0
|
|
@ -1,5 +1,5 @@
|
||||||
Package: wanpipe
|
Package: wanpipe
|
||||||
Version: 3.4.4-0
|
Version: 3.4.5-0
|
||||||
Section: networking
|
Section: networking
|
||||||
Priority: optional
|
Priority: optional
|
||||||
Architecture: all
|
Architecture: all
|
||||||
|
|
|
@ -95,6 +95,9 @@ static __inline u32 AFT_PORT_REG(sdla_t *card, u32 reg)
|
||||||
|
|
||||||
#define AFT_WDT_4TO8_CTRL_REG 0x5C
|
#define AFT_WDT_4TO8_CTRL_REG 0x5C
|
||||||
|
|
||||||
|
#define AFT_FREE_RUN_TIMER_CTRL_REG 0x98
|
||||||
|
|
||||||
|
#define AFT_FREE_RUN_TIMER_PENDING_REG 0x9C
|
||||||
|
|
||||||
/*=================================================
|
/*=================================================
|
||||||
A104 CHIP CFG REGISTERS
|
A104 CHIP CFG REGISTERS
|
||||||
|
@ -177,6 +180,8 @@ static __inline u32 AFT_PORT_REG(sdla_t *card, u32 reg)
|
||||||
# define AFT_CHIPCFG_P3_WDT_INTR_BIT 20
|
# define AFT_CHIPCFG_P3_WDT_INTR_BIT 20
|
||||||
# define AFT_CHIPCFG_P4_WDT_INTR_BIT 21
|
# define AFT_CHIPCFG_P4_WDT_INTR_BIT 21
|
||||||
|
|
||||||
|
# define AFT_CHIPCFG_FREE_RUN_INTR_BIT 20 /* AFT FREE Run timer bit */
|
||||||
|
|
||||||
# define AFT_CHIPCFG_A108_EC_INTER_STAT_BIT 21 /* A108 */
|
# define AFT_CHIPCFG_A108_EC_INTER_STAT_BIT 21 /* A108 */
|
||||||
|
|
||||||
# define AFT_CHIPCFG_FE_INTR_STAT_BIT 22
|
# define AFT_CHIPCFG_FE_INTR_STAT_BIT 22
|
||||||
|
@ -843,6 +848,25 @@ aft_dmachain_enable_tdmv_and_mtu_size(u32 *reg, int size)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*======================================================
|
||||||
|
* FREE RUNNING TIMER
|
||||||
|
*
|
||||||
|
* AFT_FREE_RUN_TIMER_CTRL_REG
|
||||||
|
*=====================================================*/
|
||||||
|
|
||||||
|
#define AFT_FREE_RUN_TIMER_DIVIDER_SHIFT 0
|
||||||
|
#define AFT_FREE_RUN_TIMER_DIVIDER_MASK 0x3F
|
||||||
|
|
||||||
|
#define AFT_FREE_RUN_TIMER_INTER_ENABLE_BIT 7
|
||||||
|
|
||||||
|
static __inline void
|
||||||
|
aft_free_running_timer_ctrl_set(u32 *reg, u32 divider)
|
||||||
|
{
|
||||||
|
*reg&=~(AFT_FREE_RUN_TIMER_DIVIDER_MASK<<AFT_FREE_RUN_TIMER_DIVIDER_SHIFT);
|
||||||
|
*reg|=(divider&AFT_FREE_RUN_TIMER_DIVIDER_MASK)<<AFT_FREE_RUN_TIMER_DIVIDER_SHIFT;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*======================================================
|
/*======================================================
|
||||||
* PER PORT
|
* PER PORT
|
||||||
*
|
*
|
||||||
|
@ -1979,6 +2003,8 @@ typedef struct private_area
|
||||||
unsigned char label[WAN_IF_LABEL_SZ+1];
|
unsigned char label[WAN_IF_LABEL_SZ+1];
|
||||||
|
|
||||||
unsigned char tdm_span_voice_api;
|
unsigned char tdm_span_voice_api;
|
||||||
|
unsigned char tx_seq_char;
|
||||||
|
unsigned char rx_seq_char;
|
||||||
|
|
||||||
}private_area_t;
|
}private_area_t;
|
||||||
|
|
||||||
|
@ -2002,6 +2028,56 @@ aft_tx_dma_chain_chain_len(private_area_t *chan)
|
||||||
return chain_diff;
|
return chain_diff;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#if defined WANPIPE_PERFORMANCE_DEBUG
|
||||||
|
#warning "WANPIPE_PERFORMANCE_DEBUG Enabled"
|
||||||
|
static __inline int aft_calc_elapsed(struct timeval *started, struct timeval *ended)
|
||||||
|
{
|
||||||
|
#if 0
|
||||||
|
return (((ended->tv_sec * 1000) + ended->tv_usec / 1000) -
|
||||||
|
((started->tv_sec * 1000) + started->tv_usec / 1000));
|
||||||
|
#else
|
||||||
|
return ended->tv_usec - started->tv_usec;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
static int __inline aft_timing_start(sdla_t * card)
|
||||||
|
{
|
||||||
|
#if 1
|
||||||
|
#if defined(__LINUX__)
|
||||||
|
do_gettimeofday(&card->timing_tv);
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static int __inline aft_timing_stop_calculate_elapsed(sdla_t * card)
|
||||||
|
{
|
||||||
|
#if 1
|
||||||
|
#if defined(__LINUX__)
|
||||||
|
int elapsed=0;
|
||||||
|
struct timeval current_tv;
|
||||||
|
do_gettimeofday(¤t_tv);
|
||||||
|
elapsed=aft_calc_elapsed(&card->timing_tv,¤t_tv);
|
||||||
|
if (elapsed > card->wandev.stats.rx_errors) {
|
||||||
|
card->wandev.stats.rx_errors=elapsed;
|
||||||
|
}
|
||||||
|
if (elapsed > 1000) {
|
||||||
|
DEBUG_EVENT("%s: Error: Timeout is huge %i\n",card->devname, elapsed);
|
||||||
|
}
|
||||||
|
if (card->wandev.stats.rx_errors > 2500) {
|
||||||
|
card->wandev.stats.rx_errors=0;
|
||||||
|
}
|
||||||
|
|
||||||
|
card->wandev.stats.tx_errors=elapsed;
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
void aft_free_logical_channel_num (sdla_t *card, int logic_ch);
|
void aft_free_logical_channel_num (sdla_t *card, int logic_ch);
|
||||||
void aft_dma_max_logic_ch(sdla_t *card);
|
void aft_dma_max_logic_ch(sdla_t *card);
|
||||||
void aft_fe_intr_ctrl(sdla_t *card, int status);
|
void aft_fe_intr_ctrl(sdla_t *card, int status);
|
||||||
|
|
|
@ -158,6 +158,7 @@ typedef struct sdla_remora_cfg_ {
|
||||||
|
|
||||||
int fxs_ringampl;
|
int fxs_ringampl;
|
||||||
unsigned int rm_mode; /*Analog Operation mode: default or tapping */
|
unsigned int rm_mode; /*Analog Operation mode: default or tapping */
|
||||||
|
u_int8_t fake_polarity;
|
||||||
} sdla_remora_cfg_t;
|
} sdla_remora_cfg_t;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
|
|
|
@ -771,7 +771,8 @@ enum {
|
||||||
AFT_TDM_GLOBAL_ISR,
|
AFT_TDM_GLOBAL_ISR,
|
||||||
AFT_TDM_RING_BUF,
|
AFT_TDM_RING_BUF,
|
||||||
AFT_TDM_FAST_ISR,
|
AFT_TDM_FAST_ISR,
|
||||||
AFT_TDM_SW_RING_BUF
|
AFT_TDM_SW_RING_BUF,
|
||||||
|
AFT_TDM_FREE_RUN_ISR
|
||||||
};
|
};
|
||||||
|
|
||||||
typedef struct
|
typedef struct
|
||||||
|
@ -980,11 +981,16 @@ typedef struct sdla
|
||||||
|
|
||||||
/* SDLA TDMV Dummy interface */
|
/* SDLA TDMV Dummy interface */
|
||||||
#if defined(CONFIG_PRODUCT_WANPIPE_TDM_VOICE)
|
#if defined(CONFIG_PRODUCT_WANPIPE_TDM_VOICE)
|
||||||
void* sdla_tdmv_dummy;
|
void* sdla_tdmv_dummy;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
unsigned char wp_debug_chan_seq;
|
unsigned char wp_debug_chan_seq;
|
||||||
|
|
||||||
|
#if defined(WANPIPE_PERFORMANCE_DEBUG)
|
||||||
|
wan_ticks_t debug_timeout;
|
||||||
|
struct timeval timing_tv;
|
||||||
|
#endif
|
||||||
|
|
||||||
} sdla_t;
|
} sdla_t;
|
||||||
|
|
||||||
/****** Public Functions ****************************************************/
|
/****** Public Functions ****************************************************/
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
#define WANPIPE_COMPANY "Sangoma Technologies Inc"
|
#define WANPIPE_COMPANY "Sangoma Technologies Inc"
|
||||||
|
|
||||||
/********** LINUX **********/
|
/********** LINUX **********/
|
||||||
#define WANPIPE_VERSION "3.4.4"
|
#define WANPIPE_VERSION "3.4.5"
|
||||||
#define WANPIPE_SUB_VERSION "0"
|
#define WANPIPE_SUB_VERSION "0"
|
||||||
#define WANPIPE_VERSION_BETA 0
|
#define WANPIPE_VERSION_BETA 0
|
||||||
#define WANPIPE_LITE_VERSION "1.1.1"
|
#define WANPIPE_LITE_VERSION "1.1.1"
|
||||||
|
|
|
@ -90,6 +90,7 @@
|
||||||
|
|
||||||
#define ZT_LAW_ALAW DAHDI_LAW_ALAW
|
#define ZT_LAW_ALAW DAHDI_LAW_ALAW
|
||||||
#define ZT_LAW_MULAW DAHDI_LAW_MULAW
|
#define ZT_LAW_MULAW DAHDI_LAW_MULAW
|
||||||
|
#define ZT_XLAW DAHDI_XLAW
|
||||||
|
|
||||||
#define ZT_MAINT_REMOTELOOP DAHDI_MAINT_REMOTELOOP
|
#define ZT_MAINT_REMOTELOOP DAHDI_MAINT_REMOTELOOP
|
||||||
#define ZT_MAINT_NONE DAHDI_MAINT_NONE
|
#define ZT_MAINT_NONE DAHDI_MAINT_NONE
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
kernel//usr/src/wanpipe-3.4.2.16/patches/kdrivers/src/net/sdladrv.ko
|
kernel//root/development/3.4/wanpipe-3.4.4.1/patches/kdrivers/src/net/sdladrv.ko
|
||||||
kernel//usr/src/wanpipe-3.4.2.16/patches/kdrivers/src/net/wanrouter.ko
|
kernel//root/development/3.4/wanpipe-3.4.4.1/patches/kdrivers/src/net/wanrouter.ko
|
||||||
kernel//usr/src/wanpipe-3.4.2.16/patches/kdrivers/src/net/wanpipe.ko
|
kernel//root/development/3.4/wanpipe-3.4.4.1/patches/kdrivers/src/net/wanpipe.ko
|
||||||
kernel//usr/src/wanpipe-3.4.2.16/patches/kdrivers/src/net/wanpipe_syncppp.ko
|
kernel//root/development/3.4/wanpipe-3.4.4.1/patches/kdrivers/src/net/wanpipe_syncppp.ko
|
||||||
kernel//usr/src/wanpipe-3.4.2.16/patches/kdrivers/src/net/af_wanpipe.ko
|
kernel//root/development/3.4/wanpipe-3.4.4.1/patches/kdrivers/src/net/af_wanpipe.ko
|
||||||
kernel//usr/src/wanpipe-3.4.2.16/patches/kdrivers/src/net/wanec.ko
|
kernel//root/development/3.4/wanpipe-3.4.4.1/patches/kdrivers/src/net/wanec.ko
|
||||||
kernel//usr/src/wanpipe-3.4.2.16/patches/kdrivers/src/net/wan_aften.ko
|
kernel//root/development/3.4/wanpipe-3.4.4.1/patches/kdrivers/src/net/wan_aften.ko
|
||||||
|
|
|
@ -2620,15 +2620,32 @@ sdla_ds_te1_intr_ctrl(sdla_fe_t *fe, int dummy, u_int8_t type, u_int8_t mode, un
|
||||||
mask |= (BIT_RIM1_RLOSC | BIT_RIM1_RLOSD);
|
mask |= (BIT_RIM1_RLOSC | BIT_RIM1_RLOSD);
|
||||||
#endif
|
#endif
|
||||||
WRITE_REG(REG_RIM1, mask);
|
WRITE_REG(REG_RIM1, mask);
|
||||||
|
WRITE_REG(REG_RLS1, 0xFF);
|
||||||
|
|
||||||
/* In-band loop codes */
|
/* In-band loop codes */
|
||||||
WRITE_REG(REG_RIM3, BIT_RIM3_T1_LDNC|BIT_RIM3_T1_LUPC|BIT_RIM3_T1_LDND|BIT_RIM3_T1_LUPD);
|
if (IS_T1_FEMEDIA(fe)){
|
||||||
|
mask = BIT_RIM3_T1_LDNC|BIT_RIM3_T1_LDND |
|
||||||
|
BIT_RIM3_T1_LUPC|BIT_RIM3_T1_LUPD;
|
||||||
|
WRITE_REG(REG_RIM3, mask);
|
||||||
|
WRITE_REG(REG_RLS3, 0xFF);
|
||||||
|
}
|
||||||
|
|
||||||
//WRITE_REG(REG_RIM4, BIT_RIM4_TIMER);
|
//WRITE_REG(REG_RIM4, BIT_RIM4_TIMER);
|
||||||
WRITE_REG(REG_RIM7, BIT_RIM7_T1_BC | BIT_RIM7_T1_BD);
|
WRITE_REG(REG_RLS4, 0xFF);
|
||||||
|
|
||||||
|
if (IS_T1_FEMEDIA(fe)){
|
||||||
|
mask = BIT_RIM7_T1_BC | BIT_RIM7_T1_BD;
|
||||||
|
/* mask |= BIT_RIM7_T1_RSLC96; */
|
||||||
|
WRITE_REG(REG_RIM7, mask);
|
||||||
|
}
|
||||||
|
WRITE_REG(REG_RLS7, 0xFF);
|
||||||
|
|
||||||
WRITE_REG(REG_LSIMR,
|
WRITE_REG(REG_LSIMR,
|
||||||
BIT_LSIMR_OCCIM | BIT_LSIMR_OCDIM |
|
BIT_LSIMR_OCCIM | BIT_LSIMR_OCDIM |
|
||||||
BIT_LSIMR_SCCIM | BIT_LSIMR_SCCIM |
|
BIT_LSIMR_SCCIM | BIT_LSIMR_SCCIM |
|
||||||
BIT_LSIMR_LOSCIM | BIT_LSIMR_LOSDIM |
|
BIT_LSIMR_LOSCIM | BIT_LSIMR_LOSDIM |
|
||||||
BIT_LSIMR_JALTCIM | BIT_LSIMR_JALTSIM);
|
BIT_LSIMR_JALTCIM | BIT_LSIMR_JALTSIM);
|
||||||
|
WRITE_REG(REG_LLSR, 0xFF);
|
||||||
}else{
|
}else{
|
||||||
WRITE_REG(REG_RIM1, 0x00);
|
WRITE_REG(REG_RIM1, 0x00);
|
||||||
WRITE_REG(REG_RIM2, 0x00);
|
WRITE_REG(REG_RIM2, 0x00);
|
||||||
|
@ -2690,7 +2707,6 @@ sdla_ds_te1_intr_ctrl(sdla_fe_t *fe, int dummy, u_int8_t type, u_int8_t mode, un
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static int sdla_ds_te1_framer_rx_intr(sdla_fe_t *fe, int silent)
|
static int sdla_ds_te1_framer_rx_intr(sdla_fe_t *fe, int silent)
|
||||||
{
|
{
|
||||||
unsigned char istatus;
|
unsigned char istatus;
|
||||||
|
@ -2987,6 +3003,7 @@ static int sdla_ds_te1_framer_tx_intr(sdla_fe_t *fe, int silent)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static int sdla_ds_te1_bert_intr(sdla_fe_t *fe, int silent)
|
static int sdla_ds_te1_bert_intr(sdla_fe_t *fe, int silent)
|
||||||
{
|
{
|
||||||
unsigned char blsr = READ_REG(REG_BLSR);
|
unsigned char blsr = READ_REG(REG_BLSR);
|
||||||
|
@ -3119,8 +3136,8 @@ static int sdla_ds_te1_check_intr(sdla_fe_t *fe)
|
||||||
//if (framer_istatus & (1 << WAN_FE_LINENO(fe))){
|
//if (framer_istatus & (1 << WAN_FE_LINENO(fe))){
|
||||||
if ((framer_istatus & (1 << WAN_DS_REGBITMAP(fe))) &&
|
if ((framer_istatus & (1 << WAN_DS_REGBITMAP(fe))) &&
|
||||||
(framer_imask & (1 << WAN_DS_REGBITMAP(fe)))) {
|
(framer_imask & (1 << WAN_DS_REGBITMAP(fe)))) {
|
||||||
DEBUG_ISR("%s: Interrupt for line %d (FRAMER)\n",
|
DEBUG_ISR("%s: Interrupt for line %d (FRAMER) status=0x%02X\n",
|
||||||
fe->name, WAN_FE_LINENO(fe));
|
fe->name, WAN_FE_LINENO(fe),framer_istatus);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
//if (liu_istatus & (1 << WAN_FE_LINENO(fe))){
|
//if (liu_istatus & (1 << WAN_FE_LINENO(fe))){
|
||||||
|
@ -3137,7 +3154,8 @@ static int sdla_ds_te1_check_intr(sdla_fe_t *fe)
|
||||||
fe->name, WAN_FE_LINENO(fe));
|
fe->name, WAN_FE_LINENO(fe));
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
DEBUG_ISR("%s: This interrupt not for this port %d\n",
|
|
||||||
|
DEBUG_TE1("%s: This interrupt not for this port %d\n",
|
||||||
fe->name,
|
fe->name,
|
||||||
WAN_FE_LINENO(fe)+1);
|
WAN_FE_LINENO(fe)+1);
|
||||||
return 0;
|
return 0;
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -338,7 +338,6 @@ static int wp_tdmv_bri_hwec_create(struct dahdi_chan *chan, struct dahdi_echocan
|
||||||
{
|
{
|
||||||
wp_tdmv_bri_t *wr = NULL;
|
wp_tdmv_bri_t *wr = NULL;
|
||||||
sdla_t *card = NULL;
|
sdla_t *card = NULL;
|
||||||
int fe_chan = chan->chanpos;
|
|
||||||
int err = -ENODEV;
|
int err = -ENODEV;
|
||||||
|
|
||||||
if (ecp->param_count > 0) {
|
if (ecp->param_count > 0) {
|
||||||
|
@ -353,19 +352,19 @@ static int wp_tdmv_bri_hwec_create(struct dahdi_chan *chan, struct dahdi_echocan
|
||||||
WAN_ASSERT2(wr->card == NULL, -ENODEV);
|
WAN_ASSERT2(wr->card == NULL, -ENODEV);
|
||||||
card = wr->card;
|
card = wr->card;
|
||||||
|
|
||||||
*ec = &wr->ec[fe_chan];
|
*ec = &wr->ec[chan->chanpos-1];
|
||||||
(*ec)->ops = &wp_tdmv_bri_ec_ops;
|
(*ec)->ops = &wp_tdmv_bri_ec_ops;
|
||||||
(*ec)->features = wp_tdmv_bri_ec_features;
|
(*ec)->features = wp_tdmv_bri_ec_features;
|
||||||
|
|
||||||
if (card->wandev.ec_enable) {
|
if (card->wandev.ec_enable) {
|
||||||
DEBUG_EVENT("[TDMV_BRI]: %s: %s(): channel %d\n",
|
DEBUG_EVENT("[TDMV_BRI]: %s: %s(): channel %d\n",
|
||||||
wr->devname, __FUNCTION__, fe_chan);
|
wr->devname, __FUNCTION__, chan->chanpos);
|
||||||
|
|
||||||
if(fe_chan == 1 || fe_chan == 2) {
|
if(chan->chanpos == 1 || chan->chanpos == 2) {
|
||||||
err = card->wandev.ec_enable(card, 1, fe_chan);
|
err = card->wandev.ec_enable(card, 1, chan->chanpos);
|
||||||
} else {
|
} else {
|
||||||
DEBUG_EVENT("[TDMV_BRI]: %s: %s(): Warning: invalid fe_channel %d!!\n",
|
DEBUG_EVENT("[TDMV_BRI]: %s: %s(): Warning: invalid fe_channel %d!!\n",
|
||||||
wr->devname, __FUNCTION__, fe_chan);
|
wr->devname, __FUNCTION__, chan->chanpos);
|
||||||
err = 0;
|
err = 0;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
@ -384,7 +383,6 @@ static void wp_tdmv_bri_hwec_free(struct dahdi_chan *chan, struct dahdi_echocan_
|
||||||
{
|
{
|
||||||
wp_tdmv_bri_t *wr = NULL;
|
wp_tdmv_bri_t *wr = NULL;
|
||||||
sdla_t *card = NULL;
|
sdla_t *card = NULL;
|
||||||
int fe_chan = chan->chanpos;
|
|
||||||
|
|
||||||
memset(ec, 0, sizeof(*ec));
|
memset(ec, 0, sizeof(*ec));
|
||||||
|
|
||||||
|
@ -396,13 +394,13 @@ static void wp_tdmv_bri_hwec_free(struct dahdi_chan *chan, struct dahdi_echocan_
|
||||||
|
|
||||||
if (card->wandev.ec_enable) {
|
if (card->wandev.ec_enable) {
|
||||||
DEBUG_EVENT("[TDMV_BRI]: %s: %s(): channel %d\n",
|
DEBUG_EVENT("[TDMV_BRI]: %s: %s(): channel %d\n",
|
||||||
wr->devname, __FUNCTION__, fe_chan);
|
wr->devname, __FUNCTION__, chan->chanpos);
|
||||||
|
|
||||||
if(fe_chan == 1 || fe_chan == 2) {
|
if(chan->chanpos == 1 || chan->chanpos == 2) {
|
||||||
card->wandev.ec_enable(card, 0, fe_chan);
|
card->wandev.ec_enable(card, 0, chan->chanpos);
|
||||||
} else {
|
} else {
|
||||||
DEBUG_EVENT("[TDMV_BRI]: %s: %s(): Warning: invalid fe_channel %d!!\n",
|
DEBUG_EVENT("[TDMV_BRI]: %s: %s(): Warning: invalid fe_channel %d!!\n",
|
||||||
wr->devname, __FUNCTION__, fe_chan);
|
wr->devname, __FUNCTION__, chan->chanpos);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
DEBUG_EVENT("[TDMV_BRI]: %s: %s(): card->wandev.ec_enable == NULL!!!!!!\n",
|
DEBUG_EVENT("[TDMV_BRI]: %s: %s(): card->wandev.ec_enable == NULL!!!!!!\n",
|
||||||
|
@ -420,10 +418,9 @@ static void wp_tdmv_bri_hwec_free(struct dahdi_chan *chan, struct dahdi_echocan_
|
||||||
static int wp_bri_zap_hwec(struct zt_chan *chan, int enable)
|
static int wp_bri_zap_hwec(struct zt_chan *chan, int enable)
|
||||||
{
|
{
|
||||||
wp_tdmv_bri_t *wr = NULL;
|
wp_tdmv_bri_t *wr = NULL;
|
||||||
sdla_t *card = NULL;
|
sdla_t *card = NULL;
|
||||||
int fe_chan = chan->chanpos;
|
int err = -ENODEV;
|
||||||
int err = -ENODEV;
|
sdla_fe_t *fe = NULL;
|
||||||
sdla_fe_t *fe = NULL;
|
|
||||||
|
|
||||||
BRI_FUNC();
|
BRI_FUNC();
|
||||||
|
|
||||||
|
@ -436,13 +433,13 @@ static int wp_bri_zap_hwec(struct zt_chan *chan, int enable)
|
||||||
|
|
||||||
if (card->wandev.ec_enable){
|
if (card->wandev.ec_enable){
|
||||||
DEBUG_EVENT("[TDMV_BRI]: %s: %s(): channel %d\n",
|
DEBUG_EVENT("[TDMV_BRI]: %s: %s(): channel %d\n",
|
||||||
wr->devname, __FUNCTION__, fe_chan);
|
wr->devname, __FUNCTION__, chan->chanpos);
|
||||||
|
|
||||||
if(fe_chan == 1 || fe_chan == 2){
|
if(chan->chanpos == 1 || chan->chanpos == 2){
|
||||||
err = card->wandev.ec_enable(card, enable, fe_chan);
|
err = card->wandev.ec_enable(card, enable, chan->chanpos);
|
||||||
}else{
|
}else{
|
||||||
DEBUG_EVENT("[TDMV_BRI]: %s: %s(): Warning: invalid fe_channel %d!!\n",
|
DEBUG_EVENT("[TDMV_BRI]: %s: %s(): Warning: invalid fe_channel %d!!\n",
|
||||||
wr->devname, __FUNCTION__, fe_chan);
|
wr->devname, __FUNCTION__, chan->chanpos);
|
||||||
err = 0;
|
err = 0;
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
|
|
|
@ -244,7 +244,7 @@ static int wp_tdmv_remora_rx_chan_sync_test(sdla_t *card, wp_tdmv_remora_t *wr,
|
||||||
|
|
||||||
#define wp_fax_tone_timeout_set(wr,chan) do { DEBUG_TEST("%s:%d: s%dc%d fax timeout set\n", \
|
#define wp_fax_tone_timeout_set(wr,chan) do { DEBUG_TEST("%s:%d: s%dc%d fax timeout set\n", \
|
||||||
__FUNCTION__,__LINE__, \
|
__FUNCTION__,__LINE__, \
|
||||||
wr->spanno+1,chan); \
|
wr->spanno+1,chan+1); \
|
||||||
wr->ec_fax_detect_timeout[chan]=SYSTEM_TICKS; } while(0);
|
wr->ec_fax_detect_timeout[chan]=SYSTEM_TICKS; } while(0);
|
||||||
|
|
||||||
static int
|
static int
|
||||||
|
@ -413,7 +413,7 @@ static int wp_remora_zap_hooksig(struct zt_chan *chan, zt_txsig_t txsig)
|
||||||
wp_tdmv_remora_t *wr = chan->pvt;
|
wp_tdmv_remora_t *wr = chan->pvt;
|
||||||
sdla_t *card = NULL;
|
sdla_t *card = NULL;
|
||||||
sdla_fe_t *fe = NULL;
|
sdla_fe_t *fe = NULL;
|
||||||
int fe_chan = chan->chanpos;
|
int fe_chan = chan->chanpos-1;
|
||||||
|
|
||||||
WAN_ASSERT(wr->card == NULL);
|
WAN_ASSERT(wr->card == NULL);
|
||||||
card = wr->card;
|
card = wr->card;
|
||||||
|
@ -576,7 +576,6 @@ static int wp_tdmv_remora_hwec_create(struct dahdi_chan *chan, struct dahdi_echo
|
||||||
{
|
{
|
||||||
wp_tdmv_remora_t *wr = NULL;
|
wp_tdmv_remora_t *wr = NULL;
|
||||||
sdla_t *card = NULL;
|
sdla_t *card = NULL;
|
||||||
int fe_chan = chan->chanpos;
|
|
||||||
int err = -ENODEV;
|
int err = -ENODEV;
|
||||||
|
|
||||||
WAN_ASSERT2(chan == NULL, -ENODEV);
|
WAN_ASSERT2(chan == NULL, -ENODEV);
|
||||||
|
@ -590,11 +589,12 @@ static int wp_tdmv_remora_hwec_create(struct dahdi_chan *chan, struct dahdi_echo
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
*ec = &wr->ec[fe_chan];
|
*ec = &wr->ec[chan->chanpos-1];
|
||||||
(*ec)->ops = &wp_tdmv_remora_ec_ops;
|
(*ec)->ops = &wp_tdmv_remora_ec_ops;
|
||||||
(*ec)->features = wp_tdmv_remora_ec_features;
|
(*ec)->features = wp_tdmv_remora_ec_features;
|
||||||
|
|
||||||
wan_set_bit(fe_chan, &card->wandev.rtp_tap_call_map);
|
wan_set_bit(chan->chanpos-1, &card->wandev.rtp_tap_call_map);
|
||||||
|
wp_fax_tone_timeout_set(wr,chan->chanpos-1);
|
||||||
|
|
||||||
if (card->wandev.ec_enable) {
|
if (card->wandev.ec_enable) {
|
||||||
/* The ec persist flag enables and disables
|
/* The ec persist flag enables and disables
|
||||||
|
@ -603,12 +603,12 @@ static int wp_tdmv_remora_hwec_create(struct dahdi_chan *chan, struct dahdi_echo
|
||||||
* asterisk. In persist mode off asterisk
|
* asterisk. In persist mode off asterisk
|
||||||
* controls hardware echo cancellation */
|
* controls hardware echo cancellation */
|
||||||
if (card->hwec_conf.persist_disable) {
|
if (card->hwec_conf.persist_disable) {
|
||||||
err = card->wandev.ec_enable(card, 1, fe_chan);
|
err = card->wandev.ec_enable(card, 1, chan->chanpos);
|
||||||
} else {
|
} else {
|
||||||
err = 0;
|
err = 0;
|
||||||
}
|
}
|
||||||
DEBUG_TDMV("[TDMV_RM]: %s: Enable HW echo canceller on channel %d\n",
|
DEBUG_TDMV("[TDMV_RM]: %s: Enable HW echo canceller on channel %d\n",
|
||||||
wr->devname, fe_chan);
|
wr->devname, chan->chanpos);
|
||||||
}
|
}
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
@ -623,7 +623,6 @@ static void wp_tdmv_remora_hwec_free(struct dahdi_chan *chan, struct dahdi_echoc
|
||||||
{
|
{
|
||||||
wp_tdmv_remora_t *wr = NULL;
|
wp_tdmv_remora_t *wr = NULL;
|
||||||
sdla_t *card = NULL;
|
sdla_t *card = NULL;
|
||||||
int fe_chan = chan->chanpos;
|
|
||||||
|
|
||||||
memset(ec, 0, sizeof(*ec));
|
memset(ec, 0, sizeof(*ec));
|
||||||
|
|
||||||
|
@ -633,7 +632,7 @@ static void wp_tdmv_remora_hwec_free(struct dahdi_chan *chan, struct dahdi_echoc
|
||||||
if(wr->card == NULL) return;
|
if(wr->card == NULL) return;
|
||||||
card = wr->card;
|
card = wr->card;
|
||||||
|
|
||||||
wan_clear_bit(fe_chan, &card->wandev.rtp_tap_call_map);
|
wan_clear_bit(chan->chanpos-1, &card->wandev.rtp_tap_call_map);
|
||||||
|
|
||||||
if (card->wandev.ec_enable) {
|
if (card->wandev.ec_enable) {
|
||||||
/* The ec persist flag enables and disables
|
/* The ec persist flag enables and disables
|
||||||
|
@ -642,10 +641,10 @@ static void wp_tdmv_remora_hwec_free(struct dahdi_chan *chan, struct dahdi_echoc
|
||||||
* asterisk. In persist mode off asterisk
|
* asterisk. In persist mode off asterisk
|
||||||
* controls hardware echo cancellation */
|
* controls hardware echo cancellation */
|
||||||
if (card->hwec_conf.persist_disable) {
|
if (card->hwec_conf.persist_disable) {
|
||||||
card->wandev.ec_enable(card, 0, fe_chan);
|
card->wandev.ec_enable(card, 0, chan->chanpos);
|
||||||
}
|
}
|
||||||
DEBUG_TDMV("[TDMV] %s: Disable HW echo canceller on channel %d\n",
|
DEBUG_TDMV("[TDMV] %s: Disable HW echo canceller on channel %d\n",
|
||||||
wr->devname, fe_chan);
|
wr->devname, chan->chanpos);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -660,7 +659,6 @@ static int wp_remora_zap_hwec(struct zt_chan *chan, int enable)
|
||||||
{
|
{
|
||||||
wp_tdmv_remora_t *wr = NULL;
|
wp_tdmv_remora_t *wr = NULL;
|
||||||
sdla_t *card = NULL;
|
sdla_t *card = NULL;
|
||||||
int fe_chan = chan->chanpos;
|
|
||||||
int err = -ENODEV;
|
int err = -ENODEV;
|
||||||
|
|
||||||
WAN_ASSERT2(chan == NULL, -ENODEV);
|
WAN_ASSERT2(chan == NULL, -ENODEV);
|
||||||
|
@ -670,9 +668,10 @@ static int wp_remora_zap_hwec(struct zt_chan *chan, int enable)
|
||||||
card = wr->card;
|
card = wr->card;
|
||||||
|
|
||||||
if (enable) {
|
if (enable) {
|
||||||
wan_set_bit(fe_chan,&card->wandev.rtp_tap_call_map);
|
wan_set_bit(chan->chanpos-1,&card->wandev.rtp_tap_call_map);
|
||||||
|
wp_fax_tone_timeout_set(wr,chan->chanpos-1);
|
||||||
} else {
|
} else {
|
||||||
wan_clear_bit(fe_chan,&card->wandev.rtp_tap_call_map);
|
wan_clear_bit(chan->chanpos-1,&card->wandev.rtp_tap_call_map);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (card->wandev.ec_enable){
|
if (card->wandev.ec_enable){
|
||||||
|
@ -682,14 +681,14 @@ static int wp_remora_zap_hwec(struct zt_chan *chan, int enable)
|
||||||
* asterisk. In persist mode off asterisk
|
* asterisk. In persist mode off asterisk
|
||||||
* controls hardware echo cancellation */
|
* controls hardware echo cancellation */
|
||||||
if (card->hwec_conf.persist_disable) {
|
if (card->hwec_conf.persist_disable) {
|
||||||
err = card->wandev.ec_enable(card, enable, fe_chan);
|
err = card->wandev.ec_enable(card, enable, chan->chanpos);
|
||||||
} else {
|
} else {
|
||||||
err = 0;
|
err = 0;
|
||||||
}
|
}
|
||||||
DEBUG_TDMV("[TDMV_RM]: %s: %s HW echo canceller on channel %d\n",
|
DEBUG_TDMV("[TDMV_RM]: %s: %s HW echo canceller on channel %d\n",
|
||||||
wr->devname,
|
wr->devname,
|
||||||
(enable) ? "Enable" : "Disable",
|
(enable) ? "Enable" : "Disable",
|
||||||
fe_chan);
|
chan->chanpos);
|
||||||
}
|
}
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
@ -1646,8 +1645,6 @@ static int wp_tdmv_remora_is_rbsbits(wan_tdmv_t *wan_tdmv)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#ifdef WAN_FAKE_POLARITY
|
|
||||||
#warning "WAN_FAKE_POLARITY Enabled - Experimental"
|
|
||||||
static inline void wp_tdmv_dtmfcheck_fakepolarity(wp_tdmv_remora_t *wr, int channo, unsigned char *rxbuf)
|
static inline void wp_tdmv_dtmfcheck_fakepolarity(wp_tdmv_remora_t *wr, int channo, unsigned char *rxbuf)
|
||||||
{
|
{
|
||||||
sdla_t *card = wr->card;
|
sdla_t *card = wr->card;
|
||||||
|
@ -1676,7 +1673,6 @@ static inline void wp_tdmv_dtmfcheck_fakepolarity(wp_tdmv_remora_t *wr, int chan
|
||||||
wr->mod[channo].fxo.readcid = 0;
|
wr->mod[channo].fxo.readcid = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
** wp_tdmv_rx_chan() -
|
** wp_tdmv_rx_chan() -
|
||||||
|
@ -1746,9 +1742,9 @@ DEBUG_EVENT("Module %d: RX: %02X %02X %02X %02X %02X %02X %02X %02X\n",
|
||||||
wr->chans[channo].readchunk = rxbuf;
|
wr->chans[channo].readchunk = rxbuf;
|
||||||
wr->chans[channo].writechunk = txbuf;
|
wr->chans[channo].writechunk = txbuf;
|
||||||
|
|
||||||
#ifdef WAN_FAKE_POLARITY
|
if (card->fe.fe_cfg.cfg.remora.fake_polarity == WANOPT_YES){
|
||||||
wp_tdmv_dtmfcheck_fakepolarity(wr,channo,rxbuf);
|
wp_tdmv_dtmfcheck_fakepolarity(wr,channo,rxbuf);
|
||||||
#endif
|
}
|
||||||
|
|
||||||
|
|
||||||
#ifdef CONFIG_PRODUCT_WANPIPE_TDM_VOICE_ECHOMASTER
|
#ifdef CONFIG_PRODUCT_WANPIPE_TDM_VOICE_ECHOMASTER
|
||||||
|
@ -1990,12 +1986,12 @@ static int wp_tdmv_remora_ec_span(void *pcard)
|
||||||
static void wp_tdmv_remora_dtmf (void* card_id, wan_event_t *event)
|
static void wp_tdmv_remora_dtmf (void* card_id, wan_event_t *event)
|
||||||
{
|
{
|
||||||
sdla_t *card = (sdla_t*)card_id;
|
sdla_t *card = (sdla_t*)card_id;
|
||||||
wan_tdmv_t *wan_tdmv = &card->wan_tdmv;
|
wan_tdmv_t *wan_tdmv = &card->wan_tdmv;
|
||||||
wp_tdmv_remora_t *wr = NULL;
|
wp_tdmv_remora_t *wr = NULL;
|
||||||
int fechan = event->channel;
|
int fechan = event->channel-1;
|
||||||
|
|
||||||
WAN_ASSERT1(wan_tdmv->sc == NULL);
|
WAN_ASSERT1(wan_tdmv->sc == NULL);
|
||||||
wr = wan_tdmv->sc;
|
wr = wan_tdmv->sc;
|
||||||
|
|
||||||
if (event->type == WAN_EVENT_EC_DTMF){
|
if (event->type == WAN_EVENT_EC_DTMF){
|
||||||
DEBUG_TDMV(
|
DEBUG_TDMV(
|
||||||
|
|
|
@ -1472,17 +1472,21 @@ static char *wp_tdmv_sigstr(int sig)
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
static int wp_tdmv_chanconfig(struct zt_chan *chan, int sigtype)
|
static int wp_tdmv_chanconfig(struct zt_chan *chan, int sigtype)
|
||||||
{
|
{
|
||||||
sdla_t *card;
|
sdla_t *card;
|
||||||
wp_tdmv_softc_t *wp = NULL;
|
wp_tdmv_softc_t *wp = NULL;
|
||||||
|
int hdlcsig = sigtype & ~(ZT_SIG_CLEAR);
|
||||||
|
|
||||||
WAN_ASSERT2(chan == NULL, -ENODEV);
|
WAN_ASSERT2(chan == NULL, -ENODEV);
|
||||||
WAN_ASSERT2(chan->pvt == NULL, -ENODEV);
|
WAN_ASSERT2(chan->pvt == NULL, -ENODEV);
|
||||||
wp = chan->pvt;
|
wp = chan->pvt;
|
||||||
card = (sdla_t*)wp->card;
|
card = (sdla_t*)wp->card;
|
||||||
|
|
||||||
DEBUG_TDMV("%s: Configuring chan %d..\n", wp->devname, chan->chanpos);
|
DEBUG_TEST("%s: Configuring chan %d (hdlc=%i) flags=0x%02X sigtype=0x%03X..\n",
|
||||||
|
wp->devname, chan->chanpos, IS_CHAN_HARDHDLC(chan), chan->flags, sigtype);
|
||||||
|
|
||||||
if (chan->span->flags & ZT_FLAG_RUNNING){
|
if (chan->span->flags & ZT_FLAG_RUNNING){
|
||||||
wp_tdmv_set_clear(wp);
|
wp_tdmv_set_clear(wp);
|
||||||
}
|
}
|
||||||
|
@ -1498,6 +1502,16 @@ static int wp_tdmv_chanconfig(struct zt_chan *chan, int sigtype)
|
||||||
}
|
}
|
||||||
wp_tdmv_sigctrl(card, wp, chan->chanpos, WP_TDMV_ENABLE);
|
wp_tdmv_sigctrl(card, wp, chan->chanpos, WP_TDMV_ENABLE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Disable hwec on signalling channel */
|
||||||
|
if (wp->hwec == WANOPT_YES && card->wandev.ec_dev && card->wandev.ec_enable) {
|
||||||
|
if (IS_CHAN_HARDHDLC(chan) || hdlcsig & ZT_SIG_HDLCRAW || hdlcsig & ZT_SIG_HDLCFCS) {
|
||||||
|
DEBUG_TEST("%s: Disabling EC Chan=%i, sigtype 0x%03X, HDLCRAW=0x%X FCS=0x%X\n",
|
||||||
|
card->devname, chan->chanpos, sigtype, ZT_SIG_HDLCRAW, ZT_SIG_HDLCFCS);
|
||||||
|
card->wandev.ec_enable(card, 0, chan->chanpos);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1617,18 +1631,22 @@ static int wp_tdmv_rbsbits(struct zt_chan *chan, int bits)
|
||||||
wp_tdmv_softc_t *wp = NULL;
|
wp_tdmv_softc_t *wp = NULL;
|
||||||
sdla_t *card = NULL;
|
sdla_t *card = NULL;
|
||||||
unsigned char ABCD_bits = 0x00;
|
unsigned char ABCD_bits = 0x00;
|
||||||
|
wan_smp_flag_t smp_flags;
|
||||||
|
|
||||||
/* Byte offset */
|
/* Byte offset */
|
||||||
WAN_ASSERT2(chan == NULL, 0);
|
WAN_ASSERT2(chan == NULL, 0);
|
||||||
if ((wp = chan->pvt) == NULL) return 0;
|
if ((wp = chan->pvt) == NULL) return 0;
|
||||||
WAN_ASSERT2(wp->card == NULL, 0);
|
WAN_ASSERT2(wp->card == NULL, 0);
|
||||||
card = (sdla_t*)wp->card;
|
card = (sdla_t*)wp->card;
|
||||||
|
|
||||||
if (!wan_test_bit(chan->chanpos-1, &wp->timeslot_map)){
|
if (!wan_test_bit(chan->chanpos-1, &wp->timeslot_map)){
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
if (!wan_test_bit(WP_TDMV_SIG_ENABLE, &wp->flags)){
|
|
||||||
|
if (!wan_test_bit(WP_TDMV_SIG_ENABLE, &wp->flags)){
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (bits & ZT_ABIT) ABCD_bits |= WAN_RBS_SIG_A;
|
if (bits & ZT_ABIT) ABCD_bits |= WAN_RBS_SIG_A;
|
||||||
if (bits & ZT_BBIT) ABCD_bits |= WAN_RBS_SIG_B;
|
if (bits & ZT_BBIT) ABCD_bits |= WAN_RBS_SIG_B;
|
||||||
if (bits & ZT_CBIT) ABCD_bits |= WAN_RBS_SIG_C;
|
if (bits & ZT_CBIT) ABCD_bits |= WAN_RBS_SIG_C;
|
||||||
|
@ -1647,41 +1665,16 @@ static int wp_tdmv_rbsbits(struct zt_chan *chan, int bits)
|
||||||
(ABCD_bits & WAN_RBS_SIG_C) ? 1 : 0,
|
(ABCD_bits & WAN_RBS_SIG_C) ? 1 : 0,
|
||||||
(ABCD_bits & WAN_RBS_SIG_D) ? 1 : 0);
|
(ABCD_bits & WAN_RBS_SIG_D) ? 1 : 0);
|
||||||
|
|
||||||
if (wan_test_and_set_bit(chan->chanpos-1, &wp->rbs_tx_status)){
|
|
||||||
if (ABCD_bits == wp->rbs_tx[chan->chanpos-1]){
|
card->hw_iface.hw_lock(card->hw,&smp_flags);
|
||||||
return 0;
|
if (card->wandev.fe_iface.set_rbsbits) {
|
||||||
}
|
card->wandev.fe_iface.set_rbsbits(
|
||||||
if (wan_test_and_set_bit(chan->chanpos-1, &wp->rbs_tx1_status)){
|
&wp->card->fe,
|
||||||
if (ABCD_bits == wp->rbs_tx1[chan->chanpos-1]){
|
chan->chanpos,
|
||||||
return 0;
|
ABCD_bits);
|
||||||
}
|
}
|
||||||
DEBUG_EVENT("%s: Critical Error: TX RBS for channel %d\n",
|
card->hw_iface.hw_unlock(card->hw,&smp_flags);
|
||||||
wp->devname,
|
|
||||||
chan->chanpos);
|
|
||||||
}
|
|
||||||
wp->rbs_tx1[chan->chanpos-1] = ABCD_bits;
|
|
||||||
}else{
|
|
||||||
wp->rbs_tx[chan->chanpos-1] = ABCD_bits;
|
|
||||||
}
|
|
||||||
#if 0
|
|
||||||
wan_set_bit(7, &ABCD_bits);
|
|
||||||
if (wan_test_and_set_bit(7, &wp->rbs_tx[chan->chanpos-1])){
|
|
||||||
if (ABCD_bits == wp->rbs_tx[chan->chanpos-1]){
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
if (wan_test_and_set_bit(7, &wp->rbs_tx1[chan->chanpos-1])){
|
|
||||||
if (ABCD_bits == wp->rbs_tx1[chan->chanpos-1]){
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
DEBUG_EVENT("%s: Critical Error: TX RBS for channel %d\n",
|
|
||||||
wp->devname,
|
|
||||||
chan->chanpos);
|
|
||||||
}
|
|
||||||
wp->rbs_tx1[chan->chanpos-1] = ABCD_bits;
|
|
||||||
}else{
|
|
||||||
wp->rbs_tx[chan->chanpos-1] = ABCD_bits;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2001,7 +1994,6 @@ static int wp_tdmv_hwec_create(struct dahdi_chan *chan, struct dahdi_echocanpara
|
||||||
{
|
{
|
||||||
wp_tdmv_softc_t *wp = NULL;
|
wp_tdmv_softc_t *wp = NULL;
|
||||||
sdla_t *card = NULL;
|
sdla_t *card = NULL;
|
||||||
int channel=0;
|
|
||||||
int err = -EINVAL;
|
int err = -EINVAL;
|
||||||
|
|
||||||
if (ecp->param_count > 0) {
|
if (ecp->param_count > 0) {
|
||||||
|
@ -2014,19 +2006,13 @@ static int wp_tdmv_hwec_create(struct dahdi_chan *chan, struct dahdi_echocanpara
|
||||||
wp = chan->pvt;
|
wp = chan->pvt;
|
||||||
WAN_ASSERT2(wp->card == NULL, -ENODEV);
|
WAN_ASSERT2(wp->card == NULL, -ENODEV);
|
||||||
card = wp->card;
|
card = wp->card;
|
||||||
|
|
||||||
channel = chan->chanpos;
|
|
||||||
|
|
||||||
if (!wp->ise1) {
|
*ec = &wp->ec[chan->chanpos-1];
|
||||||
channel--;
|
|
||||||
}
|
|
||||||
|
|
||||||
*ec = &wp->ec[channel];
|
|
||||||
(*ec)->ops = &wp_tdmv_ec_ops;
|
(*ec)->ops = &wp_tdmv_ec_ops;
|
||||||
(*ec)->features = wp_tdmv_ec_features;
|
(*ec)->features = wp_tdmv_ec_features;
|
||||||
|
|
||||||
wan_set_bit(channel, &card->wandev.rtp_tap_call_map);
|
wan_set_bit(chan->chanpos-1, &card->wandev.rtp_tap_call_map);
|
||||||
wp_fax_tone_timeout_set(wp, channel);
|
wp_fax_tone_timeout_set(wp, chan->chanpos-1);
|
||||||
|
|
||||||
if (card->wandev.ec_enable) {
|
if (card->wandev.ec_enable) {
|
||||||
DEBUG_TDMV("[TDMV] %s: Enable HW echo canceller on channel %d\n",
|
DEBUG_TDMV("[TDMV] %s: Enable HW echo canceller on channel %d\n",
|
||||||
|
@ -2056,7 +2042,6 @@ static void wp_tdmv_hwec_free(struct dahdi_chan *chan, struct dahdi_echocan_stat
|
||||||
{
|
{
|
||||||
wp_tdmv_softc_t *wp = NULL;
|
wp_tdmv_softc_t *wp = NULL;
|
||||||
sdla_t *card = NULL;
|
sdla_t *card = NULL;
|
||||||
int channel;
|
|
||||||
|
|
||||||
memset(ec, 0, sizeof(*ec));
|
memset(ec, 0, sizeof(*ec));
|
||||||
|
|
||||||
|
@ -2066,18 +2051,17 @@ static void wp_tdmv_hwec_free(struct dahdi_chan *chan, struct dahdi_echocan_stat
|
||||||
if(wp->card == NULL) return;
|
if(wp->card == NULL) return;
|
||||||
card = wp->card;
|
card = wp->card;
|
||||||
|
|
||||||
channel = chan->chanpos;
|
wan_clear_bit(chan->chanpos-1, &card->wandev.rtp_tap_call_map);
|
||||||
wan_clear_bit(channel, &card->wandev.rtp_tap_call_map);
|
|
||||||
|
|
||||||
if (card->wandev.ec_enable) {
|
if (card->wandev.ec_enable) {
|
||||||
DEBUG_TDMV("[TDMV] %s: Disable HW echo canceller on channel %d\n",
|
DEBUG_TDMV("[TDMV] %s: Disable HW echo canceller on channel %d\n",
|
||||||
wp->devname, channel);
|
wp->devname, channel);
|
||||||
|
|
||||||
/* The ec persist flag enables and disables
|
/* The ec persist flag enables and disables
|
||||||
* persistent echo control. In persist mode
|
* persistent echo control. In persist mode
|
||||||
* echo cancellation is enabled regardless of
|
* echo cancellation is enabled regardless of
|
||||||
* asterisk. In persist mode off asterisk
|
* asterisk. In persist mode off asterisk
|
||||||
* controls hardware echo cancellation */
|
* controls hardware echo cancellation */
|
||||||
if (card->hwec_conf.persist_disable || IS_CHAN_HARDHDLC(chan)) {
|
if (card->hwec_conf.persist_disable || IS_CHAN_HARDHDLC(chan)) {
|
||||||
card->wandev.ec_enable(card, 0, chan->chanpos);
|
card->wandev.ec_enable(card, 0, chan->chanpos);
|
||||||
}
|
}
|
||||||
|
@ -2095,7 +2079,6 @@ static int wp_tdmv_hwec(struct zt_chan *chan, int enable)
|
||||||
{
|
{
|
||||||
wp_tdmv_softc_t *wp = NULL;
|
wp_tdmv_softc_t *wp = NULL;
|
||||||
sdla_t *card = NULL;
|
sdla_t *card = NULL;
|
||||||
int channel;
|
|
||||||
int err = -EINVAL;
|
int err = -EINVAL;
|
||||||
|
|
||||||
WAN_ASSERT2(chan == NULL, -ENODEV);
|
WAN_ASSERT2(chan == NULL, -ENODEV);
|
||||||
|
@ -2104,16 +2087,11 @@ static int wp_tdmv_hwec(struct zt_chan *chan, int enable)
|
||||||
WAN_ASSERT2(wp->card == NULL, -ENODEV);
|
WAN_ASSERT2(wp->card == NULL, -ENODEV);
|
||||||
card = wp->card;
|
card = wp->card;
|
||||||
|
|
||||||
channel = chan->chanpos;
|
|
||||||
if (!wp->ise1){
|
|
||||||
channel--;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (enable) {
|
if (enable) {
|
||||||
wan_set_bit(channel,&card->wandev.rtp_tap_call_map);
|
wan_set_bit(chan->chanpos-1,&card->wandev.rtp_tap_call_map);
|
||||||
wp_fax_tone_timeout_set(wp,channel);
|
wp_fax_tone_timeout_set(wp,chan->chanpos-1);
|
||||||
} else {
|
} else {
|
||||||
wan_clear_bit(channel,&card->wandev.rtp_tap_call_map);
|
wan_clear_bit(chan->chanpos-1,&card->wandev.rtp_tap_call_map);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (card->wandev.ec_enable){
|
if (card->wandev.ec_enable){
|
||||||
|
@ -2148,13 +2126,16 @@ static int wp_tdmv_open(struct zt_chan *chan)
|
||||||
{
|
{
|
||||||
wp_tdmv_softc_t *wp = NULL;
|
wp_tdmv_softc_t *wp = NULL;
|
||||||
sdla_t *card = NULL;
|
sdla_t *card = NULL;
|
||||||
|
wan_smp_flag_t flags;
|
||||||
|
|
||||||
WAN_ASSERT2(chan == NULL, -ENODEV);
|
WAN_ASSERT2(chan == NULL, -ENODEV);
|
||||||
WAN_ASSERT2(chan->pvt == NULL, -ENODEV);
|
WAN_ASSERT2(chan->pvt == NULL, -ENODEV);
|
||||||
wp = chan->pvt;
|
wp = chan->pvt;
|
||||||
WAN_ASSERT2(wp->card == NULL, -ENODEV);
|
WAN_ASSERT2(wp->card == NULL, -ENODEV);
|
||||||
card = wp->card;
|
card = wp->card;
|
||||||
|
wan_spin_lock_irq(&wp->lockirq, &flags);
|
||||||
wp->usecount++;
|
wp->usecount++;
|
||||||
|
wan_spin_unlock_irq(&wp->lockirq, &flags);
|
||||||
wanpipe_open(card);
|
wanpipe_open(card);
|
||||||
DEBUG_TDMV("%s: Open (usecount=%d, channo=%d, chanpos=%d)...\n",
|
DEBUG_TDMV("%s: Open (usecount=%d, channo=%d, chanpos=%d)...\n",
|
||||||
wp->devname,
|
wp->devname,
|
||||||
|
@ -2174,13 +2155,16 @@ static int wp_tdmv_close(struct zt_chan *chan)
|
||||||
{
|
{
|
||||||
wp_tdmv_softc_t* wp = NULL;
|
wp_tdmv_softc_t* wp = NULL;
|
||||||
sdla_t *card = NULL;
|
sdla_t *card = NULL;
|
||||||
|
wan_smp_flag_t flags;
|
||||||
|
|
||||||
WAN_ASSERT2(chan == NULL, -ENODEV);
|
WAN_ASSERT2(chan == NULL, -ENODEV);
|
||||||
WAN_ASSERT2(chan->pvt == NULL, -ENODEV);
|
WAN_ASSERT2(chan->pvt == NULL, -ENODEV);
|
||||||
wp = chan->pvt;
|
wp = chan->pvt;
|
||||||
WAN_ASSERT2(wp->card == NULL, -ENODEV);
|
WAN_ASSERT2(wp->card == NULL, -ENODEV);
|
||||||
card = wp->card;
|
card = wp->card;
|
||||||
|
wan_spin_lock_irq(&wp->lockirq, &flags);
|
||||||
wp->usecount--;
|
wp->usecount--;
|
||||||
|
wan_spin_unlock_irq(&wp->lockirq, &flags);
|
||||||
wanpipe_close(card);
|
wanpipe_close(card);
|
||||||
DEBUG_TDMV("%s: Close (usecount=%d, channo=%d, chanpos=%d)...\n",
|
DEBUG_TDMV("%s: Close (usecount=%d, channo=%d, chanpos=%d)...\n",
|
||||||
wp->devname,
|
wp->devname,
|
||||||
|
@ -2535,18 +2519,29 @@ static int wp_tdmv_rx_chan(wan_tdmv_t *wan_tdmv, int channo,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#undef AFT_TDM_ROTATE_DEBUG
|
||||||
|
#ifdef AFT_TDM_ROTATE_DEBUG
|
||||||
|
static int rotate_debug[32];
|
||||||
|
#warning "AFT_TDM_ROTATE_DEBUG Enabled"
|
||||||
|
#include <linux/sdla_aft_te1.h>
|
||||||
|
#endif
|
||||||
static int wp_tdmv_span_buf_rotate(void *pcard, u32 buf_sz, unsigned long mask, int circ_buf_len)
|
static int wp_tdmv_span_buf_rotate(void *pcard, u32 buf_sz, unsigned long mask, int circ_buf_len)
|
||||||
{
|
{
|
||||||
sdla_t *card = (sdla_t*)pcard;
|
sdla_t *card = (sdla_t*)pcard;
|
||||||
wan_tdmv_t *wan_tdmv = &card->wan_tdmv;
|
wan_tdmv_t *wan_tdmv = &card->wan_tdmv;
|
||||||
wp_tdmv_softc_t *wp = NULL;
|
wp_tdmv_softc_t *wp = NULL;
|
||||||
int x;
|
int x;
|
||||||
|
int tidx;
|
||||||
unsigned int rx_offset, tx_offset;
|
unsigned int rx_offset, tx_offset;
|
||||||
void *ptr;
|
void *ptr;
|
||||||
|
|
||||||
WAN_ASSERT(wan_tdmv->sc == NULL);
|
WAN_ASSERT(wan_tdmv->sc == NULL);
|
||||||
wp = wan_tdmv->sc;
|
wp = wan_tdmv->sc;
|
||||||
|
|
||||||
|
#ifdef AFT_TDM_ROTATE_DEBUG
|
||||||
|
rotate_debug[card->tdmv_conf.span_no]++;
|
||||||
|
#endif
|
||||||
|
|
||||||
for (x = 0; x < 32; x ++) {
|
for (x = 0; x < 32; x ++) {
|
||||||
|
|
||||||
if (wan_test_bit(x,&wp->timeslot_map)) {
|
if (wan_test_bit(x,&wp->timeslot_map)) {
|
||||||
|
@ -2556,30 +2551,66 @@ static int wp_tdmv_span_buf_rotate(void *pcard, u32 buf_sz, unsigned long mask,
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
rx_offset = buf_sz * card->u.aft.tdm_rx_dma_toggle[x];
|
if (wp->ise1) {
|
||||||
tx_offset = buf_sz * card->u.aft.tdm_tx_dma_toggle[x];
|
tidx=x+1;
|
||||||
|
} else {
|
||||||
card->u.aft.tdm_rx_dma_toggle[x]++;
|
tidx=x;
|
||||||
if (card->u.aft.tdm_rx_dma_toggle[x] >= circ_buf_len) {
|
|
||||||
card->u.aft.tdm_rx_dma_toggle[x]=0;
|
|
||||||
}
|
}
|
||||||
card->u.aft.tdm_tx_dma_toggle[x]++;
|
|
||||||
if (card->u.aft.tdm_tx_dma_toggle[x] >= circ_buf_len) {
|
#ifdef AFT_TDM_ROTATE_DEBUG
|
||||||
card->u.aft.tdm_tx_dma_toggle[x]=0;
|
if (1) {
|
||||||
|
u32 dma_descr, lo_reg, lo_reg_tx, lch;
|
||||||
|
lch=x;
|
||||||
|
|
||||||
|
dma_descr=(lch<<4) +
|
||||||
|
AFT_PORT_REG(card,AFT_RX_DMA_LO_DESCR_BASE_REG);
|
||||||
|
card->hw_iface.bus_read_4(card->hw,dma_descr,&lo_reg);
|
||||||
|
|
||||||
|
dma_descr=(lch<<4) +
|
||||||
|
AFT_PORT_REG(card,AFT_TX_DMA_LO_DESCR_BASE_REG);
|
||||||
|
card->hw_iface.bus_read_4(card->hw,dma_descr,&lo_reg_tx);
|
||||||
|
|
||||||
|
lo_reg=(lo_reg&AFT_TDMV_BUF_MASK)/AFT_TDMV_CIRC_BUF;
|
||||||
|
lo_reg_tx=(lo_reg_tx&AFT_TDMV_BUF_MASK)/AFT_TDMV_CIRC_BUF;
|
||||||
|
|
||||||
|
#if 0
|
||||||
|
if (rotate_debug[card->tdmv_conf.span_no] < 5) {
|
||||||
|
#else
|
||||||
|
if (rotate_debug[card->tdmv_conf.span_no] < 5 ||
|
||||||
|
abs(card->u.aft.tdm_rx_dma_toggle[tidx] - lo_reg) != 2 ||
|
||||||
|
abs(card->u.aft.tdm_tx_dma_toggle[tidx] - lo_reg_tx) != 2) {
|
||||||
|
#endif
|
||||||
|
DEBUG_EVENT("%s: Rotating buffer lch=%i tidx=%i rxdma=%i (hw=%i), txdma=%i (hw=%i)\n",
|
||||||
|
card->devname, lch, tidx, card->u.aft.tdm_rx_dma_toggle[tidx], lo_reg,card->u.aft.tdm_tx_dma_toggle[tidx],lo_reg_tx);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
rx_offset = buf_sz * card->u.aft.tdm_rx_dma_toggle[tidx];
|
||||||
|
tx_offset = buf_sz * card->u.aft.tdm_tx_dma_toggle[tidx];
|
||||||
|
|
||||||
|
card->u.aft.tdm_rx_dma_toggle[tidx]++;
|
||||||
|
if (card->u.aft.tdm_rx_dma_toggle[tidx] >= circ_buf_len) {
|
||||||
|
card->u.aft.tdm_rx_dma_toggle[tidx]=0;
|
||||||
|
}
|
||||||
|
card->u.aft.tdm_tx_dma_toggle[tidx]++;
|
||||||
|
if (card->u.aft.tdm_tx_dma_toggle[tidx] >= circ_buf_len) {
|
||||||
|
card->u.aft.tdm_tx_dma_toggle[tidx]=0;
|
||||||
}
|
}
|
||||||
|
|
||||||
wan_spin_lock(&wp->chans[x].lock);
|
wan_spin_lock(&wp->chans[x].lock);
|
||||||
|
|
||||||
ptr=(void*)((((unsigned long)wp->chans[x].readchunk) & ~(mask)) + rx_offset);
|
ptr=(void*)((((unsigned long)wp->chans[x].readchunk) & ~(mask)) + rx_offset);
|
||||||
wp->chans[x].readchunk = ptr;
|
wp->chans[x].readchunk = ptr;
|
||||||
ptr=(void*)((((unsigned long)wp->chans[x].writechunk) & ~(mask)) + tx_offset);
|
|
||||||
|
ptr=(void*)((((unsigned long)wp->chans[x].writechunk) & ~(mask)) + tx_offset);
|
||||||
wp->chans[x].writechunk = ptr;
|
wp->chans[x].writechunk = ptr;
|
||||||
|
|
||||||
wan_spin_unlock(&wp->chans[x].lock);
|
wan_spin_unlock(&wp->chans[x].lock);
|
||||||
|
|
||||||
#if defined(__LINUX__)
|
#if defined(__LINUX__)
|
||||||
prefetch(wp->chans[x].readchunk);
|
prefetch(wp->chans[x].readchunk);
|
||||||
prefetch(wp->chans[x].writechunk);
|
prefetch(wp->chans[x].writechunk);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (card->wandev.rtp_len && card->wandev.rtp_tap) {
|
if (card->wandev.rtp_len && card->wandev.rtp_tap) {
|
||||||
|
@ -2667,15 +2698,10 @@ static void wp_tdmv_callback_dtmf (void* card_id, wan_event_t *event)
|
||||||
sdla_t *card = (sdla_t*)card_id;
|
sdla_t *card = (sdla_t*)card_id;
|
||||||
wan_tdmv_t *wan_tdmv = &card->wan_tdmv;
|
wan_tdmv_t *wan_tdmv = &card->wan_tdmv;
|
||||||
wp_tdmv_softc_t *wp = NULL;
|
wp_tdmv_softc_t *wp = NULL;
|
||||||
int fechan = event->channel;
|
int fechan = event->channel-1;
|
||||||
|
|
||||||
WAN_ASSERT1(wan_tdmv->sc == NULL);
|
WAN_ASSERT1(wan_tdmv->sc == NULL);
|
||||||
wp = wan_tdmv->sc;
|
wp = wan_tdmv->sc;
|
||||||
|
|
||||||
/* fechan check is a sanity check */
|
|
||||||
if (!wp->ise1 && fechan > 0){
|
|
||||||
fechan--;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (event->type != WAN_EVENT_EC_DTMF){
|
if (event->type != WAN_EVENT_EC_DTMF){
|
||||||
DEBUG_EVENT("ERROR: %s: Invalid event type %X!\n",
|
DEBUG_EVENT("ERROR: %s: Invalid event type %X!\n",
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1,6 +1,6 @@
|
||||||
%define WANPIPE_VER wanpipe-modules
|
%define WANPIPE_VER wanpipe-modules
|
||||||
%define name %{WANPIPE_VER}
|
%define name %{WANPIPE_VER}
|
||||||
%define version 3.4.4
|
%define version 3.4.5
|
||||||
%define release 0
|
%define release 0
|
||||||
%define serial 1
|
%define serial 1
|
||||||
%define MODULES_DIR /lib/modules
|
%define MODULES_DIR /lib/modules
|
||||||
|
@ -51,6 +51,26 @@ echo "Wanpipe Modules located in %{MODULES_DIR}/%{KVERSION}"
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
|
||||||
|
* Tue Aug 18 2009 Nenad Corbic <ncorbic@sangoma.com> - Stable - 3.4.5
|
||||||
|
=====================================================================
|
||||||
|
|
||||||
|
- New firmawre feature for A101/2/5/8: Free Run Timer Interrupt
|
||||||
|
The AFT T1/E1 cards will now provide perfect timing to zatpel/dahdi
|
||||||
|
even when the ports are not connected. The free run interrupt
|
||||||
|
will be enabled when all zaptel/dahdi ports are down, or on
|
||||||
|
inital card start. To test this feature just start a wanpipe
|
||||||
|
port with zaptel/dahdi and run zttest.
|
||||||
|
A108 firmare V38
|
||||||
|
A104/2/1/ firmware V36
|
||||||
|
|
||||||
|
- Added module inc cound when zaptel/dahdi starts.
|
||||||
|
So wanpipe drivers do not crash if one tries to unload
|
||||||
|
zaptel/dahdi before stopping wanpipe drivers.
|
||||||
|
|
||||||
|
- Dahdi 2.2 Support
|
||||||
|
- Updated for 2.6.30 kernel
|
||||||
|
|
||||||
|
|
||||||
* Fri Jun 17 2009 Nenad Corbic <ncorbic@sangoma.com> - Stable - 3.4.4
|
* Fri Jun 17 2009 Nenad Corbic <ncorbic@sangoma.com> - Stable - 3.4.4
|
||||||
=====================================================================
|
=====================================================================
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
%define KERNEL_VERSION %{?kern_ver}
|
%define KERNEL_VERSION %{?kern_ver}
|
||||||
%define WANPIPE_VER wanpipe-util
|
%define WANPIPE_VER wanpipe-util
|
||||||
%define name %{WANPIPE_VER}
|
%define name %{WANPIPE_VER}
|
||||||
%define version 3.4.4
|
%define version 3.4.5
|
||||||
%define release 0
|
%define release 0
|
||||||
%define serial 1
|
%define serial 1
|
||||||
%define ETC_DIR /etc
|
%define ETC_DIR /etc
|
||||||
|
@ -328,6 +328,26 @@ enable_smg_log;
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
|
||||||
|
* Tue Aug 18 2009 Nenad Corbic <ncorbic@sangoma.com> - Stable - 3.4.5
|
||||||
|
=====================================================================
|
||||||
|
|
||||||
|
- New firmawre feature for A101/2/5/8: Free Run Timer Interrupt
|
||||||
|
The AFT T1/E1 cards will now provide perfect timing to zatpel/dahdi
|
||||||
|
even when the ports are not connected. The free run interrupt
|
||||||
|
will be enabled when all zaptel/dahdi ports are down, or on
|
||||||
|
inital card start. To test this feature just start a wanpipe
|
||||||
|
port with zaptel/dahdi and run zttest.
|
||||||
|
A108 firmare V38
|
||||||
|
A104/2/1/ firmware V36
|
||||||
|
|
||||||
|
- Added module inc cound when zaptel/dahdi starts.
|
||||||
|
So wanpipe drivers do not crash if one tries to unload
|
||||||
|
zaptel/dahdi before stopping wanpipe drivers.
|
||||||
|
|
||||||
|
- Dahdi 2.2 Support
|
||||||
|
- Updated for 2.6.30 kernel
|
||||||
|
|
||||||
|
|
||||||
* Fri Jun 17 2009 Nenad Corbic <ncorbic@sangoma.com> - Stable - 3.4.4
|
* Fri Jun 17 2009 Nenad Corbic <ncorbic@sangoma.com> - Stable - 3.4.4
|
||||||
=====================================================================
|
=====================================================================
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
%define KERNEL_VERSION %{?kern_ver}
|
%define KERNEL_VERSION %{?kern_ver}
|
||||||
%define WANPIPE_VER wanpipe
|
%define WANPIPE_VER wanpipe
|
||||||
%define name %{WANPIPE_VER}
|
%define name %{WANPIPE_VER}
|
||||||
%define version 3.4.4
|
%define version 3.4.5
|
||||||
%define release 0
|
%define release 0
|
||||||
%define serial 1
|
%define serial 1
|
||||||
%define UTILS_DIR /usr/sbin
|
%define UTILS_DIR /usr/sbin
|
||||||
|
@ -255,6 +255,26 @@ install_init;
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
|
||||||
|
* Tue Aug 18 2009 Nenad Corbic <ncorbic@sangoma.com> - Stable - 3.4.5
|
||||||
|
=====================================================================
|
||||||
|
|
||||||
|
- New firmawre feature for A101/2/5/8: Free Run Timer Interrupt
|
||||||
|
The AFT T1/E1 cards will now provide perfect timing to zatpel/dahdi
|
||||||
|
even when the ports are not connected. The free run interrupt
|
||||||
|
will be enabled when all zaptel/dahdi ports are down, or on
|
||||||
|
inital card start. To test this feature just start a wanpipe
|
||||||
|
port with zaptel/dahdi and run zttest.
|
||||||
|
A108 firmare V38
|
||||||
|
A104/2/1/ firmware V36
|
||||||
|
|
||||||
|
- Added module inc cound when zaptel/dahdi starts.
|
||||||
|
So wanpipe drivers do not crash if one tries to unload
|
||||||
|
zaptel/dahdi before stopping wanpipe drivers.
|
||||||
|
|
||||||
|
- Dahdi 2.2 Support
|
||||||
|
- Updated for 2.6.30 kernel
|
||||||
|
|
||||||
|
|
||||||
* Fri Jun 17 2009 Nenad Corbic <ncorbic@sangoma.com> - Stable - 3.4.4
|
* Fri Jun 17 2009 Nenad Corbic <ncorbic@sangoma.com> - Stable - 3.4.4
|
||||||
=====================================================================
|
=====================================================================
|
||||||
|
|
||||||
|
|
|
@ -2195,7 +2195,7 @@ init_global_params()
|
||||||
{
|
{
|
||||||
|
|
||||||
if [ $OSYSTEM = "Linux" ]; then
|
if [ $OSYSTEM = "Linux" ]; then
|
||||||
ROUTER_VERSION=3.4.4
|
ROUTER_VERSION=3.4.5
|
||||||
IFCONFIG_LIST=ifconfig
|
IFCONFIG_LIST=ifconfig
|
||||||
MODULE_STAT=lsmod
|
MODULE_STAT=lsmod
|
||||||
WAN_DRIVERS="wanpipe"
|
WAN_DRIVERS="wanpipe"
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
|
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
make CFLAGS=" -Wp,-MD,.wanpipe.o.d -nostdinc -iwithprefix include -D__LINUX__ -Dlinux -D__KERNEL__ -I/lib/modules/2.6.18-92.1.22.el5/build/include -DMODULE -DAF_WANPIPE_2612_FORCE_UPDATE -DWANPIPE_MOD_266_FORCE_UPDATE -m32 -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Wstrict-prototypes -Wundef -Werror-implicit-function-declaration -Os -pipe -msoft-float -fno-builtin-sprintf -fno-builtin-log2 -fno-builtin-puts -mpreferred-stack-boundary=2 -march=i686 -mtune=generic -mtune=generic -mregparm=3 -ffreestanding -I/lib/modules/2.6.18-92.1.22.el5/build/include/asm-i386/mach-generic -I/lib/modules/2.6.18-92.1.22.el5/build/include/asm-i386/mach-default -fomit-frame-pointer -g -fno-stack-protector -Wdeclaration-after-statement -Wno-pointer-sign -D__KERNEL__ -Iinclude -include include/linux/autoconf.h -I/usr/src/zaptel" PROTOCOL_DEFINES="-DCONFIG_PRODUCT_WANPIPE_BASE -DCONFIG_PRODUCT_WANPIPE_FR -DCONFIG_PRODUCT_WANPIPE_CHDLC -DCONFIG_PRODUCT_WANPIPE_PPP -DCONFIG_PRODUCT_WANPIPE_X25 -DCONFIG_PRODUCT_WANPIPE_ADSL -DCONFIG_PRODUCT_WANPIPE_LIP_ATM -DCONFIG_PRODUCT_WANPIPE_ATM -DCONFIG_PRODUCT_WANPIPE_MULTFR -DCONFIG_PRODUCT_WANPIPE_MULTPROT -DCONFIG_PRODUCT_WANPIPE_AFT -DCONFIG_PRODUCT_WANPIPE_AFT_CORE -DCONFIG_PRODUCT_WANPIPE_AFT_TE1 -DCONFIG_PRODUCT_WANPIPE_AFT_56K -DCONFIG_PRODUCT_WANPIPE_AFT_RM -DCONFIG_PRODUCT_WANPIPE_CODEC_SLINEAR_LAW -DCONFIG_PRODUCT_WANPIPE_AFT_BRI -DCONFIG_PRODUCT_WANPIPE_AFT_SERIAL -DCONFIG_PRODUCT_WANPIPE_AFT_A600 -DCONFIG_PRODUCT_WANPIPE_AFT_TE3 -DCONFIG_PRODUCT_WANPIPE_TDM_VOICE -DCONFIG_PRODUCT_WANPIPE_TDM_VOICE_DCHAN -DCONFIG_PRODUCT_WANPIPE_TDM_VOICE_DCHAN_ZAPTEL -DWANPIPE_USE_I_PRIVATE -DCONFIG_WANPIPE_HWEC "
|
make CFLAGS=" -Wp,-MD,.wanpipe.o.d -nostdinc -iwithprefix include -D__LINUX__ -Dlinux -D__KERNEL__ -I/lib/modules/2.6.18-92.1.22.el5/build/include -DMODULE -DAF_WANPIPE_2612_FORCE_UPDATE -DWANPIPE_MOD_266_FORCE_UPDATE -m32 -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Wstrict-prototypes -Wundef -Werror-implicit-function-declaration -Os -pipe -msoft-float -fno-builtin-sprintf -fno-builtin-log2 -fno-builtin-puts -mpreferred-stack-boundary=2 -march=i686 -mtune=generic -mtune=generic -mregparm=3 -ffreestanding -I/lib/modules/2.6.18-92.1.22.el5/build/include/asm-i386/mach-generic -I/lib/modules/2.6.18-92.1.22.el5/build/include/asm-i386/mach-default -fomit-frame-pointer -g -fno-stack-protector -Wdeclaration-after-statement -Wno-pointer-sign -D__KERNEL__ -Iinclude -include include/linux/autoconf.h " PROTOCOL_DEFINES="-DCONFIG_PRODUCT_WANPIPE_BASE -DCONFIG_PRODUCT_WANPIPE_XMTP2 -DAFT_XMTP2_API_SUPPORT -I/root/3.4/wanpipe/patches/kdrivers/src/xmtp2km -DCONFIG_PRODUCT_WANPIPE_AFT -DCONFIG_PRODUCT_WANPIPE_AFT_CORE -DCONFIG_PRODUCT_WANPIPE_AFT_TE1 -DCONFIG_PRODUCT_WANPIPE_AFT_56K -DCONFIG_PRODUCT_WANPIPE_AFT_RM -DCONFIG_PRODUCT_WANPIPE_CODEC_SLINEAR_LAW -DCONFIG_PRODUCT_WANPIPE_AFT_BRI -DCONFIG_PRODUCT_WANPIPE_AFT_SERIAL -DCONFIG_PRODUCT_WANPIPE_AFT_A600 -DWANPIPE_USE_I_PRIVATE -DCONFIG_WANPIPE_HWEC "
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
K 25
|
K 25
|
||||||
svn:wc:ra_dav:version-url
|
svn:wc:ra_dav:version-url
|
||||||
V 35
|
V 35
|
||||||
/svn/sangoma_mgd/!svn/ver/187/trunk
|
/svn/sangoma_mgd/!svn/ver/193/trunk
|
||||||
END
|
END
|
||||||
sigboost.h
|
sigboost.h
|
||||||
K 25
|
K 25
|
||||||
|
@ -9,17 +9,11 @@ svn:wc:ra_dav:version-url
|
||||||
V 46
|
V 46
|
||||||
/svn/sangoma_mgd/!svn/ver/188/trunk/sigboost.h
|
/svn/sangoma_mgd/!svn/ver/188/trunk/sigboost.h
|
||||||
END
|
END
|
||||||
__smg_ctrl_common
|
switch_buffer.h
|
||||||
K 25
|
K 25
|
||||||
svn:wc:ra_dav:version-url
|
svn:wc:ra_dav:version-url
|
||||||
V 53
|
V 49
|
||||||
/svn/sangoma_mgd/!svn/ver/187/trunk/__smg_ctrl_common
|
/svn/sangoma_mgd/!svn/ver/1/trunk/switch_buffer.h
|
||||||
END
|
|
||||||
sound.raw
|
|
||||||
K 25
|
|
||||||
svn:wc:ra_dav:version-url
|
|
||||||
V 43
|
|
||||||
/svn/sangoma_mgd/!svn/ver/1/trunk/sound.raw
|
|
||||||
END
|
END
|
||||||
sangoma_mgd.conf.sample
|
sangoma_mgd.conf.sample
|
||||||
K 25
|
K 25
|
||||||
|
@ -27,11 +21,17 @@ svn:wc:ra_dav:version-url
|
||||||
V 59
|
V 59
|
||||||
/svn/sangoma_mgd/!svn/ver/157/trunk/sangoma_mgd.conf.sample
|
/svn/sangoma_mgd/!svn/ver/157/trunk/sangoma_mgd.conf.sample
|
||||||
END
|
END
|
||||||
switch_buffer.h
|
sound.raw
|
||||||
K 25
|
K 25
|
||||||
svn:wc:ra_dav:version-url
|
svn:wc:ra_dav:version-url
|
||||||
V 49
|
V 43
|
||||||
/svn/sangoma_mgd/!svn/ver/1/trunk/switch_buffer.h
|
/svn/sangoma_mgd/!svn/ver/1/trunk/sound.raw
|
||||||
|
END
|
||||||
|
__smg_ctrl_common
|
||||||
|
K 25
|
||||||
|
svn:wc:ra_dav:version-url
|
||||||
|
V 53
|
||||||
|
/svn/sangoma_mgd/!svn/ver/193/trunk/__smg_ctrl_common
|
||||||
END
|
END
|
||||||
safe_sangoma
|
safe_sangoma
|
||||||
K 25
|
K 25
|
||||||
|
@ -39,23 +39,17 @@ svn:wc:ra_dav:version-url
|
||||||
V 48
|
V 48
|
||||||
/svn/sangoma_mgd/!svn/ver/174/trunk/safe_sangoma
|
/svn/sangoma_mgd/!svn/ver/174/trunk/safe_sangoma
|
||||||
END
|
END
|
||||||
smg_ctrl_pri
|
|
||||||
K 25
|
|
||||||
svn:wc:ra_dav:version-url
|
|
||||||
V 48
|
|
||||||
/svn/sangoma_mgd/!svn/ver/184/trunk/smg_ctrl_pri
|
|
||||||
END
|
|
||||||
callgettest.sh
|
callgettest.sh
|
||||||
K 25
|
K 25
|
||||||
svn:wc:ra_dav:version-url
|
svn:wc:ra_dav:version-url
|
||||||
V 48
|
V 48
|
||||||
/svn/sangoma_mgd/!svn/ver/1/trunk/callgettest.sh
|
/svn/sangoma_mgd/!svn/ver/1/trunk/callgettest.sh
|
||||||
END
|
END
|
||||||
smg_capabilities.h
|
smg_ctrl_pri
|
||||||
K 25
|
K 25
|
||||||
svn:wc:ra_dav:version-url
|
svn:wc:ra_dav:version-url
|
||||||
V 54
|
V 48
|
||||||
/svn/sangoma_mgd/!svn/ver/186/trunk/smg_capabilities.h
|
/svn/sangoma_mgd/!svn/ver/184/trunk/smg_ctrl_pri
|
||||||
END
|
END
|
||||||
ss7box
|
ss7box
|
||||||
K 25
|
K 25
|
||||||
|
@ -63,11 +57,11 @@ svn:wc:ra_dav:version-url
|
||||||
V 40
|
V 40
|
||||||
/svn/sangoma_mgd/!svn/ver/1/trunk/ss7box
|
/svn/sangoma_mgd/!svn/ver/1/trunk/ss7box
|
||||||
END
|
END
|
||||||
re-sync.sh
|
smg_capabilities.h
|
||||||
K 25
|
K 25
|
||||||
svn:wc:ra_dav:version-url
|
svn:wc:ra_dav:version-url
|
||||||
V 45
|
V 54
|
||||||
/svn/sangoma_mgd/!svn/ver/20/trunk/re-sync.sh
|
/svn/sangoma_mgd/!svn/ver/186/trunk/smg_capabilities.h
|
||||||
END
|
END
|
||||||
call_signal.c
|
call_signal.c
|
||||||
K 25
|
K 25
|
||||||
|
@ -75,11 +69,23 @@ svn:wc:ra_dav:version-url
|
||||||
V 49
|
V 49
|
||||||
/svn/sangoma_mgd/!svn/ver/186/trunk/call_signal.c
|
/svn/sangoma_mgd/!svn/ver/186/trunk/call_signal.c
|
||||||
END
|
END
|
||||||
|
re-sync.sh
|
||||||
|
K 25
|
||||||
|
svn:wc:ra_dav:version-url
|
||||||
|
V 45
|
||||||
|
/svn/sangoma_mgd/!svn/ver/20/trunk/re-sync.sh
|
||||||
|
END
|
||||||
sangoma_mgd_logger.c
|
sangoma_mgd_logger.c
|
||||||
K 25
|
K 25
|
||||||
svn:wc:ra_dav:version-url
|
svn:wc:ra_dav:version-url
|
||||||
V 56
|
V 56
|
||||||
/svn/sangoma_mgd/!svn/ver/186/trunk/sangoma_mgd_logger.c
|
/svn/sangoma_mgd/!svn/ver/189/trunk/sangoma_mgd_logger.c
|
||||||
|
END
|
||||||
|
sangoma_mgd.c
|
||||||
|
K 25
|
||||||
|
svn:wc:ra_dav:version-url
|
||||||
|
V 49
|
||||||
|
/svn/sangoma_mgd/!svn/ver/193/trunk/sangoma_mgd.c
|
||||||
END
|
END
|
||||||
woomera.conf
|
woomera.conf
|
||||||
K 25
|
K 25
|
||||||
|
@ -87,12 +93,6 @@ svn:wc:ra_dav:version-url
|
||||||
V 46
|
V 46
|
||||||
/svn/sangoma_mgd/!svn/ver/1/trunk/woomera.conf
|
/svn/sangoma_mgd/!svn/ver/1/trunk/woomera.conf
|
||||||
END
|
END
|
||||||
sangoma_mgd.c
|
|
||||||
K 25
|
|
||||||
svn:wc:ra_dav:version-url
|
|
||||||
V 49
|
|
||||||
/svn/sangoma_mgd/!svn/ver/186/trunk/sangoma_mgd.c
|
|
||||||
END
|
|
||||||
call_signal.h
|
call_signal.h
|
||||||
K 25
|
K 25
|
||||||
svn:wc:ra_dav:version-url
|
svn:wc:ra_dav:version-url
|
||||||
|
@ -115,7 +115,7 @@ sangoma_mgd.h
|
||||||
K 25
|
K 25
|
||||||
svn:wc:ra_dav:version-url
|
svn:wc:ra_dav:version-url
|
||||||
V 49
|
V 49
|
||||||
/svn/sangoma_mgd/!svn/ver/186/trunk/sangoma_mgd.h
|
/svn/sangoma_mgd/!svn/ver/189/trunk/sangoma_mgd.h
|
||||||
END
|
END
|
||||||
q931_cause.h
|
q931_cause.h
|
||||||
K 25
|
K 25
|
||||||
|
@ -157,7 +157,7 @@ sangoma_mgd_common.h
|
||||||
K 25
|
K 25
|
||||||
svn:wc:ra_dav:version-url
|
svn:wc:ra_dav:version-url
|
||||||
V 56
|
V 56
|
||||||
/svn/sangoma_mgd/!svn/ver/105/trunk/sangoma_mgd_common.h
|
/svn/sangoma_mgd/!svn/ver/189/trunk/sangoma_mgd_common.h
|
||||||
END
|
END
|
||||||
switch_buffer.c
|
switch_buffer.c
|
||||||
K 25
|
K 25
|
||||||
|
@ -169,7 +169,7 @@ Makefile
|
||||||
K 25
|
K 25
|
||||||
svn:wc:ra_dav:version-url
|
svn:wc:ra_dav:version-url
|
||||||
V 44
|
V 44
|
||||||
/svn/sangoma_mgd/!svn/ver/184/trunk/Makefile
|
/svn/sangoma_mgd/!svn/ver/192/trunk/Makefile
|
||||||
END
|
END
|
||||||
sangoma_mgd_memdbg.h
|
sangoma_mgd_memdbg.h
|
||||||
K 25
|
K 25
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
8
|
8
|
||||||
|
|
||||||
dir
|
dir
|
||||||
187
|
193
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd/trunk
|
https://www.sangomapbx.com/svn/sangoma_mgd/trunk
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd
|
https://www.sangomapbx.com/svn/sangoma_mgd
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
2009-07-16T22:05:51.273965Z
|
2009-08-17T22:04:54.377308Z
|
||||||
187
|
193
|
||||||
ncorbic
|
ncorbic
|
||||||
|
|
||||||
|
|
||||||
|
@ -31,7 +31,7 @@ dir
|
||||||
|
|
||||||
sigboost.h
|
sigboost.h
|
||||||
file
|
file
|
||||||
188
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -74,10 +74,10 @@ file
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
2009-07-17T14:59:38.000000Z
|
2009-08-18T17:27:36.000000Z
|
||||||
8ea7bc6e90fa0336337bc6e1a24d0557
|
65a9acd49617d8c8a018c7196dcc4443
|
||||||
2009-07-16T22:05:51.273965Z
|
2009-08-17T22:04:54.377308Z
|
||||||
187
|
193
|
||||||
ncorbic
|
ncorbic
|
||||||
has-props
|
has-props
|
||||||
|
|
||||||
|
@ -214,11 +214,23 @@ file
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
2009-04-30T20:22:39.000000Z
|
2009-08-18T17:27:36.000000Z
|
||||||
f413ade50c4afbd2d267f310140b4019
|
3d8959b1ec61651dde9581f2298c1d61
|
||||||
2008-07-25T16:52:12.448857Z
|
2009-07-24T16:42:00.883153Z
|
||||||
105
|
189
|
||||||
ncorbic
|
davidy
|
||||||
|
|
||||||
|
Makefile
|
||||||
|
file
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
2009-08-18T17:27:36.000000Z
|
||||||
|
f65c77a3e5f570fee7081286296d14ea
|
||||||
|
2009-08-10T15:44:42.284278Z
|
||||||
|
192
|
||||||
|
davidy
|
||||||
|
|
||||||
sangoma_mgd_memdbg.h
|
sangoma_mgd_memdbg.h
|
||||||
file
|
file
|
||||||
|
@ -232,18 +244,6 @@ file
|
||||||
62
|
62
|
||||||
ncorbic
|
ncorbic
|
||||||
|
|
||||||
Makefile
|
|
||||||
file
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
2009-07-14T20:11:42.000000Z
|
|
||||||
018b18fa2fdf19c1a302c2982eb3b869
|
|
||||||
2009-07-13T22:25:11.834953Z
|
|
||||||
184
|
|
||||||
ncorbic
|
|
||||||
|
|
||||||
sound.raw
|
sound.raw
|
||||||
file
|
file
|
||||||
|
|
||||||
|
@ -288,10 +288,22 @@ file
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
2009-07-17T14:59:38.000000Z
|
2009-08-18T17:27:36.000000Z
|
||||||
d6c82ea9860174d0090e7f8dadd03ed9
|
e37c1c63f8594ae025098e6510327ee0
|
||||||
2009-07-16T21:35:39.883599Z
|
2009-07-24T16:42:00.883153Z
|
||||||
186
|
189
|
||||||
|
davidy
|
||||||
|
|
||||||
|
sangoma_mgd.c
|
||||||
|
file
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
2009-08-18T17:27:36.000000Z
|
||||||
|
96a2446359704f7ef0373f40439328be
|
||||||
|
2009-08-17T22:04:54.377308Z
|
||||||
|
193
|
||||||
ncorbic
|
ncorbic
|
||||||
|
|
||||||
woomera.conf
|
woomera.conf
|
||||||
|
@ -306,18 +318,6 @@ file
|
||||||
1
|
1
|
||||||
root
|
root
|
||||||
|
|
||||||
sangoma_mgd.c
|
|
||||||
file
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
2009-07-17T14:59:38.000000Z
|
|
||||||
40a0e89163a25c739af3beefe4cd2073
|
|
||||||
2009-07-16T21:35:39.883599Z
|
|
||||||
186
|
|
||||||
ncorbic
|
|
||||||
|
|
||||||
list.h
|
list.h
|
||||||
file
|
file
|
||||||
|
|
||||||
|
@ -336,11 +336,11 @@ file
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
2009-07-17T14:59:38.000000Z
|
2009-08-18T17:27:36.000000Z
|
||||||
44395c5b5277ed48910036b82039958b
|
adac2a08453aa9f2077dcb8abc5d7d5b
|
||||||
2009-07-16T21:35:39.883599Z
|
2009-07-24T16:42:00.883153Z
|
||||||
186
|
189
|
||||||
ncorbic
|
davidy
|
||||||
|
|
||||||
q931_cause.h
|
q931_cause.h
|
||||||
file
|
file
|
||||||
|
|
|
@ -30,7 +30,14 @@ ifndef KINSTDIR
|
||||||
endif
|
endif
|
||||||
|
|
||||||
CC = gcc
|
CC = gcc
|
||||||
INSTALLPREFIX=
|
|
||||||
|
ifndef DESTDIR
|
||||||
|
ifdef INSTALLPREFIX
|
||||||
|
DESTDIR=$(INSTALL_PREFIX)
|
||||||
|
else
|
||||||
|
DESTDIR=
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
INCLUDES = -I ../../ssmg/libsangoma.trunk -I. -I ../../patches/kdrivers/include -I ../../patches/kdrivers/wanec/oct6100_api/include -I ../../patches/kdrivers/wanec -I/usr/local/include -I../../patches/kdrivers/include -I/usr/include/wanpipe -Ilib/libteletone/src
|
INCLUDES = -I ../../ssmg/libsangoma.trunk -I. -I ../../patches/kdrivers/include -I ../../patches/kdrivers/wanec/oct6100_api/include -I ../../patches/kdrivers/wanec -I/usr/local/include -I../../patches/kdrivers/include -I/usr/include/wanpipe -Ilib/libteletone/src
|
||||||
|
|
||||||
|
@ -69,7 +76,7 @@ endif
|
||||||
all: sangoma_mgd
|
all: sangoma_mgd
|
||||||
|
|
||||||
libs:
|
libs:
|
||||||
$(shell cd lib/libteletone; ./configure --prefix=$(INSTALLPREFIX); cd ../../; )
|
$(shell cd lib/libteletone; ./configure --prefix=$(DESTDIR); cd ../../; )
|
||||||
$(MAKE) -C lib/libteletone all
|
$(MAKE) -C lib/libteletone all
|
||||||
|
|
||||||
switch_buffer.o: switch_buffer.c switch_buffer.h
|
switch_buffer.o: switch_buffer.c switch_buffer.h
|
||||||
|
@ -104,13 +111,13 @@ distclean: clean
|
||||||
install: all install_smg old_cleanup
|
install: all install_smg old_cleanup
|
||||||
|
|
||||||
install_smg: old_cleanup
|
install_smg: old_cleanup
|
||||||
install -D -m 755 sangoma_mgd $(INSTALLPREFIX)/usr/sbin/sangoma_mgd
|
install -D -m 755 sangoma_mgd $(DESTDIR)/usr/sbin/sangoma_mgd
|
||||||
@if [ ! -e $(INSTALLPREFIX)/etc/sangoma_mgd.conf ]; then \
|
@if [ ! -e $(DESTDIR)/etc/sangoma_mgd.conf ]; then \
|
||||||
install -D -m 755 sangoma_mgd.conf.sample $(INSTALLPREFIX)/etc/sangoma_mgd.conf; \
|
install -D -m 755 sangoma_mgd.conf.sample $(DESTDIR)/etc/sangoma_mgd.conf; \
|
||||||
fi
|
fi
|
||||||
|
|
||||||
install -D -m 755 ./safe_sangoma $(INSTALLPREFIX)/usr/sbin/safe_sangoma
|
install -D -m 755 ./safe_sangoma $(DESTDIR)/usr/sbin/safe_sangoma
|
||||||
install -D -m 755 ./__smg_ctrl_common $(INSTALLPREFIX)/usr/sbin/__smg_ctrl_common
|
install -D -m 755 ./__smg_ctrl_common $(DESTDIR)/usr/sbin/__smg_ctrl_common
|
||||||
|
|
||||||
ifeq "${PRI}" "YES"
|
ifeq "${PRI}" "YES"
|
||||||
@echo "PRI control scripts installed"
|
@echo "PRI control scripts installed"
|
||||||
|
@ -121,18 +128,18 @@ ifeq "${PRI}" "YES"
|
||||||
else
|
else
|
||||||
ifeq "${BRI}" "YES"
|
ifeq "${BRI}" "YES"
|
||||||
@echo "BRI control scripts installed"
|
@echo "BRI control scripts installed"
|
||||||
@if [ ! -e $(INSTALLPREFIX)/etc/sangoma_mgd.conf ]; then \
|
@if [ ! -e $(DESTDIR)/etc/sangoma_mgd.conf ]; then \
|
||||||
install -D -m 755 sangoma_mgd.conf.sample.bri $(INSTALLPREFIX)/etc/sangoma_mgd.conf; \
|
install -D -m 755 sangoma_mgd.conf.sample.bri $(DESTDIR)/etc/sangoma_mgd.conf; \
|
||||||
fi
|
fi
|
||||||
install -D -m 755 smg_ctrl_bri $(INSTALLPREFIX)/usr/sbin/smg_ctrl
|
install -D -m 755 smg_ctrl_bri $(DESTDIR)/usr/sbin/smg_ctrl
|
||||||
else
|
else
|
||||||
@echo "SS7 control scripts installed"
|
@echo "SS7 control scripts installed"
|
||||||
@if [ ! -e $(INSTALLPREFIX)/etc/sangoma_mgd.conf ]; then \
|
@if [ ! -e $(DESTDIR)/etc/sangoma_mgd.conf ]; then \
|
||||||
install -D -m 755 sangoma_mgd.conf.sample.ss7 $(INSTALLPREFIX)/etc/sangoma_mgd.conf; \
|
install -D -m 755 sangoma_mgd.conf.sample.ss7 $(DESTDIR)/etc/sangoma_mgd.conf; \
|
||||||
fi
|
fi
|
||||||
install -D -m 755 smg_ctrl_ss7 $(INSTALLPREFIX)/usr/sbin/smg_ctrl
|
install -D -m 755 smg_ctrl_ss7 $(DESTDIR)/usr/sbin/smg_ctrl
|
||||||
install -D -m 755 scripts/init.d/smgss7_init_ctrl $(INSTALLPREFIX)/etc/init.d/smgss7_init_ctrl
|
install -D -m 755 scripts/init.d/smgss7_init_ctrl $(DESTDIR)/etc/init.d/smgss7_init_ctrl
|
||||||
install -D -m 755 scripts/init.d/smgss7_init_ctrl $(INSTALLPREFIX)/usr/sbin/smgss7_init_ctrl
|
install -D -m 755 scripts/init.d/smgss7_init_ctrl $(DESTDIR)/usr/sbin/smgss7_init_ctrl
|
||||||
|
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
@ -145,7 +152,7 @@ old_cleanup:
|
||||||
install_all: all install_smg
|
install_all: all install_smg
|
||||||
|
|
||||||
uninstall:
|
uninstall:
|
||||||
/bin/rm $(INSTALLPREFIX)/usr/sbin/sangoma_mgd $(INSTALLPREFIX)/etc/sangoma_mgd.conf
|
/bin/rm $(DESTDIR)/usr/sbin/sangoma_mgd $(DESTDIR)/etc/sangoma_mgd.conf
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -453,7 +453,7 @@ function show_calls()
|
||||||
check_pid_sigd
|
check_pid_sigd
|
||||||
eval "kill -SIGRTMIN+3 $(pidof $sigd) "
|
eval "kill -SIGRTMIN+3 $(pidof $sigd) "
|
||||||
rc=$?
|
rc=$?
|
||||||
if [ $rc-eq 0 ]; then
|
if [ $rc -eq 0 ]; then
|
||||||
echo "BRI: Show calls"
|
echo "BRI: Show calls"
|
||||||
else
|
else
|
||||||
echo "BRI: Failed to send command"
|
echo "BRI: Failed to send command"
|
||||||
|
|
|
@ -9,6 +9,11 @@
|
||||||
*
|
*
|
||||||
* =============================================
|
* =============================================
|
||||||
*
|
*
|
||||||
|
*
|
||||||
|
* v1.51 David Yat Sin <dyatsin@sangoma.com>
|
||||||
|
* MAX_SPANS increased to 32.
|
||||||
|
* Fix for server.process_table declared incorrectly
|
||||||
|
*
|
||||||
* v1.50 Nenad Corbic <ncorbic@sangoma.com>
|
* v1.50 Nenad Corbic <ncorbic@sangoma.com>
|
||||||
* Logic to support multiple woomera clients hanging up the
|
* Logic to support multiple woomera clients hanging up the
|
||||||
* channel. This feature now supprorts woomera loadbalancing
|
* channel. This feature now supprorts woomera loadbalancing
|
||||||
|
@ -291,7 +296,7 @@ struct woomera_server server;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
#define SMG_VERSION "v1.50"
|
#define SMG_VERSION "v1.51"
|
||||||
|
|
||||||
/* enable early media */
|
/* enable early media */
|
||||||
#if 1
|
#if 1
|
||||||
|
@ -333,7 +338,7 @@ static int drop_seq=0;
|
||||||
|
|
||||||
const char WELCOME_TEXT[] =
|
const char WELCOME_TEXT[] =
|
||||||
"================================================================================\n"
|
"================================================================================\n"
|
||||||
"Sangoma Media Gateway Daemon v1.50 \n"
|
"Sangoma Media Gateway Daemon v1.51 \n"
|
||||||
"\n"
|
"\n"
|
||||||
"TDM Signal Media Gateway for Sangoma/Wanpipe Cards\n"
|
"TDM Signal Media Gateway for Sangoma/Wanpipe Cards\n"
|
||||||
"Copyright 2005, 2006, 2007 \n"
|
"Copyright 2005, 2006, 2007 \n"
|
||||||
|
@ -2137,7 +2142,7 @@ static struct woomera_interface * launch_woomera_loop_thread(short_signal_event_
|
||||||
pthread_mutex_lock(&server.process_lock);
|
pthread_mutex_lock(&server.process_lock);
|
||||||
server.process_table[event->span][event->chan].dev = NULL;
|
server.process_table[event->span][event->chan].dev = NULL;
|
||||||
memset(server.process_table[event->span][event->chan].session,0,SMG_SESSION_NAME_SZ);
|
memset(server.process_table[event->span][event->chan].session,0,SMG_SESSION_NAME_SZ);
|
||||||
pthread_mutex_unlock(&server.process_lock);
|
pthread_mutex_unlock(&server.process_lock);
|
||||||
smg_free(woomera);
|
smg_free(woomera);
|
||||||
log_printf(SMG_LOG_ALL, server.log, "Critical ERROR: memory/socket error\n");
|
log_printf(SMG_LOG_ALL, server.log, "Critical ERROR: memory/socket error\n");
|
||||||
return NULL;
|
return NULL;
|
||||||
|
@ -4071,11 +4076,12 @@ static void handle_remove_loop(short_signal_event_t *event)
|
||||||
|
|
||||||
static void handle_call_stop(short_signal_event_t *event)
|
static void handle_call_stop(short_signal_event_t *event)
|
||||||
{
|
{
|
||||||
struct woomera_interface *woomera;
|
struct woomera_interface *woomera;
|
||||||
int ack=0;
|
int ack=0;
|
||||||
|
|
||||||
pthread_mutex_lock(&server.process_lock);
|
woomera = NULL;
|
||||||
woomera = server.process_table[event->span][event->chan].dev;
|
pthread_mutex_lock(&server.process_lock);
|
||||||
|
woomera = server.process_table[event->span][event->chan].dev;
|
||||||
if (woomera) {
|
if (woomera) {
|
||||||
|
|
||||||
if (!woomera_test_flag(woomera, WFLAG_WAIT_FOR_NACK_ACK_SENT) &&
|
if (!woomera_test_flag(woomera, WFLAG_WAIT_FOR_NACK_ACK_SENT) &&
|
||||||
|
@ -4094,7 +4100,7 @@ static void handle_call_stop(short_signal_event_t *event)
|
||||||
memset(server.process_table[event->span][event->chan].session,0,SMG_SESSION_NAME_SZ);
|
memset(server.process_table[event->span][event->chan].session,0,SMG_SESSION_NAME_SZ);
|
||||||
pthread_mutex_unlock(&server.process_lock);
|
pthread_mutex_unlock(&server.process_lock);
|
||||||
|
|
||||||
if (woomera) {
|
if (woomera) {
|
||||||
|
|
||||||
woomera_set_cause_topbx(woomera,event->release_cause);
|
woomera_set_cause_topbx(woomera,event->release_cause);
|
||||||
|
|
||||||
|
@ -5740,8 +5746,13 @@ static int woomera_shutdown(void)
|
||||||
int main(int argc, char *argv[])
|
int main(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
|
|
||||||
|
memset(&server,0,sizeof(server));
|
||||||
|
memset(&woomera_dead_dev,0,sizeof(woomera_dead_dev));
|
||||||
|
|
||||||
mlockall(MCL_FUTURE);
|
mlockall(MCL_FUTURE);
|
||||||
|
memset(&server, 0, sizeof(server));
|
||||||
|
memset(&woomera_dead_dev, 0, sizeof(woomera_dead_dev));
|
||||||
|
|
||||||
ret=nice(-5);
|
ret=nice(-5);
|
||||||
|
|
||||||
|
|
|
@ -298,7 +298,8 @@ struct woomera_session {
|
||||||
#define CORE_TANK_LEN CORE_MAX_CHAN_PER_SPAN*CORE_MAX_SPANS
|
#define CORE_TANK_LEN CORE_MAX_CHAN_PER_SPAN*CORE_MAX_SPANS
|
||||||
|
|
||||||
struct woomera_server {
|
struct woomera_server {
|
||||||
struct woomera_session process_table[CORE_MAX_CHAN_PER_SPAN][CORE_MAX_SPANS];
|
// struct woomera_session process_table[CORE_MAX_CHAN_PER_SPAN][CORE_MAX_SPANS];
|
||||||
|
struct woomera_session process_table[CORE_MAX_SPANS][CORE_MAX_CHAN_PER_SPAN];
|
||||||
struct woomera_interface *holding_tank[CORE_TANK_LEN];
|
struct woomera_interface *holding_tank[CORE_TANK_LEN];
|
||||||
int holding_tank_index;
|
int holding_tank_index;
|
||||||
struct woomera_interface master_connection;
|
struct woomera_interface master_connection;
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
#define __SMG_COMMON_H_
|
#define __SMG_COMMON_H_
|
||||||
|
|
||||||
|
|
||||||
#define WOOMERA_MAX_SPAN 24
|
#define WOOMERA_MAX_SPAN 32
|
||||||
#define WOOMERA_MAX_CHAN 31
|
#define WOOMERA_MAX_CHAN 31
|
||||||
|
|
||||||
#define WOOMERA_BRI_MAX_SPAN 24
|
#define WOOMERA_BRI_MAX_SPAN 32
|
||||||
#define WOOMERA_BRI_MAX_CHAN 2
|
#define WOOMERA_BRI_MAX_CHAN 2
|
||||||
|
|
||||||
extern int max_spans;
|
extern int max_spans;
|
||||||
|
|
|
@ -49,7 +49,7 @@ void __log_printf(int level, FILE *fp, char *file, const char *func, int line, c
|
||||||
fp = server.log;
|
fp = server.log;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (level && level >= server.debug && level < 100) {
|
if (level && level > server.debug && level < 100) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -30,7 +30,14 @@ ifndef KINSTDIR
|
||||||
endif
|
endif
|
||||||
|
|
||||||
CC = gcc
|
CC = gcc
|
||||||
INSTALLPREFIX=
|
|
||||||
|
ifndef DESTDIR
|
||||||
|
ifdef INSTALLPREFIX
|
||||||
|
DESTDIR=$(INSTALL_PREFIX)
|
||||||
|
else
|
||||||
|
DESTDIR=
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
INCLUDES = -I ../../ssmg/libsangoma.trunk -I. -I ../../patches/kdrivers/include -I ../../patches/kdrivers/wanec/oct6100_api/include -I ../../patches/kdrivers/wanec -I/usr/local/include -I../../patches/kdrivers/include -I/usr/include/wanpipe -Ilib/libteletone/src
|
INCLUDES = -I ../../ssmg/libsangoma.trunk -I. -I ../../patches/kdrivers/include -I ../../patches/kdrivers/wanec/oct6100_api/include -I ../../patches/kdrivers/wanec -I/usr/local/include -I../../patches/kdrivers/include -I/usr/include/wanpipe -Ilib/libteletone/src
|
||||||
|
|
||||||
|
@ -69,7 +76,7 @@ endif
|
||||||
all: sangoma_mgd
|
all: sangoma_mgd
|
||||||
|
|
||||||
libs:
|
libs:
|
||||||
$(shell cd lib/libteletone; ./configure --prefix=$(INSTALLPREFIX); cd ../../; )
|
$(shell cd lib/libteletone; ./configure --prefix=$(DESTDIR); cd ../../; )
|
||||||
$(MAKE) -C lib/libteletone all
|
$(MAKE) -C lib/libteletone all
|
||||||
|
|
||||||
switch_buffer.o: switch_buffer.c switch_buffer.h
|
switch_buffer.o: switch_buffer.c switch_buffer.h
|
||||||
|
@ -104,13 +111,13 @@ distclean: clean
|
||||||
install: all install_smg old_cleanup
|
install: all install_smg old_cleanup
|
||||||
|
|
||||||
install_smg: old_cleanup
|
install_smg: old_cleanup
|
||||||
install -D -m 755 sangoma_mgd $(INSTALLPREFIX)/usr/sbin/sangoma_mgd
|
install -D -m 755 sangoma_mgd $(DESTDIR)/usr/sbin/sangoma_mgd
|
||||||
@if [ ! -e $(INSTALLPREFIX)/etc/sangoma_mgd.conf ]; then \
|
@if [ ! -e $(DESTDIR)/etc/sangoma_mgd.conf ]; then \
|
||||||
install -D -m 755 sangoma_mgd.conf.sample $(INSTALLPREFIX)/etc/sangoma_mgd.conf; \
|
install -D -m 755 sangoma_mgd.conf.sample $(DESTDIR)/etc/sangoma_mgd.conf; \
|
||||||
fi
|
fi
|
||||||
|
|
||||||
install -D -m 755 ./safe_sangoma $(INSTALLPREFIX)/usr/sbin/safe_sangoma
|
install -D -m 755 ./safe_sangoma $(DESTDIR)/usr/sbin/safe_sangoma
|
||||||
install -D -m 755 ./__smg_ctrl_common $(INSTALLPREFIX)/usr/sbin/__smg_ctrl_common
|
install -D -m 755 ./__smg_ctrl_common $(DESTDIR)/usr/sbin/__smg_ctrl_common
|
||||||
|
|
||||||
ifeq "${PRI}" "YES"
|
ifeq "${PRI}" "YES"
|
||||||
@echo "PRI control scripts installed"
|
@echo "PRI control scripts installed"
|
||||||
|
@ -121,18 +128,18 @@ ifeq "${PRI}" "YES"
|
||||||
else
|
else
|
||||||
ifeq "${BRI}" "YES"
|
ifeq "${BRI}" "YES"
|
||||||
@echo "BRI control scripts installed"
|
@echo "BRI control scripts installed"
|
||||||
@if [ ! -e $(INSTALLPREFIX)/etc/sangoma_mgd.conf ]; then \
|
@if [ ! -e $(DESTDIR)/etc/sangoma_mgd.conf ]; then \
|
||||||
install -D -m 755 sangoma_mgd.conf.sample.bri $(INSTALLPREFIX)/etc/sangoma_mgd.conf; \
|
install -D -m 755 sangoma_mgd.conf.sample.bri $(DESTDIR)/etc/sangoma_mgd.conf; \
|
||||||
fi
|
fi
|
||||||
install -D -m 755 smg_ctrl_bri $(INSTALLPREFIX)/usr/sbin/smg_ctrl
|
install -D -m 755 smg_ctrl_bri $(DESTDIR)/usr/sbin/smg_ctrl
|
||||||
else
|
else
|
||||||
@echo "SS7 control scripts installed"
|
@echo "SS7 control scripts installed"
|
||||||
@if [ ! -e $(INSTALLPREFIX)/etc/sangoma_mgd.conf ]; then \
|
@if [ ! -e $(DESTDIR)/etc/sangoma_mgd.conf ]; then \
|
||||||
install -D -m 755 sangoma_mgd.conf.sample.ss7 $(INSTALLPREFIX)/etc/sangoma_mgd.conf; \
|
install -D -m 755 sangoma_mgd.conf.sample.ss7 $(DESTDIR)/etc/sangoma_mgd.conf; \
|
||||||
fi
|
fi
|
||||||
install -D -m 755 smg_ctrl_ss7 $(INSTALLPREFIX)/usr/sbin/smg_ctrl
|
install -D -m 755 smg_ctrl_ss7 $(DESTDIR)/usr/sbin/smg_ctrl
|
||||||
install -D -m 755 scripts/init.d/smgss7_init_ctrl $(INSTALLPREFIX)/etc/init.d/smgss7_init_ctrl
|
install -D -m 755 scripts/init.d/smgss7_init_ctrl $(DESTDIR)/etc/init.d/smgss7_init_ctrl
|
||||||
install -D -m 755 scripts/init.d/smgss7_init_ctrl $(INSTALLPREFIX)/usr/sbin/smgss7_init_ctrl
|
install -D -m 755 scripts/init.d/smgss7_init_ctrl $(DESTDIR)/usr/sbin/smgss7_init_ctrl
|
||||||
|
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
@ -145,7 +152,7 @@ old_cleanup:
|
||||||
install_all: all install_smg
|
install_all: all install_smg
|
||||||
|
|
||||||
uninstall:
|
uninstall:
|
||||||
/bin/rm $(INSTALLPREFIX)/usr/sbin/sangoma_mgd $(INSTALLPREFIX)/etc/sangoma_mgd.conf
|
/bin/rm $(DESTDIR)/usr/sbin/sangoma_mgd $(DESTDIR)/etc/sangoma_mgd.conf
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -453,7 +453,7 @@ function show_calls()
|
||||||
check_pid_sigd
|
check_pid_sigd
|
||||||
eval "kill -SIGRTMIN+3 $(pidof $sigd) "
|
eval "kill -SIGRTMIN+3 $(pidof $sigd) "
|
||||||
rc=$?
|
rc=$?
|
||||||
if [ $rc-eq 0 ]; then
|
if [ $rc -eq 0 ]; then
|
||||||
echo "BRI: Show calls"
|
echo "BRI: Show calls"
|
||||||
else
|
else
|
||||||
echo "BRI: Failed to send command"
|
echo "BRI: Failed to send command"
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
8
|
8
|
||||||
|
|
||||||
dir
|
dir
|
||||||
187
|
193
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/app
|
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/app
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd
|
https://www.sangomapbx.com/svn/sangoma_mgd
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
8
|
8
|
||||||
|
|
||||||
dir
|
dir
|
||||||
187
|
193
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/conf
|
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/conf
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd
|
https://www.sangomapbx.com/svn/sangoma_mgd
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
8
|
8
|
||||||
|
|
||||||
dir
|
dir
|
||||||
187
|
193
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/conf_bri
|
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/conf_bri
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd
|
https://www.sangomapbx.com/svn/sangoma_mgd
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
K 25
|
K 25
|
||||||
svn:wc:ra_dav:version-url
|
svn:wc:ra_dav:version-url
|
||||||
V 39
|
V 39
|
||||||
/svn/sangoma_mgd/!svn/ver/149/trunk/lib
|
/svn/sangoma_mgd/!svn/ver/190/trunk/lib
|
||||||
END
|
END
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
8
|
8
|
||||||
|
|
||||||
dir
|
dir
|
||||||
187
|
193
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/lib
|
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/lib
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd
|
https://www.sangomapbx.com/svn/sangoma_mgd
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
2009-03-03T20:17:37.440465Z
|
2009-07-27T20:06:20.593649Z
|
||||||
149
|
190
|
||||||
davidy
|
davidy
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,17 +0,0 @@
|
||||||
K 25
|
|
||||||
svn:wc:ra_dav:version-url
|
|
||||||
V 57
|
|
||||||
/svn/sangoma_mgd/!svn/ver/102/trunk/lib/libteletone/.deps
|
|
||||||
END
|
|
||||||
libteletone_la-libteletone_detect.Plo
|
|
||||||
K 25
|
|
||||||
svn:wc:ra_dav:version-url
|
|
||||||
V 95
|
|
||||||
/svn/sangoma_mgd/!svn/ver/102/trunk/lib/libteletone/.deps/libteletone_la-libteletone_detect.Plo
|
|
||||||
END
|
|
||||||
libteletone_la-libteletone_generate.Plo
|
|
||||||
K 25
|
|
||||||
svn:wc:ra_dav:version-url
|
|
||||||
V 97
|
|
||||||
/svn/sangoma_mgd/!svn/ver/102/trunk/lib/libteletone/.deps/libteletone_la-libteletone_generate.Plo
|
|
||||||
END
|
|
|
@ -1,52 +0,0 @@
|
||||||
8
|
|
||||||
|
|
||||||
dir
|
|
||||||
187
|
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/lib/libteletone/.deps
|
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
2008-07-25T16:12:13.826864Z
|
|
||||||
102
|
|
||||||
ncorbic
|
|
||||||
|
|
||||||
|
|
||||||
svn:special svn:externals svn:needs-lock
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
27f70977-ab3a-0410-9ff6-8a87bf49d3db
|
|
||||||
|
|
||||||
libteletone_la-libteletone_detect.Plo
|
|
||||||
file
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
2009-06-16T20:18:46.000000Z
|
|
||||||
866ad37f0012aa596611f955bd7be8c2
|
|
||||||
2008-07-25T16:12:13.826864Z
|
|
||||||
102
|
|
||||||
ncorbic
|
|
||||||
|
|
||||||
libteletone_la-libteletone_generate.Plo
|
|
||||||
file
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
2009-06-16T20:18:46.000000Z
|
|
||||||
a4d2e5ac183ccde08b85bf8fe2eafcfe
|
|
||||||
2008-07-25T16:12:13.826864Z
|
|
||||||
102
|
|
||||||
ncorbic
|
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
8
|
|
|
@ -1,158 +0,0 @@
|
||||||
libteletone_la-libteletone_detect.lo libteletone_la-libteletone_detect.o: \
|
|
||||||
src/libteletone_detect.c ./src/libteletone_detect.h ./src/libteletone.h \
|
|
||||||
./src/libteletone_generate.h /usr/include/stdio.h \
|
|
||||||
/usr/include/features.h /usr/include/sys/cdefs.h \
|
|
||||||
/usr/include/gnu/stubs.h \
|
|
||||||
/usr/lib/gcc/i386-redhat-linux/3.4.6/include/stddef.h \
|
|
||||||
/usr/include/bits/types.h /usr/include/bits/wordsize.h \
|
|
||||||
/usr/include/bits/typesizes.h /usr/include/libio.h \
|
|
||||||
/usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \
|
|
||||||
/usr/include/gconv.h \
|
|
||||||
/usr/lib/gcc/i386-redhat-linux/3.4.6/include/stdarg.h \
|
|
||||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
|
||||||
/usr/include/bits/stdio.h /usr/include/stdlib.h \
|
|
||||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
|
||||||
/usr/include/endian.h /usr/include/bits/endian.h /usr/include/xlocale.h \
|
|
||||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
|
||||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
|
||||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
|
||||||
/usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h \
|
|
||||||
/usr/include/alloca.h /usr/include/stdint.h /usr/include/sys/stat.h \
|
|
||||||
/usr/include/bits/stat.h /usr/include/fcntl.h /usr/include/bits/fcntl.h \
|
|
||||||
/usr/include/math.h /usr/include/bits/huge_val.h \
|
|
||||||
/usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
|
|
||||||
/usr/include/bits/inf.h /usr/include/bits/nan.h \
|
|
||||||
/usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
|
|
||||||
/usr/include/bits/mathinline.h /usr/include/string.h \
|
|
||||||
/usr/include/bits/string.h /usr/include/bits/string2.h \
|
|
||||||
/usr/include/errno.h /usr/include/bits/errno.h \
|
|
||||||
/usr/include/linux/errno.h /usr/include/asm/errno.h \
|
|
||||||
/usr/include/unistd.h /usr/include/bits/posix_opt.h \
|
|
||||||
/usr/include/bits/environments.h /usr/include/bits/confname.h \
|
|
||||||
/usr/include/getopt.h /usr/include/assert.h
|
|
||||||
|
|
||||||
./src/libteletone_detect.h:
|
|
||||||
|
|
||||||
./src/libteletone.h:
|
|
||||||
|
|
||||||
./src/libteletone_generate.h:
|
|
||||||
|
|
||||||
/usr/include/stdio.h:
|
|
||||||
|
|
||||||
/usr/include/features.h:
|
|
||||||
|
|
||||||
/usr/include/sys/cdefs.h:
|
|
||||||
|
|
||||||
/usr/include/gnu/stubs.h:
|
|
||||||
|
|
||||||
/usr/lib/gcc/i386-redhat-linux/3.4.6/include/stddef.h:
|
|
||||||
|
|
||||||
/usr/include/bits/types.h:
|
|
||||||
|
|
||||||
/usr/include/bits/wordsize.h:
|
|
||||||
|
|
||||||
/usr/include/bits/typesizes.h:
|
|
||||||
|
|
||||||
/usr/include/libio.h:
|
|
||||||
|
|
||||||
/usr/include/_G_config.h:
|
|
||||||
|
|
||||||
/usr/include/wchar.h:
|
|
||||||
|
|
||||||
/usr/include/bits/wchar.h:
|
|
||||||
|
|
||||||
/usr/include/gconv.h:
|
|
||||||
|
|
||||||
/usr/lib/gcc/i386-redhat-linux/3.4.6/include/stdarg.h:
|
|
||||||
|
|
||||||
/usr/include/bits/stdio_lim.h:
|
|
||||||
|
|
||||||
/usr/include/bits/sys_errlist.h:
|
|
||||||
|
|
||||||
/usr/include/bits/stdio.h:
|
|
||||||
|
|
||||||
/usr/include/stdlib.h:
|
|
||||||
|
|
||||||
/usr/include/bits/waitflags.h:
|
|
||||||
|
|
||||||
/usr/include/bits/waitstatus.h:
|
|
||||||
|
|
||||||
/usr/include/endian.h:
|
|
||||||
|
|
||||||
/usr/include/bits/endian.h:
|
|
||||||
|
|
||||||
/usr/include/xlocale.h:
|
|
||||||
|
|
||||||
/usr/include/sys/types.h:
|
|
||||||
|
|
||||||
/usr/include/time.h:
|
|
||||||
|
|
||||||
/usr/include/sys/select.h:
|
|
||||||
|
|
||||||
/usr/include/bits/select.h:
|
|
||||||
|
|
||||||
/usr/include/bits/sigset.h:
|
|
||||||
|
|
||||||
/usr/include/bits/time.h:
|
|
||||||
|
|
||||||
/usr/include/sys/sysmacros.h:
|
|
||||||
|
|
||||||
/usr/include/bits/pthreadtypes.h:
|
|
||||||
|
|
||||||
/usr/include/bits/sched.h:
|
|
||||||
|
|
||||||
/usr/include/alloca.h:
|
|
||||||
|
|
||||||
/usr/include/stdint.h:
|
|
||||||
|
|
||||||
/usr/include/sys/stat.h:
|
|
||||||
|
|
||||||
/usr/include/bits/stat.h:
|
|
||||||
|
|
||||||
/usr/include/fcntl.h:
|
|
||||||
|
|
||||||
/usr/include/bits/fcntl.h:
|
|
||||||
|
|
||||||
/usr/include/math.h:
|
|
||||||
|
|
||||||
/usr/include/bits/huge_val.h:
|
|
||||||
|
|
||||||
/usr/include/bits/huge_valf.h:
|
|
||||||
|
|
||||||
/usr/include/bits/huge_vall.h:
|
|
||||||
|
|
||||||
/usr/include/bits/inf.h:
|
|
||||||
|
|
||||||
/usr/include/bits/nan.h:
|
|
||||||
|
|
||||||
/usr/include/bits/mathdef.h:
|
|
||||||
|
|
||||||
/usr/include/bits/mathcalls.h:
|
|
||||||
|
|
||||||
/usr/include/bits/mathinline.h:
|
|
||||||
|
|
||||||
/usr/include/string.h:
|
|
||||||
|
|
||||||
/usr/include/bits/string.h:
|
|
||||||
|
|
||||||
/usr/include/bits/string2.h:
|
|
||||||
|
|
||||||
/usr/include/errno.h:
|
|
||||||
|
|
||||||
/usr/include/bits/errno.h:
|
|
||||||
|
|
||||||
/usr/include/linux/errno.h:
|
|
||||||
|
|
||||||
/usr/include/asm/errno.h:
|
|
||||||
|
|
||||||
/usr/include/unistd.h:
|
|
||||||
|
|
||||||
/usr/include/bits/posix_opt.h:
|
|
||||||
|
|
||||||
/usr/include/bits/environments.h:
|
|
||||||
|
|
||||||
/usr/include/bits/confname.h:
|
|
||||||
|
|
||||||
/usr/include/getopt.h:
|
|
||||||
|
|
||||||
/usr/include/assert.h:
|
|
|
@ -1,158 +0,0 @@
|
||||||
libteletone_la-libteletone_generate.lo \
|
|
||||||
libteletone_la-libteletone_generate.o: src/libteletone_generate.c \
|
|
||||||
./src/libteletone.h ./src/libteletone_generate.h /usr/include/stdio.h \
|
|
||||||
/usr/include/features.h /usr/include/sys/cdefs.h \
|
|
||||||
/usr/include/gnu/stubs.h \
|
|
||||||
/usr/lib/gcc/i386-redhat-linux/3.4.6/include/stddef.h \
|
|
||||||
/usr/include/bits/types.h /usr/include/bits/wordsize.h \
|
|
||||||
/usr/include/bits/typesizes.h /usr/include/libio.h \
|
|
||||||
/usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \
|
|
||||||
/usr/include/gconv.h \
|
|
||||||
/usr/lib/gcc/i386-redhat-linux/3.4.6/include/stdarg.h \
|
|
||||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
|
||||||
/usr/include/bits/stdio.h /usr/include/stdlib.h \
|
|
||||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
|
||||||
/usr/include/endian.h /usr/include/bits/endian.h /usr/include/xlocale.h \
|
|
||||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
|
||||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
|
||||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
|
||||||
/usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h \
|
|
||||||
/usr/include/alloca.h /usr/include/stdint.h /usr/include/sys/stat.h \
|
|
||||||
/usr/include/bits/stat.h /usr/include/fcntl.h /usr/include/bits/fcntl.h \
|
|
||||||
/usr/include/math.h /usr/include/bits/huge_val.h \
|
|
||||||
/usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
|
|
||||||
/usr/include/bits/inf.h /usr/include/bits/nan.h \
|
|
||||||
/usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
|
|
||||||
/usr/include/bits/mathinline.h /usr/include/string.h \
|
|
||||||
/usr/include/bits/string.h /usr/include/bits/string2.h \
|
|
||||||
/usr/include/errno.h /usr/include/bits/errno.h \
|
|
||||||
/usr/include/linux/errno.h /usr/include/asm/errno.h \
|
|
||||||
/usr/include/unistd.h /usr/include/bits/posix_opt.h \
|
|
||||||
/usr/include/bits/environments.h /usr/include/bits/confname.h \
|
|
||||||
/usr/include/getopt.h /usr/include/assert.h ./src/libteletone_detect.h
|
|
||||||
|
|
||||||
./src/libteletone.h:
|
|
||||||
|
|
||||||
./src/libteletone_generate.h:
|
|
||||||
|
|
||||||
/usr/include/stdio.h:
|
|
||||||
|
|
||||||
/usr/include/features.h:
|
|
||||||
|
|
||||||
/usr/include/sys/cdefs.h:
|
|
||||||
|
|
||||||
/usr/include/gnu/stubs.h:
|
|
||||||
|
|
||||||
/usr/lib/gcc/i386-redhat-linux/3.4.6/include/stddef.h:
|
|
||||||
|
|
||||||
/usr/include/bits/types.h:
|
|
||||||
|
|
||||||
/usr/include/bits/wordsize.h:
|
|
||||||
|
|
||||||
/usr/include/bits/typesizes.h:
|
|
||||||
|
|
||||||
/usr/include/libio.h:
|
|
||||||
|
|
||||||
/usr/include/_G_config.h:
|
|
||||||
|
|
||||||
/usr/include/wchar.h:
|
|
||||||
|
|
||||||
/usr/include/bits/wchar.h:
|
|
||||||
|
|
||||||
/usr/include/gconv.h:
|
|
||||||
|
|
||||||
/usr/lib/gcc/i386-redhat-linux/3.4.6/include/stdarg.h:
|
|
||||||
|
|
||||||
/usr/include/bits/stdio_lim.h:
|
|
||||||
|
|
||||||
/usr/include/bits/sys_errlist.h:
|
|
||||||
|
|
||||||
/usr/include/bits/stdio.h:
|
|
||||||
|
|
||||||
/usr/include/stdlib.h:
|
|
||||||
|
|
||||||
/usr/include/bits/waitflags.h:
|
|
||||||
|
|
||||||
/usr/include/bits/waitstatus.h:
|
|
||||||
|
|
||||||
/usr/include/endian.h:
|
|
||||||
|
|
||||||
/usr/include/bits/endian.h:
|
|
||||||
|
|
||||||
/usr/include/xlocale.h:
|
|
||||||
|
|
||||||
/usr/include/sys/types.h:
|
|
||||||
|
|
||||||
/usr/include/time.h:
|
|
||||||
|
|
||||||
/usr/include/sys/select.h:
|
|
||||||
|
|
||||||
/usr/include/bits/select.h:
|
|
||||||
|
|
||||||
/usr/include/bits/sigset.h:
|
|
||||||
|
|
||||||
/usr/include/bits/time.h:
|
|
||||||
|
|
||||||
/usr/include/sys/sysmacros.h:
|
|
||||||
|
|
||||||
/usr/include/bits/pthreadtypes.h:
|
|
||||||
|
|
||||||
/usr/include/bits/sched.h:
|
|
||||||
|
|
||||||
/usr/include/alloca.h:
|
|
||||||
|
|
||||||
/usr/include/stdint.h:
|
|
||||||
|
|
||||||
/usr/include/sys/stat.h:
|
|
||||||
|
|
||||||
/usr/include/bits/stat.h:
|
|
||||||
|
|
||||||
/usr/include/fcntl.h:
|
|
||||||
|
|
||||||
/usr/include/bits/fcntl.h:
|
|
||||||
|
|
||||||
/usr/include/math.h:
|
|
||||||
|
|
||||||
/usr/include/bits/huge_val.h:
|
|
||||||
|
|
||||||
/usr/include/bits/huge_valf.h:
|
|
||||||
|
|
||||||
/usr/include/bits/huge_vall.h:
|
|
||||||
|
|
||||||
/usr/include/bits/inf.h:
|
|
||||||
|
|
||||||
/usr/include/bits/nan.h:
|
|
||||||
|
|
||||||
/usr/include/bits/mathdef.h:
|
|
||||||
|
|
||||||
/usr/include/bits/mathcalls.h:
|
|
||||||
|
|
||||||
/usr/include/bits/mathinline.h:
|
|
||||||
|
|
||||||
/usr/include/string.h:
|
|
||||||
|
|
||||||
/usr/include/bits/string.h:
|
|
||||||
|
|
||||||
/usr/include/bits/string2.h:
|
|
||||||
|
|
||||||
/usr/include/errno.h:
|
|
||||||
|
|
||||||
/usr/include/bits/errno.h:
|
|
||||||
|
|
||||||
/usr/include/linux/errno.h:
|
|
||||||
|
|
||||||
/usr/include/asm/errno.h:
|
|
||||||
|
|
||||||
/usr/include/unistd.h:
|
|
||||||
|
|
||||||
/usr/include/bits/posix_opt.h:
|
|
||||||
|
|
||||||
/usr/include/bits/environments.h:
|
|
||||||
|
|
||||||
/usr/include/bits/confname.h:
|
|
||||||
|
|
||||||
/usr/include/getopt.h:
|
|
||||||
|
|
||||||
/usr/include/assert.h:
|
|
||||||
|
|
||||||
./src/libteletone_detect.h:
|
|
|
@ -1,158 +0,0 @@
|
||||||
libteletone_la-libteletone_detect.lo libteletone_la-libteletone_detect.o: \
|
|
||||||
src/libteletone_detect.c ./src/libteletone_detect.h ./src/libteletone.h \
|
|
||||||
./src/libteletone_generate.h /usr/include/stdio.h \
|
|
||||||
/usr/include/features.h /usr/include/sys/cdefs.h \
|
|
||||||
/usr/include/gnu/stubs.h \
|
|
||||||
/usr/lib/gcc/i386-redhat-linux/3.4.6/include/stddef.h \
|
|
||||||
/usr/include/bits/types.h /usr/include/bits/wordsize.h \
|
|
||||||
/usr/include/bits/typesizes.h /usr/include/libio.h \
|
|
||||||
/usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \
|
|
||||||
/usr/include/gconv.h \
|
|
||||||
/usr/lib/gcc/i386-redhat-linux/3.4.6/include/stdarg.h \
|
|
||||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
|
||||||
/usr/include/bits/stdio.h /usr/include/stdlib.h \
|
|
||||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
|
||||||
/usr/include/endian.h /usr/include/bits/endian.h /usr/include/xlocale.h \
|
|
||||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
|
||||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
|
||||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
|
||||||
/usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h \
|
|
||||||
/usr/include/alloca.h /usr/include/stdint.h /usr/include/sys/stat.h \
|
|
||||||
/usr/include/bits/stat.h /usr/include/fcntl.h /usr/include/bits/fcntl.h \
|
|
||||||
/usr/include/math.h /usr/include/bits/huge_val.h \
|
|
||||||
/usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
|
|
||||||
/usr/include/bits/inf.h /usr/include/bits/nan.h \
|
|
||||||
/usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
|
|
||||||
/usr/include/bits/mathinline.h /usr/include/string.h \
|
|
||||||
/usr/include/bits/string.h /usr/include/bits/string2.h \
|
|
||||||
/usr/include/errno.h /usr/include/bits/errno.h \
|
|
||||||
/usr/include/linux/errno.h /usr/include/asm/errno.h \
|
|
||||||
/usr/include/unistd.h /usr/include/bits/posix_opt.h \
|
|
||||||
/usr/include/bits/environments.h /usr/include/bits/confname.h \
|
|
||||||
/usr/include/getopt.h /usr/include/assert.h
|
|
||||||
|
|
||||||
./src/libteletone_detect.h:
|
|
||||||
|
|
||||||
./src/libteletone.h:
|
|
||||||
|
|
||||||
./src/libteletone_generate.h:
|
|
||||||
|
|
||||||
/usr/include/stdio.h:
|
|
||||||
|
|
||||||
/usr/include/features.h:
|
|
||||||
|
|
||||||
/usr/include/sys/cdefs.h:
|
|
||||||
|
|
||||||
/usr/include/gnu/stubs.h:
|
|
||||||
|
|
||||||
/usr/lib/gcc/i386-redhat-linux/3.4.6/include/stddef.h:
|
|
||||||
|
|
||||||
/usr/include/bits/types.h:
|
|
||||||
|
|
||||||
/usr/include/bits/wordsize.h:
|
|
||||||
|
|
||||||
/usr/include/bits/typesizes.h:
|
|
||||||
|
|
||||||
/usr/include/libio.h:
|
|
||||||
|
|
||||||
/usr/include/_G_config.h:
|
|
||||||
|
|
||||||
/usr/include/wchar.h:
|
|
||||||
|
|
||||||
/usr/include/bits/wchar.h:
|
|
||||||
|
|
||||||
/usr/include/gconv.h:
|
|
||||||
|
|
||||||
/usr/lib/gcc/i386-redhat-linux/3.4.6/include/stdarg.h:
|
|
||||||
|
|
||||||
/usr/include/bits/stdio_lim.h:
|
|
||||||
|
|
||||||
/usr/include/bits/sys_errlist.h:
|
|
||||||
|
|
||||||
/usr/include/bits/stdio.h:
|
|
||||||
|
|
||||||
/usr/include/stdlib.h:
|
|
||||||
|
|
||||||
/usr/include/bits/waitflags.h:
|
|
||||||
|
|
||||||
/usr/include/bits/waitstatus.h:
|
|
||||||
|
|
||||||
/usr/include/endian.h:
|
|
||||||
|
|
||||||
/usr/include/bits/endian.h:
|
|
||||||
|
|
||||||
/usr/include/xlocale.h:
|
|
||||||
|
|
||||||
/usr/include/sys/types.h:
|
|
||||||
|
|
||||||
/usr/include/time.h:
|
|
||||||
|
|
||||||
/usr/include/sys/select.h:
|
|
||||||
|
|
||||||
/usr/include/bits/select.h:
|
|
||||||
|
|
||||||
/usr/include/bits/sigset.h:
|
|
||||||
|
|
||||||
/usr/include/bits/time.h:
|
|
||||||
|
|
||||||
/usr/include/sys/sysmacros.h:
|
|
||||||
|
|
||||||
/usr/include/bits/pthreadtypes.h:
|
|
||||||
|
|
||||||
/usr/include/bits/sched.h:
|
|
||||||
|
|
||||||
/usr/include/alloca.h:
|
|
||||||
|
|
||||||
/usr/include/stdint.h:
|
|
||||||
|
|
||||||
/usr/include/sys/stat.h:
|
|
||||||
|
|
||||||
/usr/include/bits/stat.h:
|
|
||||||
|
|
||||||
/usr/include/fcntl.h:
|
|
||||||
|
|
||||||
/usr/include/bits/fcntl.h:
|
|
||||||
|
|
||||||
/usr/include/math.h:
|
|
||||||
|
|
||||||
/usr/include/bits/huge_val.h:
|
|
||||||
|
|
||||||
/usr/include/bits/huge_valf.h:
|
|
||||||
|
|
||||||
/usr/include/bits/huge_vall.h:
|
|
||||||
|
|
||||||
/usr/include/bits/inf.h:
|
|
||||||
|
|
||||||
/usr/include/bits/nan.h:
|
|
||||||
|
|
||||||
/usr/include/bits/mathdef.h:
|
|
||||||
|
|
||||||
/usr/include/bits/mathcalls.h:
|
|
||||||
|
|
||||||
/usr/include/bits/mathinline.h:
|
|
||||||
|
|
||||||
/usr/include/string.h:
|
|
||||||
|
|
||||||
/usr/include/bits/string.h:
|
|
||||||
|
|
||||||
/usr/include/bits/string2.h:
|
|
||||||
|
|
||||||
/usr/include/errno.h:
|
|
||||||
|
|
||||||
/usr/include/bits/errno.h:
|
|
||||||
|
|
||||||
/usr/include/linux/errno.h:
|
|
||||||
|
|
||||||
/usr/include/asm/errno.h:
|
|
||||||
|
|
||||||
/usr/include/unistd.h:
|
|
||||||
|
|
||||||
/usr/include/bits/posix_opt.h:
|
|
||||||
|
|
||||||
/usr/include/bits/environments.h:
|
|
||||||
|
|
||||||
/usr/include/bits/confname.h:
|
|
||||||
|
|
||||||
/usr/include/getopt.h:
|
|
||||||
|
|
||||||
/usr/include/assert.h:
|
|
|
@ -1,158 +0,0 @@
|
||||||
libteletone_la-libteletone_generate.lo \
|
|
||||||
libteletone_la-libteletone_generate.o: src/libteletone_generate.c \
|
|
||||||
./src/libteletone.h ./src/libteletone_generate.h /usr/include/stdio.h \
|
|
||||||
/usr/include/features.h /usr/include/sys/cdefs.h \
|
|
||||||
/usr/include/gnu/stubs.h \
|
|
||||||
/usr/lib/gcc/i386-redhat-linux/3.4.6/include/stddef.h \
|
|
||||||
/usr/include/bits/types.h /usr/include/bits/wordsize.h \
|
|
||||||
/usr/include/bits/typesizes.h /usr/include/libio.h \
|
|
||||||
/usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \
|
|
||||||
/usr/include/gconv.h \
|
|
||||||
/usr/lib/gcc/i386-redhat-linux/3.4.6/include/stdarg.h \
|
|
||||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
|
||||||
/usr/include/bits/stdio.h /usr/include/stdlib.h \
|
|
||||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
|
||||||
/usr/include/endian.h /usr/include/bits/endian.h /usr/include/xlocale.h \
|
|
||||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
|
||||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
|
||||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
|
||||||
/usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h \
|
|
||||||
/usr/include/alloca.h /usr/include/stdint.h /usr/include/sys/stat.h \
|
|
||||||
/usr/include/bits/stat.h /usr/include/fcntl.h /usr/include/bits/fcntl.h \
|
|
||||||
/usr/include/math.h /usr/include/bits/huge_val.h \
|
|
||||||
/usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
|
|
||||||
/usr/include/bits/inf.h /usr/include/bits/nan.h \
|
|
||||||
/usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
|
|
||||||
/usr/include/bits/mathinline.h /usr/include/string.h \
|
|
||||||
/usr/include/bits/string.h /usr/include/bits/string2.h \
|
|
||||||
/usr/include/errno.h /usr/include/bits/errno.h \
|
|
||||||
/usr/include/linux/errno.h /usr/include/asm/errno.h \
|
|
||||||
/usr/include/unistd.h /usr/include/bits/posix_opt.h \
|
|
||||||
/usr/include/bits/environments.h /usr/include/bits/confname.h \
|
|
||||||
/usr/include/getopt.h /usr/include/assert.h ./src/libteletone_detect.h
|
|
||||||
|
|
||||||
./src/libteletone.h:
|
|
||||||
|
|
||||||
./src/libteletone_generate.h:
|
|
||||||
|
|
||||||
/usr/include/stdio.h:
|
|
||||||
|
|
||||||
/usr/include/features.h:
|
|
||||||
|
|
||||||
/usr/include/sys/cdefs.h:
|
|
||||||
|
|
||||||
/usr/include/gnu/stubs.h:
|
|
||||||
|
|
||||||
/usr/lib/gcc/i386-redhat-linux/3.4.6/include/stddef.h:
|
|
||||||
|
|
||||||
/usr/include/bits/types.h:
|
|
||||||
|
|
||||||
/usr/include/bits/wordsize.h:
|
|
||||||
|
|
||||||
/usr/include/bits/typesizes.h:
|
|
||||||
|
|
||||||
/usr/include/libio.h:
|
|
||||||
|
|
||||||
/usr/include/_G_config.h:
|
|
||||||
|
|
||||||
/usr/include/wchar.h:
|
|
||||||
|
|
||||||
/usr/include/bits/wchar.h:
|
|
||||||
|
|
||||||
/usr/include/gconv.h:
|
|
||||||
|
|
||||||
/usr/lib/gcc/i386-redhat-linux/3.4.6/include/stdarg.h:
|
|
||||||
|
|
||||||
/usr/include/bits/stdio_lim.h:
|
|
||||||
|
|
||||||
/usr/include/bits/sys_errlist.h:
|
|
||||||
|
|
||||||
/usr/include/bits/stdio.h:
|
|
||||||
|
|
||||||
/usr/include/stdlib.h:
|
|
||||||
|
|
||||||
/usr/include/bits/waitflags.h:
|
|
||||||
|
|
||||||
/usr/include/bits/waitstatus.h:
|
|
||||||
|
|
||||||
/usr/include/endian.h:
|
|
||||||
|
|
||||||
/usr/include/bits/endian.h:
|
|
||||||
|
|
||||||
/usr/include/xlocale.h:
|
|
||||||
|
|
||||||
/usr/include/sys/types.h:
|
|
||||||
|
|
||||||
/usr/include/time.h:
|
|
||||||
|
|
||||||
/usr/include/sys/select.h:
|
|
||||||
|
|
||||||
/usr/include/bits/select.h:
|
|
||||||
|
|
||||||
/usr/include/bits/sigset.h:
|
|
||||||
|
|
||||||
/usr/include/bits/time.h:
|
|
||||||
|
|
||||||
/usr/include/sys/sysmacros.h:
|
|
||||||
|
|
||||||
/usr/include/bits/pthreadtypes.h:
|
|
||||||
|
|
||||||
/usr/include/bits/sched.h:
|
|
||||||
|
|
||||||
/usr/include/alloca.h:
|
|
||||||
|
|
||||||
/usr/include/stdint.h:
|
|
||||||
|
|
||||||
/usr/include/sys/stat.h:
|
|
||||||
|
|
||||||
/usr/include/bits/stat.h:
|
|
||||||
|
|
||||||
/usr/include/fcntl.h:
|
|
||||||
|
|
||||||
/usr/include/bits/fcntl.h:
|
|
||||||
|
|
||||||
/usr/include/math.h:
|
|
||||||
|
|
||||||
/usr/include/bits/huge_val.h:
|
|
||||||
|
|
||||||
/usr/include/bits/huge_valf.h:
|
|
||||||
|
|
||||||
/usr/include/bits/huge_vall.h:
|
|
||||||
|
|
||||||
/usr/include/bits/inf.h:
|
|
||||||
|
|
||||||
/usr/include/bits/nan.h:
|
|
||||||
|
|
||||||
/usr/include/bits/mathdef.h:
|
|
||||||
|
|
||||||
/usr/include/bits/mathcalls.h:
|
|
||||||
|
|
||||||
/usr/include/bits/mathinline.h:
|
|
||||||
|
|
||||||
/usr/include/string.h:
|
|
||||||
|
|
||||||
/usr/include/bits/string.h:
|
|
||||||
|
|
||||||
/usr/include/bits/string2.h:
|
|
||||||
|
|
||||||
/usr/include/errno.h:
|
|
||||||
|
|
||||||
/usr/include/bits/errno.h:
|
|
||||||
|
|
||||||
/usr/include/linux/errno.h:
|
|
||||||
|
|
||||||
/usr/include/asm/errno.h:
|
|
||||||
|
|
||||||
/usr/include/unistd.h:
|
|
||||||
|
|
||||||
/usr/include/bits/posix_opt.h:
|
|
||||||
|
|
||||||
/usr/include/bits/environments.h:
|
|
||||||
|
|
||||||
/usr/include/bits/confname.h:
|
|
||||||
|
|
||||||
/usr/include/getopt.h:
|
|
||||||
|
|
||||||
/usr/include/assert.h:
|
|
||||||
|
|
||||||
./src/libteletone_detect.h:
|
|
|
@ -1,7 +1,7 @@
|
||||||
K 25
|
K 25
|
||||||
svn:wc:ra_dav:version-url
|
svn:wc:ra_dav:version-url
|
||||||
V 51
|
V 51
|
||||||
/svn/sangoma_mgd/!svn/ver/149/trunk/lib/libteletone
|
/svn/sangoma_mgd/!svn/ver/190/trunk/lib/libteletone
|
||||||
END
|
END
|
||||||
mkinstalldirs
|
mkinstalldirs
|
||||||
K 25
|
K 25
|
||||||
|
@ -33,18 +33,18 @@ svn:wc:ra_dav:version-url
|
||||||
V 62
|
V 62
|
||||||
/svn/sangoma_mgd/!svn/ver/1/trunk/lib/libteletone/configure.in
|
/svn/sangoma_mgd/!svn/ver/1/trunk/lib/libteletone/configure.in
|
||||||
END
|
END
|
||||||
ChangeLog
|
|
||||||
K 25
|
|
||||||
svn:wc:ra_dav:version-url
|
|
||||||
V 59
|
|
||||||
/svn/sangoma_mgd/!svn/ver/1/trunk/lib/libteletone/ChangeLog
|
|
||||||
END
|
|
||||||
depcomp
|
depcomp
|
||||||
K 25
|
K 25
|
||||||
svn:wc:ra_dav:version-url
|
svn:wc:ra_dav:version-url
|
||||||
V 57
|
V 57
|
||||||
/svn/sangoma_mgd/!svn/ver/1/trunk/lib/libteletone/depcomp
|
/svn/sangoma_mgd/!svn/ver/1/trunk/lib/libteletone/depcomp
|
||||||
END
|
END
|
||||||
|
ChangeLog
|
||||||
|
K 25
|
||||||
|
svn:wc:ra_dav:version-url
|
||||||
|
V 59
|
||||||
|
/svn/sangoma_mgd/!svn/ver/1/trunk/lib/libteletone/ChangeLog
|
||||||
|
END
|
||||||
compile
|
compile
|
||||||
K 25
|
K 25
|
||||||
svn:wc:ra_dav:version-url
|
svn:wc:ra_dav:version-url
|
||||||
|
@ -63,11 +63,11 @@ svn:wc:ra_dav:version-url
|
||||||
V 64
|
V 64
|
||||||
/svn/sangoma_mgd/!svn/ver/1/trunk/lib/libteletone/svn-commit.tmp
|
/svn/sangoma_mgd/!svn/ver/1/trunk/lib/libteletone/svn-commit.tmp
|
||||||
END
|
END
|
||||||
config.sub
|
README
|
||||||
K 25
|
K 25
|
||||||
svn:wc:ra_dav:version-url
|
svn:wc:ra_dav:version-url
|
||||||
V 60
|
V 56
|
||||||
/svn/sangoma_mgd/!svn/ver/1/trunk/lib/libteletone/config.sub
|
/svn/sangoma_mgd/!svn/ver/1/trunk/lib/libteletone/README
|
||||||
END
|
END
|
||||||
ltmain.sh
|
ltmain.sh
|
||||||
K 25
|
K 25
|
||||||
|
@ -75,11 +75,11 @@ svn:wc:ra_dav:version-url
|
||||||
V 59
|
V 59
|
||||||
/svn/sangoma_mgd/!svn/ver/1/trunk/lib/libteletone/ltmain.sh
|
/svn/sangoma_mgd/!svn/ver/1/trunk/lib/libteletone/ltmain.sh
|
||||||
END
|
END
|
||||||
README
|
config.sub
|
||||||
K 25
|
K 25
|
||||||
svn:wc:ra_dav:version-url
|
svn:wc:ra_dav:version-url
|
||||||
V 56
|
V 60
|
||||||
/svn/sangoma_mgd/!svn/ver/1/trunk/lib/libteletone/README
|
/svn/sangoma_mgd/!svn/ver/1/trunk/lib/libteletone/config.sub
|
||||||
END
|
END
|
||||||
INSTALL
|
INSTALL
|
||||||
K 25
|
K 25
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
8
|
8
|
||||||
|
|
||||||
dir
|
dir
|
||||||
187
|
193
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/lib/libteletone
|
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/lib/libteletone
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd
|
https://www.sangomapbx.com/svn/sangoma_mgd
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
2009-03-03T20:17:37.440465Z
|
2009-07-27T20:06:20.593649Z
|
||||||
149
|
190
|
||||||
davidy
|
davidy
|
||||||
|
|
||||||
|
|
||||||
|
@ -88,17 +88,8 @@ file
|
||||||
root
|
root
|
||||||
has-props
|
has-props
|
||||||
|
|
||||||
depcomp
|
src
|
||||||
file
|
dir
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
2009-04-30T20:22:39.000000Z
|
|
||||||
7e26ecc61d5c27c50d334ebe19d5ef06
|
|
||||||
2007-09-21T20:53:51.260136Z
|
|
||||||
1
|
|
||||||
root
|
|
||||||
|
|
||||||
ChangeLog
|
ChangeLog
|
||||||
file
|
file
|
||||||
|
@ -112,8 +103,17 @@ d41d8cd98f00b204e9800998ecf8427e
|
||||||
1
|
1
|
||||||
root
|
root
|
||||||
|
|
||||||
src
|
depcomp
|
||||||
dir
|
file
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
2009-04-30T20:22:39.000000Z
|
||||||
|
7e26ecc61d5c27c50d334ebe19d5ef06
|
||||||
|
2007-09-21T20:53:51.260136Z
|
||||||
|
1
|
||||||
|
root
|
||||||
|
|
||||||
compile
|
compile
|
||||||
file
|
file
|
||||||
|
@ -152,14 +152,14 @@ c2defdef8cd93c3d9e29628267699702
|
||||||
1
|
1
|
||||||
root
|
root
|
||||||
|
|
||||||
README
|
config.sub
|
||||||
file
|
file
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
2009-04-30T20:22:39.000000Z
|
2009-04-30T20:22:39.000000Z
|
||||||
234c8df99750448a5b1c4709304a38e5
|
74587542264e2bb761ee931ddb7d69f1
|
||||||
2007-09-21T20:53:51.260136Z
|
2007-09-21T20:53:51.260136Z
|
||||||
1
|
1
|
||||||
root
|
root
|
||||||
|
@ -176,14 +176,14 @@ file
|
||||||
1
|
1
|
||||||
root
|
root
|
||||||
|
|
||||||
config.sub
|
README
|
||||||
file
|
file
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
2009-04-30T20:22:39.000000Z
|
2009-04-30T20:22:39.000000Z
|
||||||
74587542264e2bb761ee931ddb7d69f1
|
234c8df99750448a5b1c4709304a38e5
|
||||||
2007-09-21T20:53:51.260136Z
|
2007-09-21T20:53:51.260136Z
|
||||||
1
|
1
|
||||||
root
|
root
|
||||||
|
@ -224,9 +224,6 @@ c878b7dac31225fc5b03ff92d985f147
|
||||||
1
|
1
|
||||||
root
|
root
|
||||||
|
|
||||||
.deps
|
|
||||||
dir
|
|
||||||
|
|
||||||
Makefile.am
|
Makefile.am
|
||||||
file
|
file
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
8
|
8
|
||||||
|
|
||||||
dir
|
dir
|
||||||
187
|
193
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/lib/libteletone/src
|
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/lib/libteletone/src
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd
|
https://www.sangomapbx.com/svn/sangoma_mgd
|
||||||
|
|
||||||
|
|
|
@ -9,6 +9,11 @@
|
||||||
*
|
*
|
||||||
* =============================================
|
* =============================================
|
||||||
*
|
*
|
||||||
|
*
|
||||||
|
* v1.51 David Yat Sin <dyatsin@sangoma.com>
|
||||||
|
* MAX_SPANS increased to 32.
|
||||||
|
* Fix for server.process_table declared incorrectly
|
||||||
|
*
|
||||||
* v1.50 Nenad Corbic <ncorbic@sangoma.com>
|
* v1.50 Nenad Corbic <ncorbic@sangoma.com>
|
||||||
* Logic to support multiple woomera clients hanging up the
|
* Logic to support multiple woomera clients hanging up the
|
||||||
* channel. This feature now supprorts woomera loadbalancing
|
* channel. This feature now supprorts woomera loadbalancing
|
||||||
|
@ -291,7 +296,7 @@ struct woomera_server server;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
#define SMG_VERSION "v1.50"
|
#define SMG_VERSION "v1.51"
|
||||||
|
|
||||||
/* enable early media */
|
/* enable early media */
|
||||||
#if 1
|
#if 1
|
||||||
|
@ -333,7 +338,7 @@ static int drop_seq=0;
|
||||||
|
|
||||||
const char WELCOME_TEXT[] =
|
const char WELCOME_TEXT[] =
|
||||||
"================================================================================\n"
|
"================================================================================\n"
|
||||||
"Sangoma Media Gateway Daemon v1.50 \n"
|
"Sangoma Media Gateway Daemon v1.51 \n"
|
||||||
"\n"
|
"\n"
|
||||||
"TDM Signal Media Gateway for Sangoma/Wanpipe Cards\n"
|
"TDM Signal Media Gateway for Sangoma/Wanpipe Cards\n"
|
||||||
"Copyright 2005, 2006, 2007 \n"
|
"Copyright 2005, 2006, 2007 \n"
|
||||||
|
@ -2137,7 +2142,7 @@ static struct woomera_interface * launch_woomera_loop_thread(short_signal_event_
|
||||||
pthread_mutex_lock(&server.process_lock);
|
pthread_mutex_lock(&server.process_lock);
|
||||||
server.process_table[event->span][event->chan].dev = NULL;
|
server.process_table[event->span][event->chan].dev = NULL;
|
||||||
memset(server.process_table[event->span][event->chan].session,0,SMG_SESSION_NAME_SZ);
|
memset(server.process_table[event->span][event->chan].session,0,SMG_SESSION_NAME_SZ);
|
||||||
pthread_mutex_unlock(&server.process_lock);
|
pthread_mutex_unlock(&server.process_lock);
|
||||||
smg_free(woomera);
|
smg_free(woomera);
|
||||||
log_printf(SMG_LOG_ALL, server.log, "Critical ERROR: memory/socket error\n");
|
log_printf(SMG_LOG_ALL, server.log, "Critical ERROR: memory/socket error\n");
|
||||||
return NULL;
|
return NULL;
|
||||||
|
@ -4071,11 +4076,12 @@ static void handle_remove_loop(short_signal_event_t *event)
|
||||||
|
|
||||||
static void handle_call_stop(short_signal_event_t *event)
|
static void handle_call_stop(short_signal_event_t *event)
|
||||||
{
|
{
|
||||||
struct woomera_interface *woomera;
|
struct woomera_interface *woomera;
|
||||||
int ack=0;
|
int ack=0;
|
||||||
|
|
||||||
pthread_mutex_lock(&server.process_lock);
|
woomera = NULL;
|
||||||
woomera = server.process_table[event->span][event->chan].dev;
|
pthread_mutex_lock(&server.process_lock);
|
||||||
|
woomera = server.process_table[event->span][event->chan].dev;
|
||||||
if (woomera) {
|
if (woomera) {
|
||||||
|
|
||||||
if (!woomera_test_flag(woomera, WFLAG_WAIT_FOR_NACK_ACK_SENT) &&
|
if (!woomera_test_flag(woomera, WFLAG_WAIT_FOR_NACK_ACK_SENT) &&
|
||||||
|
@ -4094,7 +4100,7 @@ static void handle_call_stop(short_signal_event_t *event)
|
||||||
memset(server.process_table[event->span][event->chan].session,0,SMG_SESSION_NAME_SZ);
|
memset(server.process_table[event->span][event->chan].session,0,SMG_SESSION_NAME_SZ);
|
||||||
pthread_mutex_unlock(&server.process_lock);
|
pthread_mutex_unlock(&server.process_lock);
|
||||||
|
|
||||||
if (woomera) {
|
if (woomera) {
|
||||||
|
|
||||||
woomera_set_cause_topbx(woomera,event->release_cause);
|
woomera_set_cause_topbx(woomera,event->release_cause);
|
||||||
|
|
||||||
|
@ -5740,8 +5746,13 @@ static int woomera_shutdown(void)
|
||||||
int main(int argc, char *argv[])
|
int main(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
|
|
||||||
|
memset(&server,0,sizeof(server));
|
||||||
|
memset(&woomera_dead_dev,0,sizeof(woomera_dead_dev));
|
||||||
|
|
||||||
mlockall(MCL_FUTURE);
|
mlockall(MCL_FUTURE);
|
||||||
|
memset(&server, 0, sizeof(server));
|
||||||
|
memset(&woomera_dead_dev, 0, sizeof(woomera_dead_dev));
|
||||||
|
|
||||||
ret=nice(-5);
|
ret=nice(-5);
|
||||||
|
|
||||||
|
|
|
@ -298,7 +298,8 @@ struct woomera_session {
|
||||||
#define CORE_TANK_LEN CORE_MAX_CHAN_PER_SPAN*CORE_MAX_SPANS
|
#define CORE_TANK_LEN CORE_MAX_CHAN_PER_SPAN*CORE_MAX_SPANS
|
||||||
|
|
||||||
struct woomera_server {
|
struct woomera_server {
|
||||||
struct woomera_session process_table[CORE_MAX_CHAN_PER_SPAN][CORE_MAX_SPANS];
|
// struct woomera_session process_table[CORE_MAX_CHAN_PER_SPAN][CORE_MAX_SPANS];
|
||||||
|
struct woomera_session process_table[CORE_MAX_SPANS][CORE_MAX_CHAN_PER_SPAN];
|
||||||
struct woomera_interface *holding_tank[CORE_TANK_LEN];
|
struct woomera_interface *holding_tank[CORE_TANK_LEN];
|
||||||
int holding_tank_index;
|
int holding_tank_index;
|
||||||
struct woomera_interface master_connection;
|
struct woomera_interface master_connection;
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
#define __SMG_COMMON_H_
|
#define __SMG_COMMON_H_
|
||||||
|
|
||||||
|
|
||||||
#define WOOMERA_MAX_SPAN 24
|
#define WOOMERA_MAX_SPAN 32
|
||||||
#define WOOMERA_MAX_CHAN 31
|
#define WOOMERA_MAX_CHAN 31
|
||||||
|
|
||||||
#define WOOMERA_BRI_MAX_SPAN 24
|
#define WOOMERA_BRI_MAX_SPAN 32
|
||||||
#define WOOMERA_BRI_MAX_CHAN 2
|
#define WOOMERA_BRI_MAX_CHAN 2
|
||||||
|
|
||||||
extern int max_spans;
|
extern int max_spans;
|
||||||
|
|
|
@ -49,7 +49,7 @@ void __log_printf(int level, FILE *fp, char *file, const char *func, int line, c
|
||||||
fp = server.log;
|
fp = server.log;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (level && level >= server.debug && level < 100) {
|
if (level && level > server.debug && level < 100) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
8
|
8
|
||||||
|
|
||||||
dir
|
dir
|
||||||
187
|
193
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/scripts
|
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/scripts
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd
|
https://www.sangomapbx.com/svn/sangoma_mgd
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
8
|
8
|
||||||
|
|
||||||
dir
|
dir
|
||||||
187
|
193
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/scripts/callgen
|
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/scripts/callgen
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd
|
https://www.sangomapbx.com/svn/sangoma_mgd
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
8
|
8
|
||||||
|
|
||||||
dir
|
dir
|
||||||
187
|
193
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/scripts/init.d
|
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/scripts/init.d
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd
|
https://www.sangomapbx.com/svn/sangoma_mgd
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
8
|
8
|
||||||
|
|
||||||
dir
|
dir
|
||||||
187
|
193
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/scripts/ss7
|
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/scripts/ss7
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd
|
https://www.sangomapbx.com/svn/sangoma_mgd
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
8
|
8
|
||||||
|
|
||||||
dir
|
dir
|
||||||
187
|
193
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/unit
|
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/unit
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd
|
https://www.sangomapbx.com/svn/sangoma_mgd
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
8
|
8
|
||||||
|
|
||||||
dir
|
dir
|
||||||
187
|
193
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/unit/core
|
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/unit/core
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd
|
https://www.sangomapbx.com/svn/sangoma_mgd
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
8
|
8
|
||||||
|
|
||||||
dir
|
dir
|
||||||
187
|
193
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/unit/tests
|
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/unit/tests
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd
|
https://www.sangomapbx.com/svn/sangoma_mgd
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
8
|
8
|
||||||
|
|
||||||
dir
|
dir
|
||||||
187
|
193
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/unit/tests/1_loop
|
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/unit/tests/1_loop
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd
|
https://www.sangomapbx.com/svn/sangoma_mgd
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
8
|
8
|
||||||
|
|
||||||
dir
|
dir
|
||||||
187
|
193
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/unit/tests/1_loop/tmp
|
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/unit/tests/1_loop/tmp
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd
|
https://www.sangomapbx.com/svn/sangoma_mgd
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
8
|
8
|
||||||
|
|
||||||
dir
|
dir
|
||||||
187
|
193
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/unit/tests/2_loop_call
|
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/unit/tests/2_loop_call
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd
|
https://www.sangomapbx.com/svn/sangoma_mgd
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
8
|
8
|
||||||
|
|
||||||
dir
|
dir
|
||||||
187
|
193
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/unit/tests/2_loop_call/tmp
|
https://www.sangomapbx.com/svn/sangoma_mgd/trunk/unit/tests/2_loop_call/tmp
|
||||||
https://www.sangomapbx.com/svn/sangoma_mgd
|
https://www.sangomapbx.com/svn/sangoma_mgd
|
||||||
|
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1,6 +1,16 @@
|
||||||
AFT A101dm Firmware Change Log
|
AFT A101dm Firmware Change Log
|
||||||
=============================
|
=============================
|
||||||
|
|
||||||
|
Release V36
|
||||||
|
-----------
|
||||||
|
Aug 13 2009
|
||||||
|
Type: Recommended A101dm Firmware
|
||||||
|
New Feature: Added Free Running timer for Zapata/Dahdi
|
||||||
|
|
||||||
|
Changes: Firmware bug fix
|
||||||
|
Fixes on potential pci parity errors on some systems.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Release V34
|
Release V34
|
||||||
-----------
|
-----------
|
||||||
|
|
|
@ -1,5 +1,18 @@
|
||||||
AFT A102dm Firmware Change Log
|
AFT A102dm Firmware Change Log
|
||||||
=============================
|
=============================
|
||||||
|
|
||||||
|
|
||||||
|
Release V36
|
||||||
|
-----------
|
||||||
|
Aug 13 2009
|
||||||
|
Type: Recommended A102dm Firmware
|
||||||
|
New Feature: Added Free Running timer for Zaptel/Dahdi
|
||||||
|
|
||||||
|
Changes: Firmware bug fix
|
||||||
|
Fixes on potential pci parity errors on some systems.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Release V33
|
Release V33
|
||||||
-----------
|
-----------
|
||||||
Sep 27 2007
|
Sep 27 2007
|
||||||
|
|
|
@ -1,5 +1,16 @@
|
||||||
AFT A104dm Firmware Change Log
|
AFT A104dm Firmware Change Log
|
||||||
=============================
|
=============================
|
||||||
|
|
||||||
|
Release V36
|
||||||
|
-----------
|
||||||
|
Aug 13 2009
|
||||||
|
Type: Recommended A104dm Firmware
|
||||||
|
New Feature: Added Free Running timer for Zaptel/Dahdi
|
||||||
|
|
||||||
|
Changes: Firmware bug fix
|
||||||
|
Fixes on potential pci parity errors on some systems.
|
||||||
|
|
||||||
|
|
||||||
Release V33
|
Release V33
|
||||||
-----------
|
-----------
|
||||||
Sep 27 2007
|
Sep 27 2007
|
||||||
|
|
|
@ -1,6 +1,17 @@
|
||||||
AFT A108dm Firmware Change Log
|
AFT A108dm Firmware Change Log
|
||||||
===============================
|
===============================
|
||||||
|
|
||||||
|
Release V38
|
||||||
|
-----------
|
||||||
|
Aug 13 2009
|
||||||
|
Type: Recommended A108dm Firmware
|
||||||
|
New Feature: Added Free Running timer for Zaptel/Dahdi
|
||||||
|
|
||||||
|
Changes: Firmware bug fix
|
||||||
|
Fixes on potential pci parity errors on some systems.
|
||||||
|
Fixes echo canceller H100 Errors that can occour on some systems.
|
||||||
|
|
||||||
|
|
||||||
Release V33
|
Release V33
|
||||||
-----------
|
-----------
|
||||||
Sep 27 2007
|
Sep 27 2007
|
||||||
|
|
|
@ -605,6 +605,7 @@ key_word_t common_conftab[] = /* Common configuration parameters */
|
||||||
{ "RM_PULSEDIALING", offsetof(wandev_conf_t, fe_cfg)+offsetof(sdla_fe_cfg_t, cfg) + smemof(sdla_remora_cfg_t, fxs_pulsedialing), DTYPE_UCHAR },
|
{ "RM_PULSEDIALING", offsetof(wandev_conf_t, fe_cfg)+offsetof(sdla_fe_cfg_t, cfg) + smemof(sdla_remora_cfg_t, fxs_pulsedialing), DTYPE_UCHAR },
|
||||||
{ "RM_RINGAMPL", offsetof(wandev_conf_t, fe_cfg)+offsetof(sdla_fe_cfg_t, cfg) + smemof(sdla_remora_cfg_t, fxs_ringampl), DTYPE_INT },
|
{ "RM_RINGAMPL", offsetof(wandev_conf_t, fe_cfg)+offsetof(sdla_fe_cfg_t, cfg) + smemof(sdla_remora_cfg_t, fxs_ringampl), DTYPE_INT },
|
||||||
{ "RM_RELAXCFG", offsetof(wandev_conf_t, fe_cfg)+offsetof(sdla_fe_cfg_t, cfg) + smemof(sdla_remora_cfg_t, relaxcfg), DTYPE_UCHAR },
|
{ "RM_RELAXCFG", offsetof(wandev_conf_t, fe_cfg)+offsetof(sdla_fe_cfg_t, cfg) + smemof(sdla_remora_cfg_t, relaxcfg), DTYPE_UCHAR },
|
||||||
|
{ "RM_FAKE_POLARITY", offsetof(wandev_conf_t, fe_cfg)+offsetof(sdla_fe_cfg_t, cfg) + smemof(sdla_remora_cfg_t, fake_polarity), DTYPE_UCHAR },
|
||||||
|
|
||||||
/* TDMV parameters */
|
/* TDMV parameters */
|
||||||
{ "TDMV_SPAN", offsetof(wandev_conf_t, tdmv_conf)+smemof(wan_tdmv_conf_t, span_no), DTYPE_UINT},
|
{ "TDMV_SPAN", offsetof(wandev_conf_t, tdmv_conf)+smemof(wan_tdmv_conf_t, span_no), DTYPE_UINT},
|
||||||
|
|
Loading…
Reference in New Issue