[svn-commits] sruffell: branch sruffell/voicebus r3982 - in /team/sruffell/voicebus: firmwa...
SVN commits to the Digium repositories
svn-commits at lists.digium.com
Fri Mar 14 03:48:33 CDT 2008
Author: sruffell
Date: Fri Mar 14 03:48:31 2008
New Revision: 3982
URL: http://svn.digium.com/view/zaptel?view=rev&rev=3982
Log:
Merging in the changes to support VPMADT032 Firmware Revision 1.16.
Modified:
team/sruffell/voicebus/firmware/Makefile
team/sruffell/voicebus/kernel/wctdm24xxp/GpakApi.c
team/sruffell/voicebus/kernel/wctdm24xxp/GpakApi.h
team/sruffell/voicebus/kernel/wctdm24xxp/base.c
Modified: team/sruffell/voicebus/firmware/Makefile
URL: http://svn.digium.com/view/zaptel/team/sruffell/voicebus/firmware/Makefile?view=diff&rev=3982&r1=3981&r2=3982
==============================================================================
--- team/sruffell/voicebus/firmware/Makefile (original)
+++ team/sruffell/voicebus/firmware/Makefile Fri Mar 14 03:48:31 2008
@@ -20,7 +20,7 @@
OCT6114_064_VERSION:=1.05.01
OCT6114_128_VERSION:=1.05.01
TC400M_VERSION:=MR6.12
-VPMADT032_VERSION:=1.07
+VPMADT032_VERSION:=1.16
FIRMWARE_URL:=http://downloads.digium.com/pub/telephony/firmware/releases
Modified: team/sruffell/voicebus/kernel/wctdm24xxp/GpakApi.c
URL: http://svn.digium.com/view/zaptel/team/sruffell/voicebus/kernel/wctdm24xxp/GpakApi.c?view=diff&rev=3982&r1=3981&r2=3982
==============================================================================
--- team/sruffell/voicebus/kernel/wctdm24xxp/GpakApi.c (original)
+++ team/sruffell/voicebus/kernel/wctdm24xxp/GpakApi.c Fri Mar 14 03:48:31 2008
@@ -32,10 +32,9 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
-
+
#include <linux/version.h>
#include <asm/semaphore.h>
-
#include "zaptel.h"
#include "GpakHpi.h"
@@ -129,7 +128,10 @@
DSP_ADDRESS IfBlockPntr; /* Interface Block pointer */
DSP_WORD DspStatus; /* DSP Status */
DSP_WORD DspChannels; /* number of DSP channels */
+ DSP_WORD DspConfs; /* number of DSP conferences */
+ DSP_ADDRESS PktBufrMem; /* address of Packet Buffer */
DSP_WORD Temp[2];
+ unsigned short int i; /* loop index / counter */
/* Read the pointer to the Interface Block. */
gpakReadDspMemory(DspId, DSP_IFBLK_ADDRESS, 2, Temp);
@@ -558,7 +560,7 @@
((pPortConfig->RxFrameSyncPolarity2 << 4) & 0x0010) |
((pPortConfig->TxFrameSyncPolarity2 << 3) & 0x0008) |
((pPortConfig->CompandingMode2 << 1) & 0x0006) |
- (pPortConfig->SerialWordSize1 & 0x0001));
+ (pPortConfig->SerialWordSize2 & 0x0001));
MsgBuffer[12] = (DSP_WORD)
(((pPortConfig->DxDelay3 << 11) & 0x0800) |
@@ -730,8 +732,16 @@
pChanConfig->EcanParametersB.EcanNumFirSegments;
MsgBuffer[34] = (DSP_WORD)
pChanConfig->EcanParametersB.EcanFirSegmentLen;
-
- MsgLength = 70; // byte number == 35*2
+ MsgBuffer[35] = (DSP_WORD)
+ pChanConfig->EcanParametersA.EcanTandemOperationEnable;
+ MsgBuffer[36] = (DSP_WORD)
+ pChanConfig->EcanParametersA.EcanMixedFourWireMode;
+ MsgBuffer[37] = (DSP_WORD)
+ pChanConfig->EcanParametersB.EcanTandemOperationEnable;
+ MsgBuffer[38] = (DSP_WORD)
+ pChanConfig->EcanParametersB.EcanMixedFourWireMode;
+
+ MsgLength = 78; // byte number == 39*2
break;
@@ -887,32 +897,21 @@
DSP_WORD TakeIndex; /* event fifo take index */
DSP_WORD WordsReady; /* number words ready for read out of event fifo */
DSP_WORD EventError; /* flag indicating error with event fifo msg */
-#if 0
DSP_WORD *pDebugData; /* debug data buffer pointer in event data struct */
-#endif
/* Make sure the DSP Id is valid. */
- if (DspId >= MAX_DSP_CORES) {
-#if 0
- printk("Invalid DSP\n");
-#endif
+ if (DspId >= MAX_DSP_CORES)
return (RefInvalidDsp);
- }
/* Lock access to the DSP. */
gpakLockAccess(DspId);
-#if 1
/* Check if the DSP was reset and is ready. */
if (CheckDspReset(DspId) == -1)
{
gpakUnlockAccess(DspId);
-#if 0
- printk("CheckDspReset failed (DspId %d)\n", DspId);
-#endif
return (RefDspCommFailure);
}
-#endif
/* Check if an event message is ready in the DSP. */
EventInfoAddress = pEventFifoAddress[DspId];
@@ -953,9 +952,6 @@
if (EventDataLength > WORD_BUFFER_SIZE)
{
gpakUnlockAccess(DspId);
-#if 0
- printk("EventDataLength > WORD_BUFFER_SIZE (%d)\n", EventDataLength);
-#endif
return (RefInvalidEvent);
}
ReadCircBuffer(DspId, BufrBaseAddress, BufrLastAddress, &TakeAddress,
@@ -968,18 +964,11 @@
TakeIndex += EventDataLength;
if (TakeIndex >= BufrSize)
TakeIndex -= BufrSize;
- if (EventDataLength != 4) {
-#if 0
- printk("EventDataLength != 4 it's %d\n", EventDataLength);
-#endif
+ if (EventDataLength != 4)
EventError = 1;
- }
break;
default:
-#if 0
- printk("Event Code not in switch\n");
-#endif
EventError = 1;
break;
};
Modified: team/sruffell/voicebus/kernel/wctdm24xxp/GpakApi.h
URL: http://svn.digium.com/view/zaptel/team/sruffell/voicebus/kernel/wctdm24xxp/GpakApi.h?view=diff&rev=3982&r1=3981&r2=3982
==============================================================================
--- team/sruffell/voicebus/kernel/wctdm24xxp/GpakApi.h (original)
+++ team/sruffell/voicebus/kernel/wctdm24xxp/GpakApi.h Fri Mar 14 03:48:31 2008
@@ -77,6 +77,9 @@
short int EcanCrossCorrLimit; // Echo Can Cross Correlation limit
short int EcanNumFirSegments; // Echo Can Num FIR Segments
short int EcanFirSegmentLen; // Echo Can FIR Segment Length
+ short int EcanTandemOperationEnable; //Enable tandem operation
+ short int EcanMixedFourWireMode; // Handle possible 4-wire (echo-free) lines
+
} GpakEcanParms_t;
/* Definition of a Channel Configuration information structure. */
Modified: team/sruffell/voicebus/kernel/wctdm24xxp/base.c
URL: http://svn.digium.com/view/zaptel/team/sruffell/voicebus/kernel/wctdm24xxp/base.c?view=diff&rev=3982&r1=3981&r2=3982
==============================================================================
--- team/sruffell/voicebus/kernel/wctdm24xxp/base.c (original)
+++ team/sruffell/voicebus/kernel/wctdm24xxp/base.c Fri Mar 14 03:48:31 2008
@@ -206,7 +206,7 @@
* 4 : Suppression NLP - In order to use this, you must set the vpmnlpmaxsupp parameter to
* some value in order to give the amount of dB to suppress to the suppressor
*/
-static int vpmnlptype = 1;
+static int vpmnlptype = 3;
/* This is the threshold (in dB) for enabling and disabling of the NLP */
static int vpmnlpthresh = 24;
/* See vpmnlptype = 4 for more info */
@@ -2944,13 +2944,15 @@
chanconfig->EcanParametersA.EcanDblTalkThresh = 6;
chanconfig->EcanParametersA.EcanNlpThreshold = parms->nlp_threshold;
chanconfig->EcanParametersA.EcanNlpConv = 0;
- chanconfig->EcanParametersA.EcanNlpUnConv = 0;
+ chanconfig->EcanParametersA.EcanNlpUnConv = 12;
chanconfig->EcanParametersA.EcanNlpMaxSuppress = parms->nlp_max_suppress;
chanconfig->EcanParametersA.EcanCngThreshold = 43;
chanconfig->EcanParametersA.EcanAdaptLimit = 50;
chanconfig->EcanParametersA.EcanCrossCorrLimit = 15;
chanconfig->EcanParametersA.EcanNumFirSegments = 3;
chanconfig->EcanParametersA.EcanFirSegmentLen = 64;
+ chanconfig->EcanParametersA.EcanTandemOperationEnable = 1;
+ chanconfig->EcanParametersA.EcanMixedFourWireMode = 1;
chanconfig->EcanParametersB.EcanTapLength = 1024;
chanconfig->EcanParametersB.EcanNlpType = parms->nlp_type;
@@ -2959,13 +2961,15 @@
chanconfig->EcanParametersB.EcanDblTalkThresh = 6;
chanconfig->EcanParametersB.EcanNlpThreshold = parms->nlp_threshold;
chanconfig->EcanParametersB.EcanNlpConv = 0;
- chanconfig->EcanParametersB.EcanNlpUnConv = 0;
+ chanconfig->EcanParametersB.EcanNlpUnConv = 12;
chanconfig->EcanParametersB.EcanNlpMaxSuppress = parms->nlp_max_suppress;
chanconfig->EcanParametersB.EcanCngThreshold = 43;
chanconfig->EcanParametersB.EcanAdaptLimit = 50;
chanconfig->EcanParametersB.EcanCrossCorrLimit = 15;
chanconfig->EcanParametersB.EcanNumFirSegments = 3;
chanconfig->EcanParametersB.EcanFirSegmentLen = 64;
+ chanconfig->EcanParametersB.EcanTandemOperationEnable = 1;
+ chanconfig->EcanParametersB.EcanMixedFourWireMode = 1;
}
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)
More information about the svn-commits
mailing list