[asterisk-scf-commits] team/sruffell/dahdi-linux.git branch "octapi2" created.
Commits to the Asterisk SCF project code repositories
asterisk-scf-commits at lists.digium.com
Wed Feb 2 15:02:40 CST 2011
branch "octapi2" has been created
at 0794c96627efb3a74f1be0c3e8416204204a222f (commit)
- Log -----------------------------------------------------------------
commit 0794c96627efb3a74f1be0c3e8416204204a222f
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 17:55:01 2011 -0600
wip
diff --git a/drivers/dahdi/wct4xxp/vpm450m.c b/drivers/dahdi/wct4xxp/vpm450m.c
index f4126a0..7703af4 100644
--- a/drivers/dahdi/wct4xxp/vpm450m.c
+++ b/drivers/dahdi/wct4xxp/vpm450m.c
@@ -515,8 +515,10 @@ struct vpm450m *init_vpm450m(void *wc, int *isalaw, int numspans, const struct f
trace_printk("HERE:%d %d\n", __LINE__, x);
ulResult = Oct6100ChannelOpen(vpm450m->pApiInstance, ChannelOpen);
trace_printk("HERE:%d\n", __LINE__);
- if (ulResult != GENERIC_OK)
+ if (ulResult != GENERIC_OK) {
printk(KERN_NOTICE "Failed to open channel %d!\n", x);
+ continue;
+ }
trace_printk("HERE:%d\n", __LINE__);
for (y = 0; y < ARRAY_SIZE(tones); y++) {
commit 59d7436a446d20b718a5b793ddda2019fc85b4a8
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 17:10:52 2011 -0600
wiP
diff --git a/drivers/dahdi/wct4xxp/vpm450m.c b/drivers/dahdi/wct4xxp/vpm450m.c
index 23df906..f4126a0 100644
--- a/drivers/dahdi/wct4xxp/vpm450m.c
+++ b/drivers/dahdi/wct4xxp/vpm450m.c
@@ -523,8 +523,10 @@ struct vpm450m *init_vpm450m(void *wc, int *isalaw, int numspans, const struct f
struct oct6100_tone_detection_enable enable;
Oct6100ToneDetectionEnableDef(&enable);
enable.ulToneNumber = tones[y];
- if (Oct6100ToneDetectionEnable(vpm450m->pApiInstance, &enable) != GENERIC_OK)
+ if (Oct6100ToneDetectionEnable(vpm450m->pApiInstance, &enable) != GENERIC_OK) {
printk(KERN_NOTICE "Failed to enable tone detection on channel %d for tone %d!\n", x, y);
+ break;
+ }
}
trace_printk("HERE:%d\n", __LINE__);
}
commit 191a8b36392e1d73d475f1ffff48324a278ef7a1
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 17:10:37 2011 -0600
wiP
diff --git a/drivers/dahdi/wct4xxp/octapi.c b/drivers/dahdi/wct4xxp/octapi.c
index c9b5ef7..45bb68b 100644
--- a/drivers/dahdi/wct4xxp/octapi.c
+++ b/drivers/dahdi/wct4xxp/octapi.c
@@ -19855,8 +19855,10 @@ u32 Oct6100ToneDetectionEnable(
&ulToneEventNumber,
&ulExtToneChanIndex);
- if (ulResult != cOCT6100_ERR_OK)
+ if (ulResult != cOCT6100_ERR_OK) {
+ trace_printk("HERE:%d %d\n", __LINE__, ulResult);
return ulResult;
+ }
trace_printk("HERE:%d\n", __LINE__);
/* Write to all resources needed to enable tone detection. */
commit 7f653ad1613f05041e43d6c6068b180de81e43df
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 17:06:53 2011 -0600
dbg
diff --git a/drivers/dahdi/wct4xxp/octapi.c b/drivers/dahdi/wct4xxp/octapi.c
index 287d633..c9b5ef7 100644
--- a/drivers/dahdi/wct4xxp/octapi.c
+++ b/drivers/dahdi/wct4xxp/octapi.c
@@ -3487,26 +3487,6 @@ struct llm_alloc {
u32 allocated_items; /* Allocated items in linked list.*/
};
-/* This section contains memory structures and functions used
- to maintain a variable number of lists (FIFOs) that each
- have a variable amount of items. A total amount of items
- can be assigned through-out all the lists. Each item in
- each list contains a u32 specified by the software using
- the lists. Each used item in the list is accessible through
- it's position in the list. */
-
-struct llm_list_head {
- u32 list_length; /* Current number of items in the list.*/
- /* 0xFFFFFFFF means that the list is not used.*/
- u32 head_pointer; /* Number of the item in the item pool that is the first of this list.*/
- /* 0xFFFFFFFF indicates end-of-list link.*/
- u32 tail_pointer; /* Number of the item in the item pool that is the last of this list.*/
-
- /* Item cache (pointer within the list of the last accessed item):*/
- u32 cache_item_number; /* Number of the last accessed item in the list. 0xFFFFFFFF indicates invalid cache.*/
- u32 cache_item_pointer; /* Number of the last accessed item in the item pool.*/
-};
-
static u32 Oct6100ConfBridgeCloseDef(
struct oct6100_conf_bridge_close *f_pConfBridgeClose);
static u32 Oct6100ConfBridgeClose(
@@ -19866,6 +19846,7 @@ u32 Oct6100ToneDetectionEnable(
u32 ulResult;
+ trace_printk("HERE:%d\n", __LINE__);
/* Check the user's configuration of the tone detection for errors. */
ulResult = Oct6100ApiCheckToneEnableParams(
instance,
@@ -19877,6 +19858,7 @@ u32 Oct6100ToneDetectionEnable(
if (ulResult != cOCT6100_ERR_OK)
return ulResult;
+ trace_printk("HERE:%d\n", __LINE__);
/* Write to all resources needed to enable tone detection. */
ulResult = Oct6100ApiWriteToneDetectEvent(
instance,
@@ -19886,6 +19868,7 @@ u32 Oct6100ToneDetectionEnable(
ulExtToneChanIndex);
if (ulResult != cOCT6100_ERR_OK)
return ulResult;
+ trace_printk("HERE:%d\n", __LINE__);
/* Update the channel entry to indicate that a new tone has been activated. */
ulResult = Oct6100ApiUpdateChanToneDetectEntry(
@@ -19893,9 +19876,11 @@ u32 Oct6100ToneDetectionEnable(
ulChanIndex,
ulToneEventNumber,
ulExtToneChanIndex);
+ trace_printk("HERE:%d\n", __LINE__);
if (ulResult != cOCT6100_ERR_OK)
return ulResult;
+ trace_printk("HERE:%d\n", __LINE__);
return cOCT6100_ERR_OK;
}
commit 42a4017995cbf776fe3a3152dace9062bbc8c703
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 17:02:55 2011 -0600
wip
diff --git a/drivers/dahdi/wct4xxp/octapi.c b/drivers/dahdi/wct4xxp/octapi.c
index 1a0cfc0..287d633 100644
--- a/drivers/dahdi/wct4xxp/octapi.c
+++ b/drivers/dahdi/wct4xxp/octapi.c
@@ -3507,22 +3507,6 @@ struct llm_list_head {
u32 cache_item_pointer; /* Number of the last accessed item in the item pool.*/
};
-struct llm_list_item {
- u32 forward_link; /* Number of the item in the item pool that is next in this list.*/
- /* 0xFFFFFFFF indicates end-of-list link.*/
-
- /* User item info (variable size)*/
- u32 user_info[1];
-};
-
-struct llm_list {
- /* Table of all the possible list heads:*/
- struct llm_list_head *lh;
-
- /* Table of the list items:*/
- struct llm_list_item *li;
-};
-
static u32 Oct6100ConfBridgeCloseDef(
struct oct6100_conf_bridge_close *f_pConfBridgeClose);
static u32 Oct6100ConfBridgeClose(
commit 331131fa124db4d82a6fbf2c59076c7ca37ba514
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 17:02:06 2011 -0600
wip
diff --git a/drivers/dahdi/wct4xxp/octapi.c b/drivers/dahdi/wct4xxp/octapi.c
index 228eccf..1a0cfc0 100644
--- a/drivers/dahdi/wct4xxp/octapi.c
+++ b/drivers/dahdi/wct4xxp/octapi.c
@@ -3516,26 +3516,11 @@ struct llm_list_item {
};
struct llm_list {
- u32 user_info_bytes; /* In bytes, size of the user info in a single item.*/
- u32 user_info_size; /* In bytes, size of the user info in a single item.*/
- u32 item_size;
-
- u32 head_alloc_size;
- u32 total_items;
- u32 assigned_items;
-
- u32 total_lists;
- u32 assigned_lists;
-
- u32 next_empty_item; /* Contains a pointer to the next empty item in the*/
- /* item pool.*/
-
/* Table of all the possible list heads:*/
- struct llm_list_head * lh;
- void *list_head_alloc; /* struct llm_alloc structure used for list head allocation!*/
+ struct llm_list_head *lh;
/* Table of the list items:*/
- struct llm_list_item * li;
+ struct llm_list_item *li;
};
static u32 Oct6100ConfBridgeCloseDef(
commit 5d85c83e0c04bc3a08f2f737f03c0dcc521b14ac
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 17:00:01 2011 -0600
wip
diff --git a/drivers/dahdi/wct4xxp/octapi.c b/drivers/dahdi/wct4xxp/octapi.c
index f1d118a..228eccf 100644
--- a/drivers/dahdi/wct4xxp/octapi.c
+++ b/drivers/dahdi/wct4xxp/octapi.c
@@ -3487,26 +3487,6 @@ struct llm_alloc {
u32 allocated_items; /* Allocated items in linked list.*/
};
-struct tllm_alloc_node {
- u32 value; /* Each item is either used (0xFFFFFFFE)*/
- /* or unused (pointer to next unused item, 0xFFFFFFFF means last item reached).*/
- u32 timeout[2]; /* Timeout value that must be exceeded for the node to be considered free again.*/
-};
-
-struct tllm_alloc {
- struct tllm_alloc_node *linked_list; /* List of nodes used by the link list.*/
-
- u32 next_avail_num; /* Points to the next available item in linked list. (0xFFFFFFFF means none available)*/
- u32 number_of_items; /* Total number of items in linked list.*/
- u32 allocated_items; /* Allocated items in linked list.*/
-
- u32 number_of_timeout; /* Number of block currently in timeout.*/
- u32 next_timeout_num; /* Points to the next block currently in timeout.*/
- u32 last_timeout_num; /* Last node of the timeout list.*/
-
- u32 last_known_time[2]; /* last known time.*/
-};
-
/* This section contains memory structures and functions used
to maintain a variable number of lists (FIFOs) that each
have a variable amount of items. A total amount of items
commit 8018e886cd8debc7c1a55d7332dd8f518df6b477
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 16:59:16 2011 -0600
wip
diff --git a/drivers/dahdi/wct4xxp/octapi.c b/drivers/dahdi/wct4xxp/octapi.c
index 7a595de..f1d118a 100644
--- a/drivers/dahdi/wct4xxp/octapi.c
+++ b/drivers/dahdi/wct4xxp/octapi.c
@@ -823,9 +823,6 @@ $Octasic_Revision: 42 $
#define cOCT6100_MAX_ECHO_CHANNELS 672
#define cOCT6100_MAX_TSI_CNCTS 1530
#define cOCT6100_MAX_CALLER_ID_PLAYOUT_BUFFERS (3328 + 6)
-#define cOCT6100_MAX_PLAYOUT_BUFFERS (1344 + cOCT6100_MAX_CALLER_ID_PLAYOUT_BUFFERS)
-#define cOCT6100_MAX_CONF_BRIDGE 672
-#define cOCT6100_MAX_FLEX_CONF_PARTICIPANTS cOCT6100_MAX_ECHO_CHANNELS
#define cOCT6100_MAX_PHASING_TSST 16
#define cOCT6100_MAX_ADPCM_CHANNELS 672
@@ -3640,9 +3637,6 @@ static u32 Oct6100ApiCheckProcessorState(
struct oct6100_interrupt_flags *f_pIntFlags);
-static u32 Oct6100ApiMixerSwInit(
- struct oct6100_instance_api *instance);
-
static u32 Oct6100ApiMixerEventAdd(
struct oct6100_instance_api *instance,
u16 f_usEventIndex,
@@ -3700,9 +3694,6 @@ static u32 Oct6100ApiGetConfBridgeSwSizes(
struct oct6100_chip_open *f_pOpenChip,
struct oct6100_api_instance_sizes *f_pInstSizes);
-static u32 Oct6100ApiConfBridgeSwInit(
- struct oct6100_instance_api *f_pApiInst);
-
static u32 Oct6100ApiAssertBridgeParams(
struct oct6100_instance_api *f_pApiInst,
struct oct6100_conf_bridge_close *f_pConfBridgeClose,
@@ -4628,9 +4619,6 @@ static u32 Oct6100ApiGetTsiCnctSwSizes(
struct oct6100_chip_open *f_pOpenChip,
struct oct6100_api_instance_sizes *f_pInstSizes);
-static u32 Oct6100ApiTsiCnctSwInit(
- struct oct6100_instance_api *instance);
-
/* TSI allocation pointer macros. */
#define mOCT6100_GET_TSI_MEMORY_ALLOC_PNT(pSharedInfo, pAlloc) \
pAlloc = (void*)((u8*)pSharedInfo + pSharedInfo->ulTsiMemoryAllocOfst);
@@ -4674,13 +4662,6 @@ static u32 Oct6100ApiReleaseConversionMemEntry(
#define mOCT6100_GET_BUFFER_ALLOC_PNT(pSharedInfo, pAlloc) \
pAlloc = (void*)((u8*)pSharedInfo + pSharedInfo->ulPlayoutBufAllocOfst);
-static u32 Oct6100ApiGetPlayoutBufferSwSizes(
- struct oct6100_chip_open *f_pOpenChip,
- struct oct6100_api_instance_sizes *f_pInstSizes);
-
-static u32 Oct6100ApiPlayoutBufferSwInit(
- struct oct6100_instance_api *instance);
-
static u32 Oct6100ApiAssertPlayoutStopParams(
struct oct6100_instance_api *instance,
struct oct6100_buffer_playout_stop *f_pBufferPlayoutStop,
@@ -7265,114 +7246,6 @@ static u32 Oct6100BufferPlayoutStopDef(
/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*\
-Function: Oct6100ApiGetPlayoutBufferSwSizes
-
-Description: Gets the sizes of all portions of the API instance pertinent
- to the management of playout buffers.
-
--------------------------------------------------------------------------------
-| Argument | Description
--------------------------------------------------------------------------------
-f_pOpenChip Pointer to chip configuration struct.
-f_pInstSizes Pointer to struct containing instance sizes.
-
-\*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/
-
-static u32 Oct6100ApiGetPlayoutBufferSwSizes(
- struct oct6100_chip_open *f_pOpenChip,
- struct oct6100_api_instance_sizes *f_pInstSizes)
-{
- u32 ulTempVar;
- u32 ulResult;
-
- /* Calculate memory needed for playout buffer list. */
- f_pInstSizes->ulPlayoutBufList = f_pOpenChip->ulMaxPlayoutBuffers * sizeof(struct oct6100_api_buffer);
-
- f_pInstSizes->ulPlayoutBufMemoryNodeList = 0;
-
- /* Calculate memory needed for playout buffer allocation software. */
- if (f_pOpenChip->ulMaxPlayoutBuffers > 0)
- {
- ulResult = OctapiLlmAllocGetSize(f_pOpenChip->ulMaxPlayoutBuffers, &f_pInstSizes->ulPlayoutBufAlloc);
- if (ulResult != cOCT6100_ERR_OK)
- return cOCT6100_ERR_FATAL_3C;
-
- f_pInstSizes->ulPlayoutBufMemoryNodeList = 2 * f_pOpenChip->ulMaxPlayoutBuffers * sizeof(struct oct6100_api_buffer_playout_malloc_node);
- }
- else
- {
- f_pInstSizes->ulPlayoutBufAlloc = 0;
- }
-
- /* Calculate memory needed for list and allocation software serialization. */
- mOCT6100_ROUND_MEMORY_SIZE(f_pInstSizes->ulPlayoutBufList, ulTempVar)
- mOCT6100_ROUND_MEMORY_SIZE(f_pInstSizes->ulPlayoutBufAlloc, ulTempVar)
- mOCT6100_ROUND_MEMORY_SIZE(f_pInstSizes->ulPlayoutBufMemoryNodeList, ulTempVar)
-
- return cOCT6100_ERR_OK;
-}
-
-/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*\
-
-Function: Oct6100ApiPlayoutBufferSwInit
-
-Description: Initializes all elements of the instance structure associated
- to playout buffers.
-
--------------------------------------------------------------------------------
-| Argument | Description
--------------------------------------------------------------------------------
-instance Pointer to API instance. This memory is used to keep
- the present state of the chip and all its resources.
-
-\*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/
-
-static u32 Oct6100ApiPlayoutBufferSwInit(
- struct oct6100_instance_api *instance)
-{
- struct oct6100_shared_info *pSharedInfo;
- struct oct6100_api_buffer *pBufferList;
- void* pBufferPlayoutAlloc;
- u32 ulMaxBufferPlayout;
- u32 ulResult, i;
-
- /* Get local pointer to shared portion of instance. */
- pSharedInfo = instance->pSharedInfo;
-
- /* Get the maximum number of buffer playout. */
- ulMaxBufferPlayout = pSharedInfo->ChipConfig.usMaxPlayoutBuffers;
-
- /* Set all entries in the buffer playout list to unused. */
- mOCT6100_GET_BUFFER_LIST_PNT(pSharedInfo, pBufferList)
-
- for (i = 0; i < ulMaxBufferPlayout; i++)
- {
- pBufferList[i].fReserved = false;
- pBufferList[i].ulBufferSize = 0;
- pBufferList[i].ulBufferBase = cOCT6100_INVALID_VALUE;
- pBufferList[i].usDependencyCnt = 0;
- pBufferList[i].byBufferPcmLaw = cOCT6100_PCM_U_LAW;
-
- }
-
- /* Initialize the buffer playout allocation software to "all free". */
- if (ulMaxBufferPlayout > 0)
- {
- mOCT6100_GET_BUFFER_ALLOC_PNT(pSharedInfo, pBufferPlayoutAlloc)
-
- ulResult = OctapiLlmAllocInit(&pBufferPlayoutAlloc, ulMaxBufferPlayout);
- if (ulResult != cOCT6100_ERR_OK)
- return cOCT6100_ERR_FATAL_3D;
- }
-
- /* Initialize the amount of free memory used by playout. */
- instance->pSharedInfo->ChipStats.ulPlayoutMemUsed = 0;
-
- return cOCT6100_ERR_OK;
-}
-
-/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*\
-
Function: Oct6100BufferPlayoutStop
Description: Stops buffer playout on a channel.
@@ -17294,93 +17167,6 @@ static u32 Oct6100ApiGetConfBridgeSwSizes(
/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*\
-Function: Oct6100ApiConfBridgeSwInit
-
-Description: Initializes all elements of the instance structure associated
- to conference bridges.
-
--------------------------------------------------------------------------------
-| Argument | Description
--------------------------------------------------------------------------------
-instance Pointer to API instance. This memory is used to keep
- the present state of the chip and all its resources.
-
-\*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/
-
-static u32 Oct6100ApiConfBridgeSwInit(
- struct oct6100_instance_api *instance)
-{
- struct oct6100_shared_info *pSharedInfo;
- struct oct6100_api_conf_bridge *pConfBridgeList;
- struct oct6100_api_flex_conf_participant *pFlexConfParticipantList;
- void* pFlexConfPartipantsAlloc;
- u32 ulMaxFlexConfParicipants;
- void* pConfBridgeAlloc;
- u32 ulMaxConfBridges;
- u32 ulResult;
-
- /* Get local pointer to shared portion of instance. */
- pSharedInfo = instance->pSharedInfo;
-
- /* Get the maximum number of conference bridges. */
- ulMaxConfBridges = pSharedInfo->ChipConfig.usMaxConfBridges;
-
- /*===================================================================*/
- /* Set all entries in the conference bridge list to unused. */
-
- mOCT6100_GET_CONF_BRIDGE_LIST_PNT(pSharedInfo, pConfBridgeList);
-
- /* Initialize the conference bridge allocation software to "all free". */
- if (ulMaxConfBridges > 0)
- {
- /* Clear the bridge memory */
- memset(pConfBridgeList, 0x00, ulMaxConfBridges * sizeof(struct oct6100_api_conf_bridge));
-
- mOCT6100_GET_CONF_BRIDGE_ALLOC_PNT(pSharedInfo, pConfBridgeAlloc)
-
- ulResult = OctapiLlmAllocInit(&pConfBridgeAlloc, ulMaxConfBridges);
- if (ulResult != cOCT6100_ERR_OK)
- return cOCT6100_ERR_FATAL_1E;
- }
- /*===================================================================*/
-
- /*===================================================================*/
- /* Set all entries in the flexible conferencing participant list to unused. */
-
- /* Get the maximum number of flexible conferencing participants. */
- ulMaxFlexConfParicipants = pSharedInfo->ChipConfig.usMaxFlexibleConfParticipants;
-
- mOCT6100_GET_FLEX_CONF_PARTICIPANT_LIST_PNT(pSharedInfo, pFlexConfParticipantList);
-
- /* Initialize the flexible conferencing allocation software. */
- if (ulMaxFlexConfParicipants > 0)
- {
- u32 i, ulEventIndex;
-
- /* Clear the participants memory */
- memset(pFlexConfParticipantList, 0x00, ulMaxFlexConfParicipants * sizeof(struct oct6100_api_flex_conf_participant));
-
- mOCT6100_GET_FLEX_CONF_PARTICIPANT_ALLOC_PNT(pSharedInfo, pFlexConfPartipantsAlloc)
-
- ulResult = OctapiLlmAllocInit(&pFlexConfPartipantsAlloc, ulMaxFlexConfParicipants);
- if (ulResult != cOCT6100_ERR_OK)
- return cOCT6100_ERR_FATAL_1E;
-
- /* Initialize the conferencing indexes. */
- for (i = 0; i < ulMaxFlexConfParicipants; i ++)
- {
- for (ulEventIndex = 0; ulEventIndex < cOCT6100_MAX_FLEX_CONF_PARTICIPANTS_PER_BRIDGE; ulEventIndex ++)
- pFlexConfParticipantList[i].ausLoadOrAccumulateEventIndex[ulEventIndex] = cOCT6100_INVALID_INDEX;
- }
- }
-
- /*===================================================================*/
-
- return cOCT6100_ERR_OK;
-}
-
-/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*\
-
Function: Oct6100ConfBridgeCloseSer
Description: Closes a conference bridge. Note that no client must be present
@@ -20952,125 +20738,6 @@ static u32 Oct6100ApiIs2100Tone(
/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*\
-Function: Oct6100ApiMixerSwInit
-
-Description: Initializes all elements of the instance structure associated
- to the mixer events.
-
--------------------------------------------------------------------------------
-| Argument | Description
--------------------------------------------------------------------------------
-instance Pointer to API instance. This mixer is used to keep
- the present state of the chip and all its resources.
-
-\*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/
-
-static u32 Oct6100ApiMixerSwInit(
- struct oct6100_instance_api *instance)
-{
- struct oct6100_shared_info *pSharedInfo;
- struct oct6100_api_mixer_event *pMixerEventList;
- void* pMixerEventAlloc;
- void* pCopyEventAlloc;
- u32 ulTempVar;
- u32 ulResult;
-
- /* Get local pointer(s). */
- pSharedInfo = instance->pSharedInfo;
-
- /*===================================================================*/
- /* Initialize the mixer event list. */
- mOCT6100_GET_MIXER_EVENT_LIST_PNT(pSharedInfo, pMixerEventList);
-
- /* Initialize the mixer event allocation software to "all free". */
- memset(pMixerEventList, 0x00, cOCT6100_MAX_MIXER_EVENTS * sizeof(struct oct6100_api_mixer_event));
-
- mOCT6100_GET_MIXER_EVENT_ALLOC_PNT(pSharedInfo, pMixerEventAlloc)
-
- ulResult = OctapiLlmAllocInit(&pMixerEventAlloc, cOCT6100_MAX_MIXER_EVENTS);
- if (ulResult != cOCT6100_ERR_OK)
- return cOCT6100_ERR_FATAL_1F;
-
- /* Now reserve the first entry as the first node. */
- ulResult = OctapiLlmAllocAlloc(pMixerEventAlloc, &ulTempVar);
- if (ulResult != cOCT6100_ERR_OK)
- {
- return cOCT6100_ERR_FATAL_20;
- }
-
- /* Check that we obtain the first event. */
- if (ulTempVar != 0)
- return cOCT6100_ERR_FATAL_21;
-
- /* Now reserve the tail entry. */
- ulResult = OctapiLlmAllocAlloc(pMixerEventAlloc, &ulTempVar);
- if (ulResult != cOCT6100_ERR_OK)
- {
- return cOCT6100_ERR_FATAL_AA;
- }
- /* Check that we obtain the first event. */
- if (ulTempVar != 1)
- return cOCT6100_ERR_FATAL_AB;
-
- /* Program the head node. */
- pMixerEventList[cOCT6100_MIXER_HEAD_NODE].fReserved = true;
- pMixerEventList[cOCT6100_MIXER_HEAD_NODE].usNextEventPtr = cOCT6100_MIXER_TAIL_NODE;
- pMixerEventList[cOCT6100_MIXER_HEAD_NODE].usEventType = cOCT6100_MIXER_CONTROL_MEM_NO_OP;
-
- /* Program the tail node. */
- pMixerEventList[cOCT6100_MIXER_TAIL_NODE].fReserved = true;
- pMixerEventList[cOCT6100_MIXER_TAIL_NODE].usNextEventPtr = cOCT6100_INVALID_INDEX;
- pMixerEventList[cOCT6100_MIXER_TAIL_NODE].usEventType = cOCT6100_MIXER_CONTROL_MEM_NO_OP;
-
- /* Now reserve the entry used for channel recording if the feature is enabled. */
- if (pSharedInfo->ChipConfig.fEnableChannelRecording == true)
- {
- u32 ulAllocIndex;
-
- /* Reserve an entry to copy the desire SOUT signal to the SIN signal of the recording channel. */
- ulResult = OctapiLlmAllocAlloc(pMixerEventAlloc, &ulAllocIndex);
- if (ulResult != cOCT6100_ERR_OK)
- {
- return cOCT6100_ERR_FATAL_90;
- }
-
- pSharedInfo->MixerInfo.usRecordCopyEventIndex = (u16)(ulAllocIndex & 0xFFFF);
-
- /* Reserve an entry to copy the saved SIN signal of the debugged channel into it's original location. */
- ulResult = OctapiLlmAllocAlloc(pMixerEventAlloc, &ulAllocIndex);
- if (ulResult != cOCT6100_ERR_OK)
- {
- return cOCT6100_ERR_FATAL_90;
- }
-
- pSharedInfo->MixerInfo.usRecordSinEventIndex = (u16)(ulAllocIndex & 0xFFFF);
-
- /* Configure the SIN event. */
- pMixerEventList[pSharedInfo->MixerInfo.usRecordSinEventIndex].fReserved = true;
- pMixerEventList[pSharedInfo->MixerInfo.usRecordSinEventIndex].usNextEventPtr = cOCT6100_MIXER_TAIL_NODE;
- pMixerEventList[pSharedInfo->MixerInfo.usRecordSinEventIndex].usEventType = cOCT6100_MIXER_CONTROL_MEM_NO_OP;
-
- /* Configure the SOUT copy event. */
- pMixerEventList[pSharedInfo->MixerInfo.usRecordCopyEventIndex].fReserved = true;
- pMixerEventList[pSharedInfo->MixerInfo.usRecordCopyEventIndex].usNextEventPtr = pSharedInfo->MixerInfo.usRecordSinEventIndex;
- pMixerEventList[pSharedInfo->MixerInfo.usRecordCopyEventIndex].usEventType = cOCT6100_MIXER_CONTROL_MEM_NO_OP;
-
- /* Program the head node. */
- pMixerEventList[cOCT6100_MIXER_HEAD_NODE].usNextEventPtr = pSharedInfo->MixerInfo.usRecordCopyEventIndex;
- }
-
- /* Initialize the copy event list. */
- mOCT6100_GET_COPY_EVENT_ALLOC_PNT(pSharedInfo, pCopyEventAlloc)
-
- ulResult = OctapiLlmAllocInit(&pCopyEventAlloc, cOCT6100_MAX_MIXER_EVENTS);
- if (ulResult != cOCT6100_ERR_OK)
- return cOCT6100_ERR_FATAL_B4;
-
- return cOCT6100_ERR_OK;
-}
-
-/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*\
-
Function: Oct6100ApiMixerEventAdd
Description: This function adds a mixer event event to the list of events
@@ -24163,53 +23830,6 @@ static u32 Oct6100ApiGetTsiCnctSwSizes(
/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*\
-Function: Oct6100ApiTsiCnctSwInit
-
-Description: Initializes all elements of the instance structure associated
- to the TSI memory.
-
--------------------------------------------------------------------------------
-| Argument | Description
--------------------------------------------------------------------------------
-instance Pointer to API instance. This memory is used to keep
- the present state of the chip and all its resources.
-
-\*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/
-
-static u32 Oct6100ApiTsiCnctSwInit(struct oct6100_instance_api *instance)
-{
- struct oct6100_api_tsi_cnct *pChannelsTsiList;
- struct oct6100_shared_info *pSharedInfo;
- u32 ulMaxTsiChannels;
- void* pTsiChannelsAlloc;
- u32 ulResult;
-
- /* Get local pointer to shared portion of instance. */
- pSharedInfo = instance->pSharedInfo;
-
- /* Initialize the TSI connections API list. */
- ulMaxTsiChannels = pSharedInfo->ChipConfig.usMaxTsiCncts;
-
- mOCT6100_GET_TSI_CNCT_LIST_PNT(pSharedInfo, pChannelsTsiList)
-
- /* Clear the memory. */
- memset(pChannelsTsiList, 0x00, sizeof(*pChannelsTsiList) * ulMaxTsiChannels);
-
- /* Set all entries in the TSI connections list to unused. */
- if (ulMaxTsiChannels > 0)
- {
- mOCT6100_GET_TSI_CNCT_ALLOC_PNT(pSharedInfo, pTsiChannelsAlloc)
-
- ulResult = OctapiLlmAllocInit(&pTsiChannelsAlloc, ulMaxTsiChannels);
- if (ulResult != cOCT6100_ERR_OK)
- return cOCT6100_ERR_FATAL_49;
- }
-
- return cOCT6100_ERR_OK;
-}
-
-/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*\
-
Function: Oct6100EventGetTone
Description: Retreives an array of tone events.
@@ -25832,7 +25452,6 @@ u32 Oct6100ChipOpenDef(struct oct6100_chip_open *f_pChipOpen)
f_pChipOpen->ulMaxBiDirChannels = 0;
f_pChipOpen->ulMaxConfBridges = 0;
f_pChipOpen->ulMaxFlexibleConfParticipants = 0;
- f_pChipOpen->ulMaxPlayoutBuffers = 0;
f_pChipOpen->ulMaxPhasingTssts = 0;
f_pChipOpen->ulMaxAdpcmChannels = 0;
@@ -26521,15 +26140,6 @@ static u32 Oct6100ApiCheckChipConfiguration(
if (f_pChipOpen->ulMaxBiDirChannels > (f_pChipOpen->ulMaxChannels / 2))
return cOCT6100_ERR_OPEN_MAX_BIDIR_CHANNELS;
- if (f_pChipOpen->ulMaxConfBridges > cOCT6100_MAX_CONF_BRIDGE)
- return cOCT6100_ERR_OPEN_MAX_CONF_BRIDGES;
-
- if (f_pChipOpen->ulMaxFlexibleConfParticipants > cOCT6100_MAX_FLEX_CONF_PARTICIPANTS)
- return cOCT6100_ERR_OPEN_MAX_FLEXIBLE_CONF_PARTICIPANTS;
-
- if (f_pChipOpen->ulMaxPlayoutBuffers > cOCT6100_MAX_PLAYOUT_BUFFERS)
- return cOCT6100_ERR_OPEN_MAX_PLAYOUT_BUFFERS;
-
if (f_pChipOpen->ulMaxPhasingTssts > cOCT6100_MAX_PHASING_TSST)
return cOCT6100_ERR_OPEN_MAX_PHASING_TSSTS;
@@ -26570,7 +26180,6 @@ static u32 Oct6100ApiCheckChipConfiguration(
f_pChipOpen->fEnableChannelRecording = false;
f_pChipOpen->ulMaxBiDirChannels = 0;
f_pChipOpen->ulMaxConfBridges = 0;
- f_pChipOpen->ulMaxPlayoutBuffers = 0;
f_pChipOpen->ulSoftBufferPlayoutEventsBufSize = cOCT6100_INVALID_VALUE;
f_pChipOpen->ulMaxPhasingTssts = 0;
f_pChipOpen->ulMaxAdpcmChannels = 0;
@@ -26632,8 +26241,6 @@ static u32 Oct6100ApiCopyChipConfiguration(
pSharedInfo->ChipConfig.usMaxTsiCncts = (u16)(f_pChipOpen->ulMaxTsiCncts & 0xFFFF);
pSharedInfo->ChipConfig.usMaxBiDirChannels = (u16)(f_pChipOpen->ulMaxBiDirChannels & 0xFFFF);
pSharedInfo->ChipConfig.usMaxConfBridges = (u16)(f_pChipOpen->ulMaxConfBridges & 0xFFFF);
- pSharedInfo->ChipConfig.usMaxFlexibleConfParticipants = (u16)(f_pChipOpen->ulMaxFlexibleConfParticipants & 0xFFFF);
- pSharedInfo->ChipConfig.usMaxPlayoutBuffers = (u16)(f_pChipOpen->ulMaxPlayoutBuffers & 0xFFFF);
pSharedInfo->ChipConfig.usMaxPhasingTssts = (u16)(f_pChipOpen->ulMaxPhasingTssts & 0xFFFF);
pSharedInfo->ChipConfig.usMaxAdpcmChannels = (u16)(f_pChipOpen->ulMaxAdpcmChannels & 0xFFFF);
@@ -26897,12 +26504,6 @@ static u32 Oct6100ApiCalculateInstanceSizes(
return ulResult;
/*-----------------------------------------------------------------------------*/
- /* Memory needed by the buffer playout structures. */
- ulResult = Oct6100ApiGetPlayoutBufferSwSizes(f_pChipOpen, f_pInstSizes);
- if (ulResult != cOCT6100_ERR_OK)
- return ulResult;
-
- /*-----------------------------------------------------------------------------*/
/* Memory needed by soft Rx Event buffers. */
ulResult = Oct6100ApiGetEventsSwSizes(f_pChipOpen, f_pInstSizes);
if (ulResult != cOCT6100_ERR_OK)
@@ -27127,22 +26728,6 @@ static u32 Oct6100ApiInitializeInstanceMemory(
ulResult = Oct6100ApiChannelsEchoSwInit(instance);
if (ulResult != cOCT6100_ERR_OK)
return ulResult;
- /*-----------------------------------------------------------------------------*/
- /* Initialize the API TSI connection structures. */
- ulResult = Oct6100ApiTsiCnctSwInit(instance);
- if (ulResult != cOCT6100_ERR_OK)
- return ulResult;
- /*-----------------------------------------------------------------------------*/
- /* Initialize the API conference bridges. */
- ulResult = Oct6100ApiConfBridgeSwInit(instance);
- if (ulResult != cOCT6100_ERR_OK)
- return ulResult;
-
- /*-----------------------------------------------------------------------------*/
- /* Initialize the API buffer playout structures. */
- ulResult = Oct6100ApiPlayoutBufferSwInit(instance);
- if (ulResult != cOCT6100_ERR_OK)
- return ulResult;
/*-----------------------------------------------------------------------------*/
/* Initialize the API phasing tssts. */
@@ -27168,12 +26753,6 @@ static u32 Oct6100ApiInitializeInstanceMemory(
return ulResult;
/*-----------------------------------------------------------------------------*/
- /* Initialize the mixer management stuctures. */
- ulResult = Oct6100ApiMixerSwInit(instance);
- if (ulResult != cOCT6100_ERR_OK)
- return ulResult;
-
- /*-----------------------------------------------------------------------------*/
/* Configure the interrupt registers. */
ulResult = Oct6100ApiIsrSwInit(instance);
if (ulResult != cOCT6100_ERR_OK)
diff --git a/drivers/dahdi/wct4xxp/octapi.h b/drivers/dahdi/wct4xxp/octapi.h
index 88982bf..e4f6aba 100644
--- a/drivers/dahdi/wct4xxp/octapi.h
+++ b/drivers/dahdi/wct4xxp/octapi.h
@@ -269,7 +269,6 @@ struct oct6100_chip_open {
u32 ulMaxBiDirChannels;
u32 ulMaxConfBridges;
u32 ulMaxFlexibleConfParticipants;
- u32 ulMaxPlayoutBuffers;
u32 ulMaxPhasingTssts;
u32 ulMaxAdpcmChannels;
commit 425fa042f50d39fcadd64d00df6fd09a96c11315
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 16:46:02 2011 -0600
wip: Don't optimize
diff --git a/drivers/dahdi/wct4xxp/Kbuild b/drivers/dahdi/wct4xxp/Kbuild
index a8d1e47..b0d6818 100644
--- a/drivers/dahdi/wct4xxp/Kbuild
+++ b/drivers/dahdi/wct4xxp/Kbuild
@@ -2,7 +2,7 @@ obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCT4XXP) += wct4xxp.o
FIRM_DIR := ../firmware
-EXTRA_CFLAGS += -I$(src)/.. -Wno-undef
+EXTRA_CFLAGS += -I$(src)/.. -Wno-undef -O0
ifeq ($(HOTPLUG_FIRMWARE),yes)
EXTRA_CFLAGS+=-DHOTPLUG_FIRMWARE
commit a699dd3b2567c2bd934f02aaf7a665f05b0257b2
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 16:35:40 2011 -0600
wip
diff --git a/drivers/dahdi/wct4xxp/octapi.c b/drivers/dahdi/wct4xxp/octapi.c
index e0086bf..7a595de 100644
--- a/drivers/dahdi/wct4xxp/octapi.c
+++ b/drivers/dahdi/wct4xxp/octapi.c
@@ -8722,6 +8722,7 @@ static u32 Oct6100ApiReserveChannelResources(
/* Reserve an entry for the RIN/ROUT tsi chariot memory. */
ulResult = Oct6100ApiReserveTsiMemEntry(instance,
&f_pChanIndexConf->usRinRoutTsiMemIndex);
+ trace_printk("HERE:%d\n", __LINE__);
if (ulResult == cOCT6100_ERR_OK)
{
fRinRoutTsiMemEntry = true;
@@ -8834,6 +8835,7 @@ static u32 Oct6100ApiReserveChannelResources(
}
/* Now reserve the TSST entries if required.*/
+ trace_printk("HERE:%d\n", __LINE__);
/* Reserve the Rin TSST entry */
if ((ulResult == cOCT6100_ERR_OK) &&
@@ -8855,6 +8857,7 @@ static u32 Oct6100ApiReserveChannelResources(
f_pChanIndexConf->usRinTsstIndex = cOCT6100_INVALID_INDEX;
}
+ trace_printk("HERE:%d\n", __LINE__);
if ((ulResult == cOCT6100_ERR_OK) &&
(pTdmConfig->ulSinTimeslot != cOCT6100_UNASSIGNED &&
pTdmConfig->ulSinStream != cOCT6100_UNASSIGNED))
@@ -8875,6 +8878,7 @@ static u32 Oct6100ApiReserveChannelResources(
f_pChanIndexConf->usSinTsstIndex = cOCT6100_INVALID_INDEX;
}
+ trace_printk("HERE:%d\n", __LINE__);
if ((ulResult == cOCT6100_ERR_OK) &&
(pTdmConfig->ulRoutTimeslot != cOCT6100_UNASSIGNED &&
pTdmConfig->ulRoutStream != cOCT6100_UNASSIGNED))
@@ -8895,6 +8899,7 @@ static u32 Oct6100ApiReserveChannelResources(
f_pChanIndexConf->usRoutTsstIndex = cOCT6100_INVALID_INDEX;
}
+ trace_printk("HERE:%d\n", __LINE__);
if ((ulResult == cOCT6100_ERR_OK) &&
(pTdmConfig->ulSoutTimeslot != cOCT6100_UNASSIGNED &&
pTdmConfig->ulSoutStream != cOCT6100_UNASSIGNED))
@@ -8915,6 +8920,7 @@ static u32 Oct6100ApiReserveChannelResources(
f_pChanIndexConf->usSoutTsstIndex = cOCT6100_INVALID_INDEX;
}
+ trace_printk("HERE:%d\n", __LINE__);
/*===============================================================================*/
/*===============================================================================*/
@@ -8947,9 +8953,8 @@ static u32 Oct6100ApiReserveChannelResources(
}
}
- /*===============================================================================*/
+ trace_printk("HERE:%d\n", __LINE__);
- /*===============================================================================*/
/* Release the resources if something went wrong */
if (ulResult != cOCT6100_ERR_OK)
{
@@ -9083,6 +9088,7 @@ static u32 Oct6100ApiReserveChannelResources(
return ulResult;
}
+ trace_printk("HERE:%d\n", __LINE__);
return cOCT6100_ERR_OK;
}
commit 1e6a1fb0aa79f94e3990d1dbdfbfe1bb3e46f782
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 16:30:20 2011 -0600
wip
diff --git a/drivers/dahdi/wct4xxp/vpm450m.c b/drivers/dahdi/wct4xxp/vpm450m.c
index 53e9674..23df906 100644
--- a/drivers/dahdi/wct4xxp/vpm450m.c
+++ b/drivers/dahdi/wct4xxp/vpm450m.c
@@ -387,9 +387,7 @@ struct vpm450m *init_vpm450m(void *wc, int *isalaw, int numspans, const struct f
u32 ulResult;
struct vpm450m *vpm450m;
int x,y,law;
-#ifdef CONFIG_4KSTACKS
unsigned long flags;
-#endif
vpm450m = kzalloc(sizeof(*vpm450m), GFP_KERNEL);
if (!vpm450m)
commit 2568bb28940c23cc539bfb099b353e0d256d0823
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 16:29:50 2011 -0600
wip
diff --git a/drivers/dahdi/wct4xxp/vpm450m.c b/drivers/dahdi/wct4xxp/vpm450m.c
index 635b816..53e9674 100644
--- a/drivers/dahdi/wct4xxp/vpm450m.c
+++ b/drivers/dahdi/wct4xxp/vpm450m.c
@@ -465,16 +465,12 @@ struct vpm450m *init_vpm450m(void *wc, int *isalaw, int numspans, const struct f
* stack unfriendly. Stupid, stupid, stupid. So we disable IRQs so we
* don't run the risk of overflowing the stack while we initialize the
* octasic. */
-#ifdef CONFIG_4KSTACKS
local_irq_save(flags);
-#endif
trace_printk("HERE:%d\n", __LINE__);
ulResult = Oct6100ChipOpen(vpm450m->pApiInstance, ChipOpen);
if (ulResult != cOCT6100_ERR_OK) {
printk(KERN_NOTICE "Failed to open chip, code %08x!\n", ulResult);
-#ifdef CONFIG_4KSTACKS
local_irq_restore(flags);
-#endif
vfree(vpm450m->pApiInstance);
kfree(vpm450m);
kfree(ChipOpen);
@@ -537,9 +533,7 @@ struct vpm450m *init_vpm450m(void *wc, int *isalaw, int numspans, const struct f
}
trace_printk("HERE:%d\n", __LINE__);
-#ifdef CONFIG_4KSTACKS
local_irq_restore(flags);
-#endif
kfree(ChipOpen);
kfree(ChannelOpen);
return vpm450m;
commit 379cb6786542c0f37e0c16ab6fc1a7592f38ea84
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 16:25:35 2011 -0600
wip
diff --git a/drivers/dahdi/wct4xxp/octapi.c b/drivers/dahdi/wct4xxp/octapi.c
index 8473cb3..e0086bf 100644
--- a/drivers/dahdi/wct4xxp/octapi.c
+++ b/drivers/dahdi/wct4xxp/octapi.c
@@ -8481,26 +8481,31 @@ u32 Oct6100ChannelOpen(
if (!ChannelIndexConf)
return cOCT6100_ERR_FATAL_0;
+ trace_printk("HERE:%d\n", __LINE__);
/* Check the user's configuration of the echo cancellation channel for errors. */
ulResult = Oct6100ApiCheckChannelParams(instance, f_pChannelOpen, ChannelIndexConf);
if (ulResult != cOCT6100_ERR_OK)
goto out;
+ trace_printk("HERE:%d\n", __LINE__);
/* Reserve all resources needed by the echo cancellation channel. */
ulResult = Oct6100ApiReserveChannelResources(instance, f_pChannelOpen, ChannelIndexConf);
if (ulResult != cOCT6100_ERR_OK)
goto out;
+ trace_printk("HERE:%d\n", __LINE__);
/* Write all necessary structures to activate the echo cancellation channel. */
ulResult = Oct6100ApiWriteChannelStructs(instance, f_pChannelOpen, ChannelIndexConf);
if (ulResult != cOCT6100_ERR_OK)
goto out;
+ trace_printk("HERE:%d\n", __LINE__);
/* Update the new echo cancellation channels's entry in the ECHO channel list. */
ulResult = Oct6100ApiUpdateChannelEntry(instance, f_pChannelOpen, ChannelIndexConf);
if (ulResult != cOCT6100_ERR_OK)
goto out;
+ trace_printk("HERE:%d\n", __LINE__);
kfree(ChannelIndexConf);
return cOCT6100_ERR_OK;
commit c7296ae5ff62fd092bd9ee21d156617c875afb3b
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 16:22:38 2011 -0600
wip
diff --git a/drivers/dahdi/wct4xxp/vpm450m.c b/drivers/dahdi/wct4xxp/vpm450m.c
index 59b5e7b..635b816 100644
--- a/drivers/dahdi/wct4xxp/vpm450m.c
+++ b/drivers/dahdi/wct4xxp/vpm450m.c
@@ -458,7 +458,7 @@ struct vpm450m *init_vpm450m(void *wc, int *isalaw, int numspans, const struct f
return NULL;
}
- memset(vpm450m->pApiInstance, 0, InstanceSize, ulApiInstanceSize);
+ memset(vpm450m->pApiInstance, 0, InstanceSize.ulApiInstanceSize);
/* I don't know what to curse more in this comment, the problems caused by
* the 4K kernel stack limit change or the octasic API for being so darn
commit ee03b05b3ae6af01b19d6479f40da99e2dd63cc6
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 16:21:50 2011 -0600
wip
diff --git a/drivers/dahdi/wct4xxp/vpm450m.c b/drivers/dahdi/wct4xxp/vpm450m.c
index ea2f77a..59b5e7b 100644
--- a/drivers/dahdi/wct4xxp/vpm450m.c
+++ b/drivers/dahdi/wct4xxp/vpm450m.c
@@ -458,6 +458,8 @@ struct vpm450m *init_vpm450m(void *wc, int *isalaw, int numspans, const struct f
return NULL;
}
+ memset(vpm450m->pApiInstance, 0, InstanceSize, ulApiInstanceSize);
+
/* I don't know what to curse more in this comment, the problems caused by
* the 4K kernel stack limit change or the octasic API for being so darn
* stack unfriendly. Stupid, stupid, stupid. So we disable IRQs so we
commit 89c80abb2357996f4574942da3a51b2aebb9efd6
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 16:19:13 2011 -0600
wip
diff --git a/drivers/dahdi/wct4xxp/octapi.c b/drivers/dahdi/wct4xxp/octapi.c
index 9f6fdc7..8473cb3 100644
--- a/drivers/dahdi/wct4xxp/octapi.c
+++ b/drivers/dahdi/wct4xxp/octapi.c
@@ -5027,14 +5027,14 @@ static u32 OctapiLlmAllocAlloc(void *l, u32 *blocknum)
|
\*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/
-static u32 OctapiLlmAllocDealloc(void * l,u32 blocknum)
+static u32 OctapiLlmAllocDealloc(void *l, u32 blocknum)
{
- struct llm_alloc* ls;
- u32* node;
+ struct llm_alloc *ls;
+ u32 *node;
/* Build the structure before starting.*/
ls = (struct llm_alloc *)l;
- ls->linked_list = (u32 *)((u8 *)ls + sizeof(struct llm_alloc));
+ ls->linked_list = (u32 *)((u8 *)ls + sizeof(*ls));
/* Check for null item pointer.*/
if (blocknum == 0xFFFFFFFF) return(GENERIC_OK);
@@ -5059,12 +5059,6 @@ static u32 OctapiLlmAllocDealloc(void * l,u32 blocknum)
return(GENERIC_OK);
}
-/**************************************** llm_list section **********************************************/
-
-/**************************************** llm2 function section *****************************************/
-
-/**************************** PRIVATE FUNCTIONS ****************************/
-
/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*\
Function: Oct6100ApiGetMemorySwSizes
commit 863fa6dcc256ceb1a7bb18aca2fedc3bf8e27d04
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 16:11:00 2011 -0600
wip
diff --git a/drivers/dahdi/wct4xxp/octapi.c b/drivers/dahdi/wct4xxp/octapi.c
index 67b18d4..9f6fdc7 100644
--- a/drivers/dahdi/wct4xxp/octapi.c
+++ b/drivers/dahdi/wct4xxp/octapi.c
@@ -4943,11 +4943,11 @@ static u32 OctapiLlmAllocInit(void ** l,u32 number_of_items)
static u32 OctapiLlmAllocInfo(void * l,u32 * allocated_items,u32 * available_items)
{
- struct llm_alloc* ls;
+ struct llm_alloc *ls;
/* Build the structure before starting.*/
ls = (struct llm_alloc *)l;
- ls->linked_list = (u32 *)((u8 *)ls + sizeof(struct llm_alloc));
+ ls->linked_list = (u32 *)((u8 *)ls + sizeof(*ls));
*allocated_items = ls->allocated_items;
*available_items = ls->number_of_items - ls->allocated_items;
commit 8673619d346334f8e888367fad8f87d24c970110
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 16:00:56 2011 -0600
wip
diff --git a/drivers/dahdi/wct4xxp/octapi.c b/drivers/dahdi/wct4xxp/octapi.c
index ded3d41..67b18d4 100644
--- a/drivers/dahdi/wct4xxp/octapi.c
+++ b/drivers/dahdi/wct4xxp/octapi.c
@@ -4694,9 +4694,6 @@ static u32 Oct6100ApiInvalidateChanPlayoutStructs(
u16 f_usEchoMemIndex
);
-struct llm_list_item *OctApiLlmListGetItemPointer(struct llm_list * ls, u32 item_number);
-void * OctApiLlmMemCpy(void *f_pvDestination, const void * f_pvSource, u32 f_ulSize);
-
static u32 Oct6100BufferPlayoutStopDef(
struct oct6100_buffer_playout_stop *f_pBufferPlayoutStop);
static u32 Oct6100BufferPlayoutStop(
@@ -4705,15 +4702,6 @@ static u32 Oct6100BufferPlayoutStop(
#define octapi_lm_add(a, alen, b, blen, z, zlen) OctApiLmAdd((u32*) a, (unsigned short) alen, (u32*) b, (unsigned short) blen, (u32*) z, (unsigned short) zlen)
#define octapi_lm_subtract(a, alen, bneg, blen, z, zlen, neg) OctApiLmSubtract((u32*) a, (unsigned short) alen, (u32*) bneg, (unsigned short) blen, (u32*) z, (unsigned short) zlen, (unsigned short*) neg)
-#define octapi_lm_compare(a, alen, bneg, blen, neg) OctApiLmCompare((u32*) a, (unsigned short) alen, (u32*) bneg, (unsigned short) blen, (unsigned short*) neg)
-#define octapi_lm_multiply(a, b, ablen, z) OctApiLmMultiply((u32*) a, (u32*) b, (unsigned short) ablen, (u32*) z)
-#define octapi_lm_divide(n, d, q, r, ndqrlen) OctApiLmDivide((u32*) n, (u32*) d, (u32*) q, (u32*) r, (unsigned short) ndqrlen)
-#define octapi_lm_shiftright1(a, alen) OctApiLmShiftRight1((u32*) a, (unsigned short) alen)
-#define octapi_lm_shiftn(a, alen, shiftleft, shiftn) OctApiLmShiftn((u32*) a, (unsigned short) alen, (unsigned short) shiftleft, (unsigned short) shiftn)
-#define octapi_lm_getmsb(a, alen, msb_pos) OctApiLmGetMsb((u32*) a, (unsigned short) alen, (unsigned short*) msb_pos)
-
-static u32 OctApiLmAdd(u32* a, unsigned short alen, u32* b, unsigned short blen, u32* z, unsigned short zlen);
-static u32 OctApiLmSubtract(u32* a, unsigned short alen, u32* bneg, unsigned short blen, u32* z, unsigned short zlen, u16* neg);
/* Alloc man. */
static u32 OctapiLlmAllocGetSize(u32 number_of_items,u32* l_size);
commit 4681520f8176566bddfc64a4a8687411dfc6c977
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 15:58:04 2011 -0600
wip: Remove llm2
diff --git a/drivers/dahdi/wct4xxp/octapi.c b/drivers/dahdi/wct4xxp/octapi.c
index df26fef..ded3d41 100644
--- a/drivers/dahdi/wct4xxp/octapi.c
+++ b/drivers/dahdi/wct4xxp/octapi.c
@@ -3470,30 +3470,7 @@ struct oct6100_api_adpcm_chan {
#define OCTAPI_LLM_INTERNAL_ERROR1 0xFFFFFFF6
#define OCTAPI_LLM_INVALID_PARAMETER 0xFFFFFFF5
-#define OCTAPI_LLM2_MEMORY_NOT_ALLOCATED 0xFEFFFFFF
-#define OCTAPI_LLM2_NO_STRUCTURES_LEFT 0xFEFFFFFE
-#define OCTAPI_LLM2_BLOCKNUM_OUT_OF_RANGE 0xFEFFFFFD
-#define OCTAPI_LLM2_ELEMENT_ALREADY_ASSIGNED 0xFEFFFFFC
-#define OCTAPI_LLM2_ELEMENT_NOT_FOUND 0xFEFFFFFB
-#define OCTAPI_LLM2_LIST_EMPTY 0xFEFFFFFA
-#define OCTAPI_LLM2_INVALID_LIST_HANDLE 0xFEFFFFF9
-#define OCTAPI_LLM2_TREE_NODE_ABSENT 0xFEFFFFF8
-#define OCTAPI_LLM2_INTERNAL_ERROR0 0xFEFFFFF7
-#define OCTAPI_LLM2_INTERNAL_ERROR1 0xFEFFFFF6
-#define OCTAPI_LLM2_INVALID_PARAMETER 0xFEFFFFF5
-
-/* Other defines. */
#define OCTAPI_LLM_LIST_APPEND 0xFFFFFFFF
-#define OCTAPI_LLM2_INSERT_ERROR 0xFFFFFFFF
-#define OCTAPI_LLM2_INSERT_FIRST_NODE 0xFFFF0000
-#define OCTAPI_LLM2_INSERT_LIST_NODE 0xFFFF0001
-#define OCTAPI_LLM2_INSERT_LAST_NODE 0xFFFF0002
-#define OCTAPI_LLM2_INSERT_BEFORE_LAST_NODE 0xFFFF0003
-#define OCTAPI_LLM2_REMOVE_ERROR 0xFFFFFFFF
-#define OCTAPI_LLM2_REMOVE_FIRST_NODE 0xFFFF0004
-#define OCTAPI_LLM2_REMOVE_LIST_NODE 0xFFFF0005
-#define OCTAPI_LLM2_REMOVE_LAST_NODE 0xFFFF0006
-#define OCTAPI_LLM2_REMOVE_BEFORE_LAST_NODE 0xFFFF0007
/**************************************** llm_alloc section **********************************************/
@@ -3584,48 +3561,6 @@ struct llm_list {
struct llm_list_item * li;
};
-/**********************************************************************************/
-/* These structures are are used by the Llm2 functions to creates lists of ordered
- items based on a key given by the user when a new node is inserted in a list. */
-struct llm2_list_head {
- u32 list_length; /* Current number of items in the list.*/
- /* 0xFFFFFFFF means that the list is not used.*/
- u32 head_pointer; /* Number of the item in the item pool that is the first of this list.*/
- /* 0xFFFFFFFF indicates end-of-list link.*/
- u32 tail_pointer; /* Number of the item in the item pool that is the last of this list.*/
-};
-
-struct llm2_list_item {
- u32 forward_link; /* Number of the item in the item pool that is next in this list.*/
- /* 0xFFFFFFFF indicates end-of-list link.*/
- u32 key; /* Key used to order the entries.*/
-
- /* User item info (variable size)*/
- u32 user_info[1];
-};
-
-struct llm2_list {
- u32 user_info_bytes; /* In bytes, size of the user info in a single item.*/
- u32 user_info_size; /* In bytes, size of the user info in a single item.*/
- u32 item_size;
-
- u32 head_alloc_size;
- u32 total_items;
- u32 assigned_items;
- u32 total_lists;
- u32 assigned_lists;
-
- u32 next_empty_item; /* Contains a pointer to the next empty item in the*/
- /* item pool.*/
-
- /* Table of all the possible list heads:*/
- struct llm2_list_head * lh;
- void * list_head_alloc; /* struct llm_alloc structure used for list head allocation!*/
-
- /* Table of the list items:*/
- struct llm2_list_item * li;
-};
-
static u32 Oct6100ConfBridgeCloseDef(
struct oct6100_conf_bridge_close *f_pConfBridgeClose);
static u32 Oct6100ConfBridgeClose(
@@ -4760,7 +4695,6 @@ static u32 Oct6100ApiInvalidateChanPlayoutStructs(
);
struct llm_list_item *OctApiLlmListGetItemPointer(struct llm_list * ls, u32 item_number);
-struct llm2_list_item *OctApiLlm2ListGetItemPointer(struct llm2_list * ls, u32 item_number);
void * OctApiLlmMemCpy(void *f_pvDestination, const void * f_pvSource, u32 f_ulSize);
static u32 Oct6100BufferPlayoutStopDef(
commit aacabf4ebb6f292205608a482f65ee107d5f73ca
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 15:54:14 2011 -0600
wip: minor reformatting
diff --git a/drivers/dahdi/wct4xxp/octapi.c b/drivers/dahdi/wct4xxp/octapi.c
index e1d1f0c..df26fef 100644
--- a/drivers/dahdi/wct4xxp/octapi.c
+++ b/drivers/dahdi/wct4xxp/octapi.c
@@ -5049,7 +5049,7 @@ static u32 OctapiLlmAllocInfo(void * l,u32 * allocated_items,u32 * available_ite
|
\*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/
-static u32 OctapiLlmAllocAlloc(void * l,u32 * blocknum)
+static u32 OctapiLlmAllocAlloc(void *l, u32 *blocknum)
{
struct llm_alloc* ls;
u32 allocated_block;
@@ -5342,12 +5342,11 @@ f_pusTsiMemIndex Resulting index reserved in the TSI chariot memory.
\*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/
-static u32 Oct6100ApiReserveTsiMemEntry(
- struct oct6100_instance_api *instance,
- u16* f_pusTsiMemIndex)
+static u32 Oct6100ApiReserveTsiMemEntry(struct oct6100_instance_api *instance,
+ u16 *f_pusTsiMemIndex)
{
struct oct6100_shared_info *pSharedInfo;
- void* pTsiMemAlloc;
+ void *pTsiMemAlloc;
u32 ulResult;
u32 ulIndex;
u32 ulNumTsiB4Timestamp;
@@ -5604,7 +5603,8 @@ static u32 Oct6100ApiIsrSwInit(
pSharedInfo = instance->pSharedInfo;
/* Set the state of each interrupt group to disabled. The state will */
- /* be updated to the true configuration once the configure interrupts function is called. */
+ /* be updated to the true configuration once the configure interrupts
+ * function is called. */
pSharedInfo->IntrptManage.byFatalGeneralState = cOCT6100_INTRPT_DISABLED;
pSharedInfo->IntrptManage.byFatalMemoryState = cOCT6100_INTRPT_DISABLED;
pSharedInfo->IntrptManage.byErrorMemoryState = cOCT6100_INTRPT_DISABLED;
diff --git a/drivers/dahdi/wct4xxp/octapi.h b/drivers/dahdi/wct4xxp/octapi.h
index b269a3b..88982bf 100644
--- a/drivers/dahdi/wct4xxp/octapi.h
+++ b/drivers/dahdi/wct4xxp/octapi.h
@@ -225,25 +225,20 @@ struct oct6100_interrupt_configure {
};
struct oct6100_interrupt_flags {
- bool fFatalGeneral;
u32 ulFatalGeneralFlags;
- bool fFatalReadTimeout;
-
- bool fErrorRefreshTooLate;
- bool fErrorPllJitter;
-
- bool fErrorOverflowToneEvents;
-
- bool fErrorH100OutOfSync;
- bool fErrorH100ClkA;
- bool fErrorH100ClkB;
- bool fErrorH100FrameA;
-
- bool fToneEventsPending;
- bool fBufferPlayoutEventsPending;
-
- bool fApiSynch;
+ bool fFatalReadTimeout:1;
+ bool fFatalGeneral:1;
+ bool fErrorRefreshTooLate:1;
+ bool fErrorPllJitter:1;
+ bool fErrorOverflowToneEvents:1;
+ bool fErrorH100OutOfSync:1;
+ bool fErrorH100ClkA:1;
+ bool fErrorH100ClkB:1;
+ bool fErrorH100FrameA:1;
+ bool fToneEventsPending:1;
+ bool fBufferPlayoutEventsPending:1;
+ bool fApiSynch:1;
};
struct oct6100_chip_open {
commit e756c497f6b6fb4b4824f247db612bb75fbccc03
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 15:26:11 2011 -0600
dbg
diff --git a/drivers/dahdi/wct4xxp/vpm450m.c b/drivers/dahdi/wct4xxp/vpm450m.c
index 5dd6cf4..ea2f77a 100644
--- a/drivers/dahdi/wct4xxp/vpm450m.c
+++ b/drivers/dahdi/wct4xxp/vpm450m.c
@@ -494,7 +494,7 @@ struct vpm450m *init_vpm450m(void *wc, int *isalaw, int numspans, const struct f
law = cOCT6100_PCM_U_LAW;
Oct6100ChannelOpenDef(ChannelOpen);
- trace_printk("HERE:%d\n", __LINE__);
+ trace_printk("HERE:%d\n", __LINE__);
ChannelOpen->pulChannelHndl = &vpm450m->aulEchoChanHndl[x];
ChannelOpen->ulUserChanId = x;
ChannelOpen->TdmConfig.ulRinPcmLaw = law;
@@ -516,24 +516,21 @@ struct vpm450m *init_vpm450m(void *wc, int *isalaw, int numspans, const struct f
ChannelOpen->fEnableToneDisabler = true;
ChannelOpen->ulEchoOperationMode = cOCT6100_ECHO_OP_MODE_DIGITAL;
- trace_printk("HERE:%d\n", __LINE__);
+ trace_printk("HERE:%d %d\n", __LINE__, x);
ulResult = Oct6100ChannelOpen(vpm450m->pApiInstance, ChannelOpen);
- trace_printk("HERE:%d\n", __LINE__);
+ trace_printk("HERE:%d\n", __LINE__);
if (ulResult != GENERIC_OK)
printk(KERN_NOTICE "Failed to open channel %d!\n", x);
+ trace_printk("HERE:%d\n", __LINE__);
for (y = 0; y < ARRAY_SIZE(tones); y++) {
struct oct6100_tone_detection_enable enable;
- trace_printk("HERE:%d\n", __LINE__);
Oct6100ToneDetectionEnableDef(&enable);
- trace_printk("HERE:%d\n", __LINE__);
- enable.ulChannelHndl = vpm450m->aulEchoChanHndl[x];
enable.ulToneNumber = tones[y];
- trace_printk("HERE:%d\n", __LINE__);
if (Oct6100ToneDetectionEnable(vpm450m->pApiInstance, &enable) != GENERIC_OK)
printk(KERN_NOTICE "Failed to enable tone detection on channel %d for tone %d!\n", x, y);
- trace_printk("HERE:%d\n", __LINE__);
}
+ trace_printk("HERE:%d\n", __LINE__);
}
}
commit 55d9e34bc4c88a772be8e3201d781d4dad18ea8a
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 15:15:40 2011 -0600
dbg
diff --git a/drivers/dahdi/wct4xxp/vpm450m.c b/drivers/dahdi/wct4xxp/vpm450m.c
index 2857d86..5dd6cf4 100644
--- a/drivers/dahdi/wct4xxp/vpm450m.c
+++ b/drivers/dahdi/wct4xxp/vpm450m.c
@@ -466,6 +466,7 @@ struct vpm450m *init_vpm450m(void *wc, int *isalaw, int numspans, const struct f
#ifdef CONFIG_4KSTACKS
local_irq_save(flags);
#endif
+ trace_printk("HERE:%d\n", __LINE__);
ulResult = Oct6100ChipOpen(vpm450m->pApiInstance, ChipOpen);
if (ulResult != cOCT6100_ERR_OK) {
printk(KERN_NOTICE "Failed to open chip, code %08x!\n", ulResult);
@@ -478,6 +479,7 @@ struct vpm450m *init_vpm450m(void *wc, int *isalaw, int numspans, const struct f
kfree(ChannelOpen);
return NULL;
}
+ trace_printk("HERE:%d\n", __LINE__);
for (x = 0; x < ARRAY_SIZE(vpm450m->aulEchoChanHndl); x++) {
/* execute this loop always on 4 span cards but
* on 2 span cards only execute for the channels related to our spans */
@@ -492,6 +494,7 @@ struct vpm450m *init_vpm450m(void *wc, int *isalaw, int numspans, const struct f
law = cOCT6100_PCM_U_LAW;
Oct6100ChannelOpenDef(ChannelOpen);
+ trace_printk("HERE:%d\n", __LINE__);
ChannelOpen->pulChannelHndl = &vpm450m->aulEchoChanHndl[x];
ChannelOpen->ulUserChanId = x;
ChannelOpen->TdmConfig.ulRinPcmLaw = law;
@@ -513,21 +516,28 @@ struct vpm450m *init_vpm450m(void *wc, int *isalaw, int numspans, const struct f
ChannelOpen->fEnableToneDisabler = true;
ChannelOpen->ulEchoOperationMode = cOCT6100_ECHO_OP_MODE_DIGITAL;
+ trace_printk("HERE:%d\n", __LINE__);
ulResult = Oct6100ChannelOpen(vpm450m->pApiInstance, ChannelOpen);
+ trace_printk("HERE:%d\n", __LINE__);
if (ulResult != GENERIC_OK)
printk(KERN_NOTICE "Failed to open channel %d!\n", x);
for (y = 0; y < ARRAY_SIZE(tones); y++) {
struct oct6100_tone_detection_enable enable;
+ trace_printk("HERE:%d\n", __LINE__);
Oct6100ToneDetectionEnableDef(&enable);
+ trace_printk("HERE:%d\n", __LINE__);
enable.ulChannelHndl = vpm450m->aulEchoChanHndl[x];
enable.ulToneNumber = tones[y];
+ trace_printk("HERE:%d\n", __LINE__);
if (Oct6100ToneDetectionEnable(vpm450m->pApiInstance, &enable) != GENERIC_OK)
printk(KERN_NOTICE "Failed to enable tone detection on channel %d for tone %d!\n", x, y);
+ trace_printk("HERE:%d\n", __LINE__);
}
}
}
+ trace_printk("HERE:%d\n", __LINE__);
#ifdef CONFIG_4KSTACKS
local_irq_restore(flags);
#endif
commit 8aced974da738afe37772e33ba3c58c1eaf1eeef
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 15:10:52 2011 -0600
dbg
diff --git a/drivers/dahdi/wct4xxp/octapi.c b/drivers/dahdi/wct4xxp/octapi.c
index 0fd1521..e1d1f0c 100644
--- a/drivers/dahdi/wct4xxp/octapi.c
+++ b/drivers/dahdi/wct4xxp/octapi.c
@@ -8797,6 +8797,7 @@ static u32 Oct6100ApiReserveChannelResources(
/* Set the echo, encoder and decoder memory indexes.*/
f_pChanIndexConf->usEchoMemIndex = f_pChanIndexConf->usEchoChanIndex;
+ trace_printk("HERE:%d\n", __LINE__);
/* Reserve an entry for the RIN/ROUT tsi chariot memory. */
ulResult = Oct6100ApiReserveTsiMemEntry(instance,
&f_pChanIndexConf->usRinRoutTsiMemIndex);
@@ -8804,6 +8805,7 @@ static u32 Oct6100ApiReserveChannelResources(
{
fRinRoutTsiMemEntry = true;
+ trace_printk("HERE:%d\n", __LINE__);
/* Reserve an entry for the SIN/SOUT tsi chariot memory. */
ulResult = Oct6100ApiReserveTsiMemEntry(instance,
&f_pChanIndexConf->usSinSoutTsiMemIndex);
@@ -8874,6 +8876,7 @@ static u32 Oct6100ApiReserveChannelResources(
{
fExtToneChanEntry = true;
+ trace_printk("HERE:%d\n", __LINE__);
/* Reserve an entry for the TSI chariot memory for the additionnal channel. */
ulResult = Oct6100ApiReserveTsiMemEntry(instance,
&f_pChanIndexConf->usExtToneTsiIndex);
@@ -26134,26 +26137,31 @@ u32 Oct6100ChipOpen(struct oct6100_instance_api *instance,
if (ulResult != cOCT6100_ERR_OK)
return ulResult;
+ trace_printk("HERE:%d\n", __LINE__);
/* Initialize the mixer memory. */
ulResult = Oct6100ApiInitRecordResources(instance);
if (ulResult != cOCT6100_ERR_OK)
return ulResult;
+ trace_printk("HERE:%d\n", __LINE__);
/* Initialize free external memory for buffer playout. */
ulResult = Oct6100ApiBufferPlayoutMemorySwInit(instance);
if (ulResult != cOCT6100_ERR_OK)
return ulResult;
+ trace_printk("HERE:%d\n", __LINE__);
/*Clear all interrupts that could have occured during startup*/
ulResult = Oct6100ApiClearInterrupts(instance);
if (ulResult != cOCT6100_ERR_OK)
return ulResult;
+ trace_printk("HERE:%d\n", __LINE__);
/* Configure the interrupt registers. */
ulResult = Oct6100ApiIsrHwInit(instance, &f_pChipOpen->InterruptConfig);
if (ulResult != cOCT6100_ERR_OK)
return ulResult;
}
+ trace_printk("HERE:%d\n", __LINE__);
return cOCT6100_ERR_OK;
}
@@ -31508,20 +31516,24 @@ static u32 Oct6100ApiInitRecordResources(
if (pSharedInfo->DebugInfo.usRecordMemIndex != (pSharedInfo->ImageInfo.usMaxNumberOfChannels - 1))
return cOCT6100_ERR_OPEN_DEBUG_MEM_INDEX;
+ trace_printk("HERE:%d\n", __LINE__);
/* Reserve the TSI entries for the channel. */
ulResult = Oct6100ApiReserveTsiMemEntry(instance, &pSharedInfo->DebugInfo.usRecordRinRoutTsiMemIndex);
if (ulResult != cOCT6100_ERR_OK)
return ulResult;
+ trace_printk("HERE:%d\n", __LINE__);
ulResult = Oct6100ApiReserveTsiMemEntry(instance, &pSharedInfo->DebugInfo.usRecordSinSoutTsiMemIndex);
if (ulResult != cOCT6100_ERR_OK)
return ulResult;
+ trace_printk("HERE:%d\n", __LINE__);
/* Open the debug channel. */
ulResult = Oct6100ApiDebugChannelOpen(instance);
if (ulResult != cOCT6100_ERR_OK)
return ulResult;
+ trace_printk("HERE:%d\n", __LINE__);
return cOCT6100_ERR_OK;
}
commit 5e525a7f396320bc081b343856c675ac59395703
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 15:08:35 2011 -0600
dbg
diff --git a/drivers/dahdi/wct4xxp/octapi.c b/drivers/dahdi/wct4xxp/octapi.c
index 71bcc71..0fd1521 100644
--- a/drivers/dahdi/wct4xxp/octapi.c
+++ b/drivers/dahdi/wct4xxp/octapi.c
@@ -5357,18 +5357,23 @@ static u32 Oct6100ApiReserveTsiMemEntry(
mOCT6100_GET_TSI_MEMORY_ALLOC_PNT(pSharedInfo, pTsiMemAlloc)
+ trace_printk("HERE:%d\n", __LINE__);
ulResult = OctapiLlmAllocAlloc(pTsiMemAlloc, &ulIndex);
+ trace_printk("HERE:%d\n", __LINE__);
if (ulResult != cOCT6100_ERR_OK) {
+ trace_printk("HERE:%d\n", __LINE__);
if (ulResult == OCTAPI_LLM_NO_STRUCTURES_LEFT)
return cOCT6100_ERR_MEMORY_ALL_TSI_MEM_ENTRY_RESERVED;
else
return cOCT6100_ERR_FATAL_92;
}
+ trace_printk("HERE:%d\n", __LINE__);
if (ulIndex >= cOCT6100_NUM_TSI_B4_PHASING) {
/* Evaluate the number of TSI memory before the timestamp TSI. */
ulNumTsiB4Timestamp = cOCT6100_NUM_TSI_B4_PHASING + cOCT6100_MAX_TSI_B4_TIMESTAMP - pSharedInfo->ChipConfig.usMaxPhasingTssts;
+ trace_printk("HERE:%d\n", __LINE__);
if (ulIndex >= ulNumTsiB4Timestamp) {
/* + 4 for the timestamp TSI entries.*/
*f_pusTsiMemIndex = (u16)(pSharedInfo->ChipConfig.usMaxPhasingTssts + ulIndex + cOCT6100_TSI_MEM_FOR_TIMESTAMP);
@@ -5376,9 +5381,11 @@ static u32 Oct6100ApiReserveTsiMemEntry(
*f_pusTsiMemIndex = (u16)(pSharedInfo->ChipConfig.usMaxPhasingTssts + ulIndex);
}
} else {
+ trace_printk("HERE:%d\n", __LINE__);
*f_pusTsiMemIndex = (u16)(ulIndex);
}
+ trace_printk("HERE:%d\n", __LINE__);
return cOCT6100_ERR_OK;
}
commit 097f51ae995bd4591f3955608b1327124840481c
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 14:27:44 2011 -0600
debug add some trace
diff --git a/drivers/dahdi/wct4xxp/vpm450m.c b/drivers/dahdi/wct4xxp/vpm450m.c
index 18693f7..2857d86 100644
--- a/drivers/dahdi/wct4xxp/vpm450m.c
+++ b/drivers/dahdi/wct4xxp/vpm450m.c
@@ -447,6 +447,8 @@ struct vpm450m *init_vpm450m(void *wc, int *isalaw, int numspans, const struct f
}
+ trace_printk("InstanceSize.ulApiInstanceSize = %d\n", InstanceSize.ulApiInstanceSize);
+
vpm450m->pApiInstance = vmalloc(InstanceSize.ulApiInstanceSize);
if (!vpm450m->pApiInstance) {
printk(KERN_NOTICE "Out of memory (can't allocate %d bytes)!\n", InstanceSize.ulApiInstanceSize);
commit 6533bc665383ac385eac625e115209dc465e81a7
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 14:25:36 2011 -0600
wip
diff --git a/drivers/dahdi/wct4xxp/octapi.c b/drivers/dahdi/wct4xxp/octapi.c
index 5e9589a..71bcc71 100644
--- a/drivers/dahdi/wct4xxp/octapi.c
+++ b/drivers/dahdi/wct4xxp/octapi.c
@@ -26971,9 +26971,6 @@ static u32 Oct6100ApiCalculateInstanceSizes(
ulResult = Oct6100ApiGetPhasingTsstSwSizes(f_pChipOpen, f_pInstSizes);
if (ulResult != cOCT6100_ERR_OK)
return ulResult;
- /*-----------------------------------------------------------------------------*/
- /* Calculate memory needed for the ADPCM channels. */
- return ulResult;
/*-----------------------------------------------------------------------------*/
/* Determine amount of memory needed for memory allocation softwares. These
commit b24beb8971e6a16926e36b574d7eb446e484740d
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 14:25:03 2011 -0600
wip
diff --git a/drivers/dahdi/wct4xxp/octapi.c b/drivers/dahdi/wct4xxp/octapi.c
index 5fa2637..5e9589a 100644
--- a/drivers/dahdi/wct4xxp/octapi.c
+++ b/drivers/dahdi/wct4xxp/octapi.c
@@ -26927,7 +26927,7 @@ static u32 Oct6100ApiCalculateInstanceSizes(
u32 ulResult;
/* Start with all instance sizes set to 0. */
- memset(f_pInstSizes, 0x00, sizeof(struct oct6100_api_instance_sizes));
+ memset(f_pInstSizes, 0x00, sizeof(*f_pInstSizes));
/* All memory sizes are rounded up to the next multiple of 64 bytes. */
commit be8652014593af52ee84b94ce72cb06a786e59d9
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 01:45:25 2011 -0600
enable mg2
diff --git a/drivers/dahdi/Kbuild b/drivers/dahdi/Kbuild
index 9ccaee5..48fe281 100644
--- a/drivers/dahdi/Kbuild
+++ b/drivers/dahdi/Kbuild
@@ -27,7 +27,7 @@ obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCT4XXP) += wct4xxp/
#obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_ECHOCAN_STEVE) += dahdi_echocan_sec.o
#obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_ECHOCAN_STEVE2) += dahdi_echocan_sec2.o
#obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_ECHOCAN_KB1) += dahdi_echocan_kb1.o
-#obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_ECHOCAN_MG2) += dahdi_echocan_mg2.o
+obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_ECHOCAN_MG2) += dahdi_echocan_mg2.o
obj-m += $(DAHDI_MODULES_EXTRA)
commit e836b516ef3a3e7ebf7bac9fdc5a018fc37a22db
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Jan 31 01:43:22 2011 -0600
wip
diff --git a/drivers/dahdi/wct4xxp/octapi.h b/drivers/dahdi/wct4xxp/octapi.h
index 65d3b0a..b269a3b 100644
--- a/drivers/dahdi/wct4xxp/octapi.h
+++ b/drivers/dahdi/wct4xxp/octapi.h
@@ -70,11 +70,8 @@ $Octasic_Revision: 18 $
#define cOCT6100_MEM_TYPE_DDR 1
#define cOCT6100_MEM_TYPE_SDR_PLL_BYPASS 2
-#define cOCT6100_MEMORY_CHIP_SIZE_8MB cOCT6100_SIZE_8M
-#define cOCT6100_MEMORY_CHIP_SIZE_16MB cOCT6100_SIZE_16M
+#define cOCT6100_SIZE_32M 33554432
#define cOCT6100_MEMORY_CHIP_SIZE_32MB cOCT6100_SIZE_32M
-#define cOCT6100_MEMORY_CHIP_SIZE_64MB cOCT6100_SIZE_64M
-#define cOCT6100_MEMORY_CHIP_SIZE_128MB cOCT6100_SIZE_128M
#define cOCT6100_MAX_NUM_MEMORY_CHIP 2
commit 5dd41a4355db93fd1be699564260af3cc44bbccf
Author: Shaun Ruffell <sruffell at digium.com>
Date: Sun Jan 30 12:38:49 2011 -0600
wip
diff --git a/convert.py b/convert.py
index 30236bb..f7976d2 100644
--- a/convert.py
+++ b/convert.py
@@ -3,16 +3,20 @@
import sys
import re
-pat1 = re.compile(r"(\s)t(OCT\S*)")
-pat2 = re.compile(r"(\s)tP(OCT\S*)\s*(\S)")
-pat3 = re.compile(r"}.*;")
-pat4 = re.compile(r"typedef\s*")
-pat5 = re.compile(r"struct\s*(_OCT\S*)")
+pats = []
+pats.append((re.compile(r"(\s)t(OCT\S*)"), lambda x: x.group(1) + "struct " + x.group(2).lower()))
+pats.append((re.compile(r"(\s)tP(OCT\S*)\s*(\S)"), lambda x: x.group(1) + "struct " + x.group(2).lower() + " *" + x.group(3)))
+pats.append((re.compile(r"}.*;"), "};"))
+pats.append((re.compile(r"typedef\s*"), ""))
+pats.append((re.compile(r"struct\s*(_OCT\S*)"), lambda x: "struct " + x.group(1).lower()[1:-1]))
+pats.append((re.compile(r"struct\s*_(LLM\S*)"), lambda x: "struct " + x.group(1).lower()))
+pats.append((re.compile(r"struct\s*_(TLLM\S*)"), lambda x: "struct " + x.group(1).lower()[:-1]))
+pats.append((re.compile(r"(\s)(LLM\S*)"), lambda x: x.group(1) + "struct " + x.group(2).lower()))
+pats.append((re.compile(r"(\s)(TLLM\S*)"), lambda x: x.group(1) + "struct " + x.group(2).lower()))
+pats.append((re.compile(r"\((LLM\S*)"), lambda x: "(struct " + x.group(1).lower()))
+pats.append((re.compile(r"\((TLLM\S*)"), lambda x: "(struct " + x.group(1).lower()))
for line in sys.stdin:
- s = re.sub(pat1, lambda x: x.group(1) + "struct " + x.group(2).lower(), line)
- s = re.sub(pat2, lambda x: x.group(1) + "struct " + x.group(2).lower() + " *" + x.group(3), s)
- s = re.sub(pat3, "};", s)
- s = re.sub(pat4, "", s)
- s = re.sub(pat5, lambda x: "struct " + x.group(1).lower()[1:-1], s)
- sys.stdout.write(s)
+ for pat, sub in pats:
+ line = re.sub(pat, sub, line)
+ sys.stdout.write(line)
diff --git a/drivers/dahdi/wct4xxp/octapi.c b/drivers/dahdi/wct4xxp/octapi.c
index e014a0b..5fa2637 100644
--- a/drivers/dahdi/wct4xxp/octapi.c
+++ b/drivers/dahdi/wct4xxp/octapi.c
@@ -3,99 +3,4817 @@
File: oct6100_memory.c
Copyright (c) 2001-2007 Octasic Inc.
-
-Description:
+
+Description:
This file contains the functions used to manage the allocation of memory
blocks in external memory.
-This file is part of the Octasic OCT6100 GPL API . The OCT6100 GPL API is
-free software; you can redistribute it and/or modify it under the terms of
-the GNU General Public License as published by the Free Software Foundation;
-either version 2 of the License, or (at your option) any later version.
+This file is part of the Octasic OCT6100 GPL API . The OCT6100 GPL API is
+free software; you can redistribute it and/or modify it under the terms of
+the GNU General Public License as published by the Free Software Foundation;
+either version 2 of the License, or (at your option) any later version.
+
+The OCT6100 GPL API is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+for more details.
+
+You should have received a copy of the GNU General Public License
+along with the OCT6100 GPL API; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+
+$Octasic_Release: OCT612xAPI-01.00-PR49 $
+
+$Octasic_Revision: 42 $
+
+\*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/
+
+#include <linux/kernel.h>
+#include <linux/types.h>
+#include <linux/slab.h>
+#include <linux/string.h>
+
+#include "octapi.h"
+
+/* List of TLV types supported by this API. */
+#define cOCT6100_TLV_TYPE_VERSION_NUMBER 0
+#define cOCT6100_TLV_TYPE_CUSTOMER_PROJECT_ID 2
+
+#define cOCT6100_TLV_TYPE_POUCH_BASE_ADDRESS 3
+#define cOCT6100_TLV_TYPE_CH0_MAIN_BASE_ADDRESS 4
+#define cOCT6100_TLV_TYPE_CH_MAIN_SIZE 5
+#define cOCT6100_TLV_TYPE_CH_MAIN_IO_OFFSET 6
+#define cOCT6100_TLV_TYPE_CH_MAIN_ZCB_OFFSET 7
+#define cOCT6100_TLV_TYPE_CH_MAIN_ZCB_SIZE 8
+#define cOCT6100_TLV_TYPE_CH_MAIN_XCB_OFFSET 9
+#define cOCT6100_TLV_TYPE_CH_MAIN_XCB_SIZE 10
+#define cOCT6100_TLV_TYPE_CH_MAIN_YCB_OFFSET 11
+#define cOCT6100_TLV_TYPE_CH_MAIN_YCB_SIZE 12
+#define cOCT6100_TLV_TYPE_FREE_MEM_BASE_ADDRESS 13
+#define cOCT6100_TLV_TYPE_CH_ROOT_CONF_OFFSET 14
+
+#define cOCT6100_TLV_TYPE_POA_CH_MAIN_ZPO_OFFSET 15
+#define cOCT6100_TLV_TYPE_POA_CH_MAIN_ZPO_SIZE 16
+#define cOCT6100_TLV_TYPE_POA_CH_MAIN_YPO_OFFSET 17
+#define cOCT6100_TLV_TYPE_POA_CH_MAIN_YPO_SIZE 18
+#define cOCT6100_TLV_TYPE_POA_BOFF_RW_ZWP 19
+#define cOCT6100_TLV_TYPE_POA_BOFF_RW_ZIS 20
+#define cOCT6100_TLV_TYPE_POA_BOFF_RW_ZSP 21
+#define cOCT6100_TLV_TYPE_POA_BOFF_RW_YWP 22
+#define cOCT6100_TLV_TYPE_POA_BOFF_RW_YIS 23
+#define cOCT6100_TLV_TYPE_POA_BOFF_RW_YSP 24
+#define cOCT6100_TLV_TYPE_POA_BOFF_RO_ZRP 25
+#define cOCT6100_TLV_TYPE_POA_BOFF_RO_YRP 26
+
+#define cOCT6100_TLV_TYPE_CNR_CONF_BOFF_RW_ENABLE 27
+#define cOCT6100_TLV_TYPE_ANR_CONF_BOFF_RW_ENABLE 28
+
+#define cOCT6100_TLV_TYPE_HZ_CONF_BOFF_RW_ENABLE 29
+#define cOCT6100_TLV_TYPE_HX_CONF_BOFF_RW_ENABLE 30
+
+#define cOCT6100_TLV_TYPE_LCA_Z_CONF_BOFF_RW_GAIN 31
+#define cOCT6100_TLV_TYPE_LCA_Y_CONF_BOFF_RW_GAIN 32
+
+#define cOCT6100_TLV_TYPE_CNA_CONF_BOFF_RW_ENABLE 33
+
+#define cOCT6100_TLV_TYPE_NOA_CONF_BOFF_RW_ENABLE 34
+
+#define cOCT6100_TLV_TYPE_VFA_CONF_BOFF_RW_ENABLE 35
+
+#define cOCT6100_TLV_TYPE_TLA_MAIN_IO_BOFF_RW_TAIL_DISP 37
+
+#define cOCT6100_TLV_TYPE_STATSA_MAIN_IO_BOFF_RO_EPC 38
+#define cOCT6100_TLV_TYPE_BOOTA_POUCH_BOFF_RW_BOOT_INST 39
+#define cOCT6100_TLV_TYPE_BOOTA_POUCH_BOFF_RW_BOOT_RESULT 40
+
+#define cOCT6100_TLV_TYPE_DIS_CONF_BOFF_RW_ENABLE 41
+#define cOCT6100_TLV_TYPE_TDM_CONF_BOFF_RW_ENABLE 42
+#define cOCT6100_TLV_TYPE_NT_CONF_BOFF_RW_ENABLE 43
+#define cOCT6100_TLV_TYPE_AEC_CONF_BOFF_RW_ENABLE 44
+
+#define cOCT6100_TLV_TYPE_PCM_LEAK_CONF_BOFF_RW 45
+#define cOCT6100_TLV_TYPE_DEFAULT_ERL_CONF_BOFF_RW 46
+#define cOCT6100_TLV_TYPE_TONE_REM_CONF_BOFF_RW_ENABLE 47
+
+#define cOCT6100_TLV_TYPE_TLA_MAIN_IO_BOFF_RW_MAX_ECHO_POINT 48
+
+#define cOCT6100_TLV_TYPE_NLP_CONV_CAP_CONF_BOFF_RW 49
+#define cOCT6100_TLV_TYPE_MATRIX_EVENT_SIZE 50
+#define cOCT6100_TLV_TYPE_CNR_RW_ENABLE 51
+#define cOCT6100_TLV_TYPE_MAX_TAIL_LENGTH_RW_ENABLE 52
+
+#define cOCT6100_TLV_TYPE_PLAYOUT_ENABLE 53
+#define cOCT6100_TLV_TYPE_DOMINANT_SPEAKER_BOFF_RW_ENABLE 54
+
+#define cOCT6100_TLV_TYPE_ANR_RW_ENABLE 57
+#define cOCT6100_TLV_TYPE_TONE_REMOVAL_ENABLE 58
+#define cOCT6100_TLV_TYPE_MUSIC_PROTECTION_RW_ENABLE 59
+#define cOCT6100_TLV_TYPE_TAIL_DISP_CONF_BOFF_RW_ENABLE 60
+#define cOCT6100_TLV_TYPE_IDLE_CODE_DETECTION_ENABLE 62
+
+#define cOCT6100_TLV_TYPE_AEC_DEFAULT_ERL_BOFF 64
+
+#define cOCT6100_TLV_TYPE_Z_ALC_TARGET_BOFF 65
+#define cOCT6100_TLV_TYPE_Y_ALC_TARGET_BOFF 66
+#define cOCT6100_TLV_TYPE_Z_HLC_TARGET_BOFF 67
+#define cOCT6100_TLV_TYPE_Y_HLC_TARGET_BOFF 68
+#define cOCT6100_TLV_TYPE_ALC_HLC_STATUS_BOFF 69
+
+#define cOCT6100_TLV_TYPE_Z_PLAYOUT_HARD_SKIP_BOFF 70
+#define cOCT6100_TLV_TYPE_Y_PLAYOUT_HARD_SKIP_BOFF 71
+
+#define cOCT6100_TLV_TYPE_AFT_FIELD_BOFF 72
+
+#define cOCT6100_TLV_TYPE_VOICE_DETECTED_STAT_BOFF 73
+
+#define cOCT6100_TLV_TYPE_GAIN_APPLIED_RIN_STAT_BOFF 74
+#define cOCT6100_TLV_TYPE_GAIN_APPLIED_SOUT_STAT_BOFF 75
+
+#define cOCT6100_TLV_TYPE_MAX_ADAPT_ALE_BOFF 77
+#define cOCT6100_TLV_TYPE_RIN_ANR_BOFF 78
+
+#define cOCT6100_TLV_TYPE_NUMBER_PLAYOUT_EVENTS 79
+
+#define cOCT6100_TLV_TYPE_RIN_MUTE_BOFF 80
+#define cOCT6100_TLV_TYPE_SIN_MUTE_BOFF 81
+
+#define cOCT6100_TLV_TYPE_CHAN_TAIL_LENGTH_BOFF 82
+
+#define cOCT6100_TLV_TYPE_CHAN_VQE_TONE_DISABLING_BOFF 83
+
+#define cOCT6100_TLV_TYPE_ANR_SNR_IMPROVEMENT_BOFF 84
+#define cOCT6100_TLV_TYPE_ANR_AGRESSIVITY_BOFF 85
+
+#define cOCT6100_TLV_TYPE_RIN_TONE_REM_CONF_BOFF_RW_ENABLE 86
+#define cOCT6100_TLV_TYPE_RIN_TONE_REM_COUNTER_BOFF 87
+
+#define cOCT6100_TLV_TYPE_AF_TAIL_DISP_VALUE_BOFF 88
+
+#define cOCT6100_TLV_TYPE_POUCH_COUNTER_BOFF 89
+
+#define cOCT6100_TLV_TYPE_AEC_TAIL_LENGTH_BOFF 90
+
+#define cOCT6100_TLV_TYPE_MATRIX_DWORD_BASE 91
+#define cOCT6100_TLV_TYPE_DEBUG_CHAN_STATS_BYTE_SIZE 92
+#define cOCT6100_TLV_TYPE_RECORDED_PCM_EVENT_BYTE_SIZE 93
+#define cOCT6100_TLV_TYPE_HOT_CHANNEL_SELECT_DWORD_BASE 94
+#define cOCT6100_TLV_TYPE_IS_ISR_CALLED_BOFF 95
+
+#define cOCT6100_TLV_TYPE_MATRIX_TIMESTAMP_DWORD_BASE 96
+
+#define cOCT6100_TLV_TYPE_CHAN_MAIN_IO_STATS_OFFSET 100
+#define cOCT6100_TLV_TYPE_CHAN_MAIN_IO_STATS_SIZE 101
+
+#define cOCT6100_TLV_TYPE_AF_WRITE_PTR_BYTE_OFFSET 104
+#define cOCT6100_TLV_TYPE_MATRIX_WP_DWORD_BASE 105
+#define cOCT6100_TLV_TYPE_DEBUG_CHAN_LITE_STATS_BYTE_SIZE 106
+
+#define cOCT6100_TLV_TYPE_MUSIC_PROTECTION_ENABLE_BOFF 107
+
+#define cOCT6100_TLV_TYPE_IMAGE_TYPE 108
+#define cOCT6100_TLV_TYPE_MAX_WIRELINE_CHANNELS 111
+
+#define cOCT6100_TLV_TYPE_AF_EVENT_CB_SIZE 112
+
+#define cOCT6100_TLV_TYPE_ZZ_ENERGY_CHAN_STATS_BOFF 116
+#define cOCT6100_TLV_TYPE_YY_ENERGY_CHAN_STATS_BOFF 117
+
+#define cOCT6100_TLV_TYPE_BUFFER_PLAYOUT_SKIP_IN_EVENTS 119
+
+#define cOCT6100_TLV_TYPE_SOUT_NOISE_BLEACHING 121
+
+#define cOCT6100_TLV_TYPE_DOUBLE_TALK_BEH_MODE 124
+#define cOCT6100_TLV_TYPE_DOUBLE_TALK_BEH_MODE_BOFF 125
+
+#define cOCT6100_TLV_TYPE_IDLE_CODE_DETECTION_BOFF 136
+
+#define cOCT6100_TLV_TYPE_NLP_STATISTICS 138
+
+#define cOCT6100_TLV_TYPE_RIN_ANR_VALUE 147
+
+#define cOCT6100_TLV_TYPE_ADPCM_ENABLE 150
+#define cOCT6100_TLV_TYPE_NUM_TONE_DETECTOR 151
+#define cOCT6100_TLV_TYPE_CONFERENCING_ENABLE 152
+#define cOCT6100_TLV_TYPE_MAX_NUMBER_OF_CHANNELS 153
+#define cOCT6100_TLV_TYPE_DEBUG_CHAN_INDEX_VALUE 154
+#define cOCT6100_TLV_TYPE_TONE_DETECTOR_PROFILE 155
+#define cOCT6100_TLV_TYPE_TEST_MODE_ENABLE 156
+#define cOCT6100_TLV_TYPE_MAX_TAIL_DISPLACEMENT 157
+
+/* TLV length defines. */
+#define cOCT6100_TLV_MIN_LENGTH_DEFAULT 4
+#define cOCT6100_TLV_MAX_LENGTH_DEFAULT 0xFFFFFFFF
+
+#define cOCT6100_TLV_MIN_LENGTH_VERSION_NUMBER 4
+#define cOCT6100_TLV_MAX_LENGTH_VERSION_NUMBER 1016
+#define cOCT6100_TLV_MIN_LENGTH_CUSTOMER_PROJECT_ID 4
+#define cOCT6100_TLV_MAX_LENGTH_CUSTOMER_PROJECT_ID 4
+
+#define cOCT6100_TLV_MIN_LENGTH_CH0_MAIN_BASE_ADDRESS 4
+#define cOCT6100_TLV_MAX_LENGTH_CH0_MAIN_BASE_ADDRESS 4
+#define cOCT6100_TLV_MIN_LENGTH_CH_MAIN_SIZE 4
+#define cOCT6100_TLV_MAX_LENGTH_CH_MAIN_SIZE 4
+#define cOCT6100_TLV_MIN_LENGTH_CH_MAIN_IO_OFFSET 4
+#define cOCT6100_TLV_MAX_LENGTH_CH_MAIN_IO_OFFSET 4
+#define cOCT6100_TLV_MIN_LENGTH_CH_MAIN_ZCB_OFFSET 4
+#define cOCT6100_TLV_MAX_LENGTH_CH_MAIN_ZCB_OFFSET 4
+#define cOCT6100_TLV_MIN_LENGTH_CH_MAIN_ZCB_SIZE 4
+#define cOCT6100_TLV_MAX_LENGTH_CH_MAIN_ZCB_SIZE 4
+#define cOCT6100_TLV_MIN_LENGTH_CH_MAIN_XCB_OFFSET 4
+#define cOCT6100_TLV_MAX_LENGTH_CH_MAIN_XCB_OFFSET 4
+#define cOCT6100_TLV_MIN_LENGTH_CH_MAIN_XCB_SIZE 4
+#define cOCT6100_TLV_MAX_LENGTH_CH_MAIN_XCB_SIZE 4
+#define cOCT6100_TLV_MIN_LENGTH_CH_MAIN_YCB_OFFSET 4
+#define cOCT6100_TLV_MAX_LENGTH_CH_MAIN_YCB_OFFSET 4
+#define cOCT6100_TLV_MIN_LENGTH_CH_MAIN_YCB_SIZE 4
+#define cOCT6100_TLV_MAX_LENGTH_CH_MAIN_YCB_SIZE 4
+#define cOCT6100_TLV_MIN_LENGTH_FREE_MEM_BASE_ADDRESS 4
+#define cOCT6100_TLV_MAX_LENGTH_FREE_MEM_BASE_ADDRESS 4
+#define cOCT6100_TLV_MIN_LENGTH_CH_ROOT_CONF_OFFSET 4
+#define cOCT6100_TLV_MAX_LENGTH_CH_ROOT_CONF_OFFSET 4
+
+#define cOCT6100_TLV_MIN_LENGTH_POA_CH_MAIN_ZPO_OFFSET 4
+#define cOCT6100_TLV_MAX_LENGTH_POA_CH_MAIN_ZPO_OFFSET 4
+#define cOCT6100_TLV_MIN_LENGTH_POA_CH_MAIN_ZPO_SIZE 4
+#define cOCT6100_TLV_MAX_LENGTH_POA_CH_MAIN_ZPO_SIZE 4
+#define cOCT6100_TLV_MIN_LENGTH_POA_CH_MAIN_YPO_OFFSET 4
+#define cOCT6100_TLV_MAX_LENGTH_POA_CH_MAIN_YPO_OFFSET 4
+#define cOCT6100_TLV_MIN_LENGTH_POA_CH_MAIN_YPO_SIZE 4
+#define cOCT6100_TLV_MAX_LENGTH_POA_CH_MAIN_YPO_SIZE 4
+#define cOCT6100_TLV_MIN_LENGTH_POA_BOFF_RW_ZWP 8
+#define cOCT6100_TLV_MAX_LENGTH_POA_BOFF_RW_ZWP 8
+#define cOCT6100_TLV_MIN_LENGTH_POA_BOFF_RW_ZIS 8
... 231926 lines suppressed ...
--
team/sruffell/dahdi-linux.git
More information about the asterisk-scf-commits
mailing list