wanpipe-3.5.4.tgz
This commit is contained in:
parent
2f2fa503b2
commit
1f8d7b100d
|
@ -8,6 +8,19 @@ Copyright (c) 1995-2009 Sangoma Technologies Inc.
|
|||
For more info visit: http://wiki.sangoma.com
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
* Tue Jun 29 2009 Nenad Corbic <ncorbic@sangoma.com> - 3.5.4
|
||||
===================================================================
|
||||
|
||||
- E1 Voice Bug fix introduced in 3.5.3
|
||||
|
||||
- Removed NOISE REDUCTION enabled by default.
|
||||
The noise reduction is disabled by default and should be
|
||||
enabled using HWEC_NOISE_REDUCTION = YES
|
||||
|
||||
- Fixed libsangoma enable dtmf events functionality
|
||||
|
||||
|
||||
|
||||
* Tue Jun 25 2009 Nenad Corbic <ncorbic@sangoma.com> - 3.5.3
|
||||
===================================================================
|
||||
|
||||
|
|
2
Setup
2
Setup
|
@ -7200,7 +7200,7 @@ KERNEL_UNAME=`uname -r`
|
|||
PKG_NAME=wanpipe
|
||||
DISTR_NAME="WANPIPE"
|
||||
PROD=wanrouter
|
||||
PROD_VER=3.5.3
|
||||
PROD_VER=3.5.4
|
||||
PROD_HOME=`pwd`
|
||||
META_CONF=$PROD_HOME/$PROD.rc
|
||||
WAN_INTR_DIR=$PROD_HOME/interfaces
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
Package: wanpipe
|
||||
Version: 3.5.3-0
|
||||
Version: 3.5.4-0
|
||||
Section: networking
|
||||
Priority: optional
|
||||
Architecture: all
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
#define WANPIPE_COMPANY "Sangoma Technologies Inc"
|
||||
|
||||
/********** LINUX **********/
|
||||
#define WANPIPE_VERSION "3.5.3"
|
||||
#define WANPIPE_VERSION "3.5.4"
|
||||
#define WANPIPE_SUB_VERSION "0"
|
||||
#define WANPIPE_LITE_VERSION "1.1.1"
|
||||
|
||||
|
|
|
@ -312,13 +312,17 @@ static int aft_request_logical_channel_num (sdla_t *card, private_area_t *chan,
|
|||
}
|
||||
|
||||
if (force_lch) {
|
||||
if (!wan_test_and_set_bit(chan->first_time_slot,&card->u.aft.logic_ch_map)){
|
||||
logic_ch=(char)chan->first_time_slot;
|
||||
} else {
|
||||
|
||||
/* NOTE This section is not used and should be take out after B601 code is done */
|
||||
DEBUG_EVENT("%s: Error, request logical channel - internal error - unsupported mode!\n",card->devname);
|
||||
return -1;
|
||||
|
||||
logic_ch=(char)chan->first_time_slot;
|
||||
if (wan_test_and_set_bit(logic_ch,&card->u.aft.logic_ch_map)){
|
||||
DEBUG_EVENT("%s: Error, request logical ch=%d map busy (map 0x%08lX)\n",
|
||||
card->devname,chan->first_time_slot,card->u.aft.logic_ch_map);
|
||||
return -1;
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
} else {
|
||||
|
||||
for (i=0;i<card->u.aft.num_of_time_slots;i++){
|
||||
|
@ -1127,9 +1131,12 @@ int a104_chan_dev_config(sdla_t *card, void *chan_ptr)
|
|||
|
||||
#else
|
||||
|
||||
#if 0
|
||||
#warning "FORCE_LCH Should not be used and should be removed after B601 code"
|
||||
if (card->u.aft.global_tdm_irq) {
|
||||
force_lch=1;
|
||||
force_lch=0;
|
||||
}
|
||||
#endif
|
||||
|
||||
chan_num=aft_request_logical_channel_num(card, chan, force_lch);
|
||||
if (chan_num < 0){
|
||||
|
@ -1137,6 +1144,8 @@ int a104_chan_dev_config(sdla_t *card, void *chan_ptr)
|
|||
}
|
||||
chan->logic_ch_num = chan_num;
|
||||
|
||||
DEBUG_TEST("%s: LOGIC CH NUM %i\n", card->devname, chan_num);
|
||||
|
||||
dma_ram_reg=AFT_PORT_REG(card,AFT_DMA_CHAIN_RAM_BASE_REG);
|
||||
dma_ram_reg+=(chan->logic_ch_num*4);
|
||||
|
||||
|
|
|
@ -2464,29 +2464,17 @@ static int new_if_private (wan_device_t* wandev, netdevice_t* dev, wanif_conf_t*
|
|||
}
|
||||
|
||||
/*Set the actual logic ch number of this chan
|
||||
*as the dchan. Due to HDLC security issue, the
|
||||
*as the dchan. Due to HDLC security issue, the
|
||||
*HDLC channels are mapped on first TWO logic channels */
|
||||
if (chan->common.usedby == TDM_VOICE_DCHAN){
|
||||
card->u.aft.tdmv_dchan=chan->logic_ch_num+1;
|
||||
}
|
||||
|
||||
if (wan_test_bit(WP_ZAPTEL_DCHAN_OPTIMIZATION,&card->u.aft.tdmv_zaptel_cfg)) {
|
||||
int ch=chan->logic_ch_num;
|
||||
if (IS_E1_CARD(card)) {
|
||||
ch++;
|
||||
}
|
||||
if (!wan_test_bit(ch,&chan->time_slot_map)) {
|
||||
DEBUG_EVENT("%s: Error: Logic channel %i does not map to timeslot map 0x%08X\n",
|
||||
card->devname,chan->logic_ch_num,chan->time_slot_map);
|
||||
goto new_if_error;
|
||||
}
|
||||
}
|
||||
|
||||
/* Configure the DCHAN on LAST Master interface.
|
||||
* We will use the master interface information, until
|
||||
* the next interface with the current DCHAN info is
|
||||
* configured. This must be done in order to register
|
||||
* the DCHAN in zaptel. */
|
||||
* We will use the master interface information, until
|
||||
* the next interface with the current DCHAN info is
|
||||
* configured. This must be done in order to register
|
||||
* the DCHAN in zaptel. */
|
||||
if (card->u.aft.tdmv_dchan_cfg_on_master &&
|
||||
card->u.aft.tdmv_dchan){
|
||||
int dchan=card->u.aft.tdmv_dchan;
|
||||
|
@ -10481,17 +10469,16 @@ static int aft_dma_rx_tdmv(sdla_t *card, private_area_t *chan)
|
|||
|
||||
if (wan_test_bit(AFT_TDM_RING_BUF,&card->u.aft.chip_cfg_status)) {
|
||||
|
||||
rx_offset= AFT_TDMV_CIRC_BUF * card->u.aft.tdm_rx_dma_toggle[chan->logic_ch_num];
|
||||
tx_offset= AFT_TDMV_CIRC_BUF * card->u.aft.tdm_tx_dma_toggle[chan->logic_ch_num];
|
||||
rx_offset= AFT_TDMV_CIRC_BUF * card->u.aft.tdm_rx_dma_toggle[chan->first_time_slot];
|
||||
tx_offset= AFT_TDMV_CIRC_BUF * card->u.aft.tdm_tx_dma_toggle[chan->first_time_slot];
|
||||
|
||||
|
||||
card->u.aft.tdm_rx_dma_toggle[chan->logic_ch_num]++;
|
||||
if (card->u.aft.tdm_rx_dma_toggle[chan->logic_ch_num] >= AFT_TDMV_CIRC_BUF_LEN) {
|
||||
card->u.aft.tdm_rx_dma_toggle[chan->logic_ch_num]=0;
|
||||
card->u.aft.tdm_rx_dma_toggle[chan->first_time_slot]++;
|
||||
if (card->u.aft.tdm_rx_dma_toggle[chan->first_time_slot] >= AFT_TDMV_CIRC_BUF_LEN) {
|
||||
card->u.aft.tdm_rx_dma_toggle[chan->first_time_slot]=0;
|
||||
}
|
||||
card->u.aft.tdm_tx_dma_toggle[chan->logic_ch_num]++;
|
||||
if (card->u.aft.tdm_tx_dma_toggle[chan->logic_ch_num] >= AFT_TDMV_CIRC_BUF_LEN) {
|
||||
card->u.aft.tdm_tx_dma_toggle[chan->logic_ch_num]=0;
|
||||
card->u.aft.tdm_tx_dma_toggle[chan->first_time_slot]++;
|
||||
if (card->u.aft.tdm_tx_dma_toggle[chan->first_time_slot] >= AFT_TDMV_CIRC_BUF_LEN) {
|
||||
card->u.aft.tdm_tx_dma_toggle[chan->first_time_slot]=0;
|
||||
}
|
||||
|
||||
rxbuf = (unsigned char*)rx_dma_chain->dma_virt+rx_offset;
|
||||
|
|
|
@ -141,7 +141,6 @@ static void wp_tdmapi_init_buffs(wanpipe_tdm_api_dev_t *tdm_api, int option)
|
|||
wan_smp_flag_t flags;
|
||||
int lock=1;
|
||||
|
||||
/* FIXME: Cause random crashes */
|
||||
return;
|
||||
|
||||
card = (sdla_t*)tdm_api->card;
|
||||
|
@ -2201,7 +2200,7 @@ wanpipe_tdm_api_event_ioctl(wanpipe_tdm_api_dev_t *tdm_api, wanpipe_api_cmd_t *t
|
|||
|
||||
case WP_API_EVENT_DTMF:
|
||||
|
||||
event_ctrl.type = WAN_EVENT_EC_DTMF;
|
||||
event_ctrl.type = WAN_EVENT_EC_DTMF;
|
||||
|
||||
if (!card->wandev.ec_enable || card->wandev.ec_enable_map == 0){
|
||||
if (card->wandev.config_id == WANCONFIG_AFT_ANALOG) {
|
||||
|
@ -2214,7 +2213,7 @@ wanpipe_tdm_api_event_ioctl(wanpipe_tdm_api_dev_t *tdm_api, wanpipe_api_cmd_t *t
|
|||
}
|
||||
} else {
|
||||
|
||||
DEBUG_EVENT("%s: %s HW EC DTMF event %X %p !\n",
|
||||
DEBUG_TEST("%s: %s HW EC DTMF event %X %p !\n",
|
||||
tdm_api->name,
|
||||
WP_API_EVENT_MODE_DECODE(tdm_event->wp_api_event_mode),
|
||||
tdm_api->active_ch,card->wandev.ec_enable);
|
||||
|
@ -2227,12 +2226,16 @@ wanpipe_tdm_api_event_ioctl(wanpipe_tdm_api_dev_t *tdm_api, wanpipe_api_cmd_t *t
|
|||
}else{
|
||||
event_ctrl.mode = WAN_EVENT_DISABLE;
|
||||
}
|
||||
if(tdm_event->channel < 1 || tdm_event->channel > NUM_OF_E1_CHANNELS - 1/* 31 */){
|
||||
DEBUG_TDMAPI("%s(): %s: Warning: DTMF control requested on invalid channel %u!\n",
|
||||
__FUNCTION__, tdm_api->name, tdm_event->channel);
|
||||
tdm_event->channel = 1;/* */
|
||||
|
||||
event_ctrl.mode = WAN_EC_CHANNEL_PORT_SOUT;
|
||||
#if 0
|
||||
if(tdm_event->channel < 1 || tdm_event->channel > NUM_OF_E1_CHANNELS - 1){
|
||||
DEBUG_EVENT("%s: Error: DTMF control requested on invalid channel %u!\n",
|
||||
tdm_api->name, tdm_event->channel);
|
||||
return -EINVAL;
|
||||
}
|
||||
event_ctrl.channel = tdm_event->channel;
|
||||
#endif
|
||||
event_ctrl.channel = tdm_api->tdm_chan;
|
||||
break;
|
||||
|
||||
|
||||
|
|
|
@ -680,7 +680,7 @@ int wanec_ChannelOpen(wan_ec_dev_t *ec_dev, INT ec_chan, int verbose)
|
|||
"MULAW":"ALAW");
|
||||
|
||||
DEBUG_EVENT("%s: Opening HW Echo Canceller (NoiseRed=%s)\n",
|
||||
ec->name,card->hwec_conf.noise_reduction_disable?"Off":"On");
|
||||
ec->name,card->hwec_conf.noise_reduction?"On":"Off");
|
||||
|
||||
|
||||
Oct6100ChannelOpenDef( &EchoChannelOpen );
|
||||
|
@ -732,10 +732,10 @@ int wanec_ChannelOpen(wan_ec_dev_t *ec_dev, INT ec_chan, int verbose)
|
|||
EchoChannelOpen.VqeConfig.ulToneDisablerVqeActivationDelay);
|
||||
}
|
||||
|
||||
if (card->hwec_conf.noise_reduction_disable) {
|
||||
EchoChannelOpen.VqeConfig.fSoutAdaptiveNoiseReduction = FALSE;
|
||||
} else {
|
||||
if (card->hwec_conf.noise_reduction) {
|
||||
EchoChannelOpen.VqeConfig.fSoutAdaptiveNoiseReduction = TRUE;
|
||||
} else {
|
||||
EchoChannelOpen.VqeConfig.fSoutAdaptiveNoiseReduction = FALSE;
|
||||
}
|
||||
|
||||
EchoChannelOpen.VqeConfig.ulComfortNoiseMode =
|
||||
|
|
|
@ -1975,11 +1975,11 @@ static int wanec_event_ctrl(void *arg, void *pcard, wan_event_ctrl_t *event_ctrl
|
|||
case WAN_EVENT_EC_DTMF:
|
||||
{
|
||||
wanec_tone_config_t tone;
|
||||
tone.id = (u8)event_ctrl->type;
|
||||
tone.port_map = WAN_EC_CHANNEL_PORT_SOUT|WAN_EC_CHANNEL_PORT_ROUT;
|
||||
tone.id = WP_API_EVENT_TONE_DTMF;
|
||||
tone.port_map = WAN_EC_CHANNEL_PORT_SOUT;
|
||||
tone.type = WAN_EC_TONE_PRESENT;
|
||||
enable = (event_ctrl->mode == WAN_EVENT_ENABLE) ? WAN_TRUE : WAN_FALSE;
|
||||
wanec_channel_tone(ec_dev, event_ctrl->channel, enable, &tone, wanec_verbose);
|
||||
err=wanec_channel_tone(ec_dev, event_ctrl->channel, enable, &tone, wanec_verbose);
|
||||
}
|
||||
break;
|
||||
case WAN_EVENT_EC_H100_REPORT:
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
%define WANPIPE_VER wanpipe-modules
|
||||
%define name %{WANPIPE_VER}
|
||||
%define version 3.5.3
|
||||
%define version 3.5.4
|
||||
%define release 0
|
||||
%define serial 1
|
||||
%define MODULES_DIR /lib/modules
|
||||
|
@ -51,6 +51,19 @@ echo "Wanpipe Modules located in %{MODULES_DIR}/%{KVERSION}"
|
|||
|
||||
%changelog
|
||||
|
||||
* Tue Jun 29 2009 Nenad Corbic <ncorbic@sangoma.com> - 3.5.4
|
||||
===================================================================
|
||||
|
||||
- E1 Voice Bug fix introduced in 3.5.3
|
||||
|
||||
- Removed NOISE REDUCTION enabled by default.
|
||||
The noise reduction is disabled by default and should be
|
||||
enabled using HWEC_NOISE_REDUCTION = YES
|
||||
|
||||
- Fixed libsangoma enable dtmf events functionality
|
||||
|
||||
|
||||
|
||||
* Tue Jun 25 2009 Nenad Corbic <ncorbic@sangoma.com> - 3.5.3
|
||||
===================================================================
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
%define KERNEL_VERSION %{?kern_ver}
|
||||
%define WANPIPE_VER wanpipe-util
|
||||
%define name %{WANPIPE_VER}
|
||||
%define version 3.5.3
|
||||
%define version 3.5.4
|
||||
%define release 0
|
||||
%define serial 1
|
||||
%define ETC_DIR /etc
|
||||
|
@ -328,6 +328,19 @@ enable_smg_log;
|
|||
|
||||
%changelog
|
||||
|
||||
* Tue Jun 29 2009 Nenad Corbic <ncorbic@sangoma.com> - 3.5.4
|
||||
===================================================================
|
||||
|
||||
- E1 Voice Bug fix introduced in 3.5.3
|
||||
|
||||
- Removed NOISE REDUCTION enabled by default.
|
||||
The noise reduction is disabled by default and should be
|
||||
enabled using HWEC_NOISE_REDUCTION = YES
|
||||
|
||||
- Fixed libsangoma enable dtmf events functionality
|
||||
|
||||
|
||||
|
||||
* Tue Jun 25 2009 Nenad Corbic <ncorbic@sangoma.com> - 3.5.3
|
||||
===================================================================
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
%define KERNEL_VERSION %{?kern_ver}
|
||||
%define WANPIPE_VER wanpipe
|
||||
%define name %{WANPIPE_VER}
|
||||
%define version 3.5.3
|
||||
%define version 3.5.4
|
||||
%define release 0
|
||||
%define serial 1
|
||||
%define UTILS_DIR /usr/sbin
|
||||
|
@ -255,6 +255,19 @@ install_init;
|
|||
|
||||
%changelog
|
||||
|
||||
* Tue Jun 29 2009 Nenad Corbic <ncorbic@sangoma.com> - 3.5.4
|
||||
===================================================================
|
||||
|
||||
- E1 Voice Bug fix introduced in 3.5.3
|
||||
|
||||
- Removed NOISE REDUCTION enabled by default.
|
||||
The noise reduction is disabled by default and should be
|
||||
enabled using HWEC_NOISE_REDUCTION = YES
|
||||
|
||||
- Fixed libsangoma enable dtmf events functionality
|
||||
|
||||
|
||||
|
||||
* Tue Jun 25 2009 Nenad Corbic <ncorbic@sangoma.com> - 3.5.3
|
||||
===================================================================
|
||||
|
||||
|
|
|
@ -2205,7 +2205,7 @@ init_global_params()
|
|||
{
|
||||
|
||||
if [ $OSYSTEM = "Linux" ]; then
|
||||
ROUTER_VERSION=3.5.3
|
||||
ROUTER_VERSION=3.5.4
|
||||
IFCONFIG_LIST=ifconfig
|
||||
MODULE_STAT=lsmod
|
||||
WAN_DRIVERS="wanpipe"
|
||||
|
|
Loading…
Reference in New Issue