blob: c8448f5faef6da9f4c3bc1e13ec35d1a0f739a9b [file] [log] [blame]
#ifndef __DXS_INIT_H__
#define __DXS_INIT_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_init.h
Initialization functions declarations.
*/
/* ========================================================================== */
/* Includes */
/* ========================================================================== */
#include "dxs.h"
#include "dxs_lib.h"
/* ========================================================================== */
/* Macro definitions */
/* ========================================================================== */
/* ========================================================================== */
/* Type definitions */
/* ========================================================================== */
enum e_DXS_DevCaps
{
/** GR909 available */
dxs_cap_gr909 = 0,
/** AC Level Meter Support Available */
dxs_cap_aclm,
/** Reserved for future use */
dxs_cap_reserved,
/** Teletax Support Available */
dxs_cap_ttx,
/** Universal Tone Detector Available */
dxs_cap_utd,
/** Caller ID Available */
dxs_cap_cid,
/** Howler Support Available */
dxs_cap_howler,
};
/* ========================================================================== */
/* Function prototypes */
/* ========================================================================== */
extern DXS_DEVICE_t *dxs_get_dev (uint8_t dxs);
extern uint8_t dxs_CRC_8_CCITT(uint8_t *pData, uint32_t nLength);
extern int32_t dxs_init(DXS_DEVICE_t *pDev, uint8_t chipSelect,
int32_t irqNumber, uint8_t dcdcType, uint8_t access,
uint8_t dev);
extern int32_t dxs_exit(DXS_DEVICE_t *pDev);
extern int32_t dxs_caps_vers_update(DXS_DEVICE_t *pDev);
extern int32_t dxs_caps_vers_forget(DXS_DEVICE_t *pDev);
extern int32_t dxs_caps_read(DXS_DEVICE_t *pDev, DXS_Caps_t *pCap);
extern int32_t dxs_vers_read(DXS_DEVICE_t *pDev, DXS_Version_t *pVersion);
extern int32_t DXS_IsFeatureSupported(DXS_DEVICE_t *pDev,
enum e_DXS_DevCaps cap);
extern int32_t DXS_ChargePumpSwitchOn(DXS_DEVICE_t *pDev);
#if 0
extern int32_t DXS_ChargePumpSwitchOff(DXS_DEVICE_t *pDev);
#endif
extern int32_t DXS_CfEsdSwitch (DXS_DEVICE_t *pDev, uint8_t on);
extern void DXS_DevInfoGet (DXS_DEVICE_t *pDev, uint8_t *pROM_id,
uint8_t *pChannels);
extern int32_t dxs_sleep(DXS_DEVICE_t *pDev, uint8_t enable);
#endif /* __DXS_INIT_H__ */