blob: d9397cc01f3105e1d0599be67003ebbf3d5f9507 [file] [log] [blame]
#ifndef __DXS_SIG_H__
#define __DXS_SIG_H__
/******************************************************************************
Copyright (c) 2006-2015 Lantiq Deutschland GmbH
Copyright (c) 2015 Lantiq Beteiligungs-GmbH & Co.KG
Copyright 2018, Intel Corporation.
For licensing information, see the file 'LICENSE' in the root folder of
this software module.
******************************************************************************/
/**
\file dxs_sig.h
Signalling channel functions declarations.
*/
/* ========================================================================== */
/* Includes */
/* ========================================================================== */
#include "dxs_lib.h"
#include "dxs_fw_cmd.h"
/* ========================================================================== */
/* Macro definitions */
/* ========================================================================== */
/* ========================================================================== */
/* Type definitions */
/* ========================================================================== */
/* ========================================================================== */
/* Function prototypes */
/* ========================================================================== */
extern void *dxs_sig_ch_init(uint8_t dev, uint8_t ch);
extern void dxs_sig_utd_mtx_init();
extern void dxs_sig_utd_mtx_destroy();
extern int32_t dxs_dtmf_config(DXS_CHANNEL_t *pCh, int16_t level,
int16_t twist);
extern int32_t dxs_dtmf_enable(DXS_CHANNEL_t *pCh, uint8_t action);
extern int32_t DXS_SIG_MeterPulseEnable(DXS_CHANNEL_t *pCh);
extern int32_t DXS_SIG_MeterPulseDisable(DXS_CHANNEL_t *pCh);
extern int32_t obx_DXS_SIG_MeterPulseStatusClear(DXS_CHANNEL_t *pCh);
extern int32_t DXS_FSK_Configure(DXS_CHANNEL_t *pCh, int16_t level,
uint16_t seizure, uint16_t mark);
extern int32_t DXS_FSK_Enable(DXS_CHANNEL_t *pCh, uint8_t standard, uint8_t autodeact);
extern int32_t DXS_FSK_Disable(DXS_CHANNEL_t *pCh, uint8_t autodeact);
extern int32_t DXS_FSK_Data(DXS_CHANNEL_t *pCh, uint8_t nByte, uint8_t *pByte);
extern uint8_t DXS_UTD_ToneIdxGet(DXS_CHANNEL_t *pCh);
extern int32_t DXS_SIG_UtdCoeffUpdate(DXS_CHANNEL_t *pCh, uint16_t unToneIdx,
struct DXS_FW_SIG_UtdCoeff *pUtdCoeff);
extern int32_t DXS_SIG_UtdEnable(DXS_CHANNEL_t *pCh, uint16_t unToneIdx,
uint8_t unDirection);
extern int32_t DXS_SIG_UtdDisable(DXS_CHANNEL_t *pCh);
extern int32_t dxs_tone_start(DXS_CHANNEL_t *pCh);
extern int32_t dxs_tone_stop(DXS_CHANNEL_t *pCh);
extern int32_t dxs_tone_config(DXS_CHANNEL_t *pCh,
int16_t level1, int16_t level2, uint16_t freq1,
uint16_t freq2, uint8_t am, uint8_t called_from_api);
#endif /* __DXS_SIG_H__ */