dahdi-linux/drivers/dahdi/oct612x/include/oct6100api/oct6100_chip_open_pub.h
Shaun Ruffell bf3fe05dfb wct4xxp: Moving the transmit short detection behind debug module param.
This needs some more testing before it's on by default.  If the card is
otherwise functioning, these messages may be confusing to the user.  If
the card is not functioning, the driver can be reloaded with debug to
check for this condition.

Signed-off-by: Shaun Ruffell <sruffell@digium.com>

git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@9205 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2010-08-27 21:59:27 +00:00

242 lines
7.2 KiB
C

/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*\
File: oct6100_chip_open_pub.h
Copyright (c) 2001-2007 Octasic Inc.
Description:
File containing all defines, macros, and structures pertaining to the file
oct6100_chip_open.c. All elements defined in this file are for public
usage of the API. All private elements are defined in the
oct6100_chip_open_priv.h file.
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: 54 $
\*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/
#ifndef __OCT6100_CHIP_OPEN_PUB_H__
#define __OCT6100_CHIP_OPEN_PUB_H__
/***************************** INCLUDE FILES *******************************/
/***************************** DEFINES *************************************/
/***************************** TYPES ***************************************/
typedef struct _OCT6100_CHIP_OPEN_
{
UINT32 ulUserChipId;
BOOL fMultiProcessSystem;
PVOID pProcessContext;
UINT32 ulMaxRwAccesses;
unsigned char const *pbyImageFile; /* Byte pointer to the image file to be uploaded into the chip. */
UINT32 ulImageSize; /* Size of the image file (in bytes). */
UINT32 ulMemClkFreq; /* 10 - 133.3 MHz. */
UINT32 ulUpclkFreq; /* 1 - 66.6 MHz. */
BOOL fEnableMemClkOut;
UINT32 ulMemoryType; /* SDRAM or DDR type external memory. */
UINT32 ulNumMemoryChips; /* Number of memory chips present. */
UINT32 ulMemoryChipSize; /* The size of the memory chips. */
UINT32 ulTailDisplacement; /* Tail displacement supported by the chip. */
BOOL fEnableAcousticEcho;/* Acoustic echo cancellation enabled. */
/* Resource allocation parameters. */
UINT32 ulMaxChannels;
UINT32 ulMaxTsiCncts;
UINT32 ulMaxBiDirChannels;
UINT32 ulMaxConfBridges;
UINT32 ulMaxFlexibleConfParticipants;
UINT32 ulMaxPlayoutBuffers;
UINT32 ulMaxPhasingTssts;
UINT32 ulMaxAdpcmChannels;
BOOL fUseSynchTimestamp;
UINT32 aulTimestampTimeslots[ 4 ];
UINT32 aulTimestampStreams[ 4 ];
UINT32 ulInterruptPolarity;
tOCT6100_INTERRUPT_CONFIGURE InterruptConfig;
UINT32 aulTdmStreamFreqs[ cOCT6100_TDM_STREAM_MAX_GROUPS ];
UINT32 ulMaxTdmStreams;
UINT32 ulTdmSampling;
BOOL fEnableFastH100Mode;
UINT32 ulSoftToneEventsBufSize; /* In events. */
BOOL fEnableExtToneDetection;
BOOL fEnable2100StopEvent;
UINT32 ulSoftBufferPlayoutEventsBufSize; /* In events. */
UINT32 ulMaxRemoteDebugSessions;
BOOL fEnableChannelRecording;
BOOL fEnableProductionBist;
UINT32 ulProductionBistMode;
UINT32 ulNumProductionBistLoops;
} tOCT6100_CHIP_OPEN, *tPOCT6100_CHIP_OPEN;
typedef struct _OCT6100_GET_INSTANCE_SIZE_
{
UINT32 ulApiInstanceSize;
} tOCT6100_GET_INSTANCE_SIZE, *tPOCT6100_GET_INSTANCE_SIZE;
typedef struct _OCT6100_CHIP_CLOSE_
{
UINT32 ulDummyVariable;
} tOCT6100_CHIP_CLOSE, *tPOCT6100_CHIP_CLOSE;
typedef struct _OCT6100_CREATE_LOCAL_INSTANCE_
{
tPOCT6100_INSTANCE_API pApiInstShared;
tPOCT6100_INSTANCE_API pApiInstLocal;
PVOID pProcessContext;
UINT32 ulUserChipId;
} tOCT6100_CREATE_LOCAL_INSTANCE, *tPOCT6100_CREATE_LOCAL_INSTANCE;
typedef struct _OCT6100_DESTROY_LOCAL_INSTANCE_
{
UINT32 ulDummy;
} tOCT6100_DESTROY_LOCAL_INSTANCE, *tPOCT6100_DESTROY_LOCAL_INSTANCE;
typedef struct _OCT6100_GET_HW_REVISION_
{
UINT32 ulUserChipId;
PVOID pProcessContext;
UINT32 ulRevisionNum;
} tOCT6100_GET_HW_REVISION, *tPOCT6100_GET_HW_REVISION;
typedef struct _OCT6100_FREE_RESOURCES_
{
BOOL fFreeTsiConnections;
BOOL fFreeConferenceBridges;
BOOL fFreePlayoutBuffers;
BOOL fFreePhasingTssts;
BOOL fFreeAdpcmChannels;
} tOCT6100_FREE_RESOURCES, *tPOCT6100_FREE_RESOURCES;
typedef struct _OCT6100_PRODUCTION_BIST_
{
UINT32 ulCurrentAddress;
UINT32 ulCurrentLoop;
UINT32 ulCurrentTest;
UINT32 ulBistStatus;
UINT32 ulFailedAddress;
UINT32 ulReadValue;
UINT32 ulExpectedValue;
} tOCT6100_PRODUCTION_BIST, *tPOCT6100_PRODUCTION_BIST;
typedef struct _OCT6100_API_GET_VERSION_
{
UINT8 achApiVersion[ cOCT6100_API_VERSION_STRING_LENGTH ];
} tOCT6100_API_GET_VERSION, *tPOCT6100_API_GET_VERSION;
typedef struct _OCT6100_API_GET_CAPACITY_PINS_
{
UINT32 ulUserChipId;
PVOID pProcessContext;
UINT32 ulMemoryType; /* SDRAM or DDR type external memory. */
BOOL fEnableMemClkOut;
UINT32 ulMemClkFreq;
UINT32 ulCapacityValue;
} tOCT6100_API_GET_CAPACITY_PINS, *tPOCT6100_API_GET_CAPACITY_PINS;
/************************** FUNCTION PROTOTYPES *****************************/
UINT32 Oct6100ChipOpenDef(
OUT tPOCT6100_CHIP_OPEN f_pChipOpen );
UINT32 Oct6100ChipOpen(
IN OUT tPOCT6100_INSTANCE_API f_pApiInstance,
IN OUT tPOCT6100_CHIP_OPEN f_pChipOpen );
UINT32 Oct6100ChipCloseDef(
OUT tPOCT6100_CHIP_CLOSE f_pChipClose );
UINT32 Oct6100ChipClose(
IN OUT tPOCT6100_INSTANCE_API f_pApiInstance,
IN OUT tPOCT6100_CHIP_CLOSE f_pChipClose );
UINT32 Oct6100GetInstanceSizeDef(
OUT tPOCT6100_GET_INSTANCE_SIZE f_pInstanceSize );
UINT32 Oct6100GetInstanceSize(
IN OUT tPOCT6100_CHIP_OPEN f_pChipOpen,
IN OUT tPOCT6100_GET_INSTANCE_SIZE f_pInstanceSize );
UINT32 Oct6100CreateLocalInstanceDef(
OUT tPOCT6100_CREATE_LOCAL_INSTANCE f_pCreateLocal );
UINT32 Oct6100CreateLocalInstance(
IN OUT tPOCT6100_CREATE_LOCAL_INSTANCE f_pCreateLocal );
UINT32 Oct6100DestroyLocalInstanceDef(
OUT tPOCT6100_DESTROY_LOCAL_INSTANCE f_pDestroyLocal );
UINT32 Oct6100DestroyLocalInstance(
IN OUT tPOCT6100_INSTANCE_API f_pApiInstance,
IN OUT tPOCT6100_DESTROY_LOCAL_INSTANCE f_pDestroyLocal );
UINT32 Oct6100ApiGetVersionDef(
OUT tPOCT6100_API_GET_VERSION f_pApiGetVersion );
UINT32 Oct6100ApiGetVersion(
IN OUT tPOCT6100_API_GET_VERSION f_pApiGetVersion );
UINT32 Oct6100GetHwRevisionDef(
OUT tPOCT6100_GET_HW_REVISION f_pRevision );
UINT32 Oct6100GetHwRevision(
IN OUT tPOCT6100_GET_HW_REVISION f_pRevision );
UINT32 Oct6100FreeResourcesDef(
OUT tPOCT6100_FREE_RESOURCES f_pFreeResources );
UINT32 Oct6100FreeResources(
IN OUT tPOCT6100_INSTANCE_API f_pApiInstance,
IN OUT tPOCT6100_FREE_RESOURCES f_pFreeResources );
UINT32 Oct6100ProductionBistDef(
OUT tPOCT6100_PRODUCTION_BIST f_pProductionBist );
UINT32 Oct6100ProductionBist(
IN OUT tPOCT6100_INSTANCE_API f_pApiInstance,
IN OUT tPOCT6100_PRODUCTION_BIST f_pProductionBist );
UINT32 Oct6100ApiGetCapacityPinsDef(
tPOCT6100_API_GET_CAPACITY_PINS f_pGetCapacityPins);
UINT32 Oct6100ApiGetCapacityPins(
tPOCT6100_API_GET_CAPACITY_PINS f_pGetCapacityPins );
#endif /* __OCT6100_CHIP_OPEN_PUB_H__ */