dfeccf
Vitis Drivers API Documentation
xdfeccf.h File Reference

Data Structures

struct  XDfeCcf_Version
 Logicore version. More...
 
struct  XDfeCcf_Trigger
 Trigger configuration. More...
 
struct  XDfeCcf_TriggerCfg
 All IP triggers. More...
 
struct  XDfeCcf_CCSequence
 Defines a CCID sequence. More...
 
struct  XDfeCcf_ModelParameters
 Channel Filter model parameters structure. More...
 
struct  XDfeCcf_Cfg
 Configuration. More...
 
struct  XDfeCcf_Init
 Initialization, "one-time" configuration parameters. More...
 
struct  XDfeCcf_Coefficients
 Defines filter coefficients. More...
 
struct  XDfeCcf_CarrierCfg
 Configuration for a single CC. More...
 
struct  XDfeCcf_InternalCarrierCfg
 Internal configuration for a single CC. More...
 
struct  XDfeCcf_AntennaCfg
 Configuration for a single Antenna. More...
 
struct  XDfeCcf_CCCfg
 Full CC configuration. More...
 
struct  XDfeCcf_OverflowStatus
 Channel Filter Status. More...
 
struct  XDfeCcf_Status
 Event status and interrupt mask. More...
 
struct  XDfeCcf_Config
 CCF Config Structure. More...
 
struct  XDfeCcf
 CCF Structure. More...
 

Macros

#define XDFECCF_MAX_NUM_INSTANCES   (10U)
 Maximum number of driver instances running at the same time. More...
 
#define XST_SUCCESS   (0U)
 Success flag. More...
 
#define XST_FAILURE   (1U)
 Failure flag. More...
 
#define XDFECCF_NODE_NAME_MAX_LENGTH   (50U)
 Node name maximum length. More...
 
#define XDFECCF_CC_NUM   (16)
 Maximum CC number. More...
 
#define XDFECCF_ANT_NUM_MAX   (8U)
 Maximum anntena number. More...
 
#define XDFECCF_SEQ_LENGTH_MAX   (16U)
 Maximum sequence length. More...
 
#define XDFECCF_NUM_COEFF   (128U)
 Maximum number of coefficients. More...
 

Enumerations

enum  XDfeCcf_StateId {
  XDFECCF_STATE_NOT_READY = 0, XDFECCF_STATE_READY, XDFECCF_STATE_RESET, XDFECCF_STATE_CONFIGURED,
  XDFECCF_STATE_INITIALISED, XDFECCF_STATE_OPERATIONAL
}
 

Functions

XDfeCcfXDfeCcf_InstanceInit (const char *DeviceNodeName)
 Initialises one instance of a channel filter driver. More...
 
void XDfeCcf_InstanceClose (XDfeCcf *InstancePtr)
 Closes the instances of a channel filter driver and moves the state machine to a Not Ready state. More...
 
void XDfeCcf_Reset (XDfeCcf *InstancePtr)
 Resets channel filter and puts block into a reset state. More...
 
void XDfeCcf_Configure (XDfeCcf *InstancePtr, XDfeCcf_Cfg *Cfg)
 Reads configuration from device tree/xparameters.h and IP registers. More...
 
void XDfeCcf_Initialize (XDfeCcf *InstancePtr, XDfeCcf_Init *Init)
 DFE Ccf driver one time initialisation, also moves the state machine to an Initialised state. More...
 
void XDfeCcf_Activate (XDfeCcf *InstancePtr, bool EnableLowPower)
 Activates channel filter and moves the state machine to an Activated state. More...
 
void XDfeCcf_Deactivate (XDfeCcf *InstancePtr)
 Deactivates channel filter and moves the state machine to Initialised state. More...
 
XDfeCcf_StateId XDfeCcf_GetStateID (XDfeCcf *InstancePtr)
 Gets a state machine state id. More...
 
void XDfeCcf_GetCurrentCCCfg (const XDfeCcf *InstancePtr, XDfeCcf_CCCfg *CurrCCCfg)
 Returns the current CC configuration in non-switchable mode. More...
 
void XDfeCcf_GetCurrentCCCfgSwitchable (const XDfeCcf *InstancePtr, XDfeCcf_CCCfg *CCCfgDownlink, XDfeCcf_CCCfg *CCCfgUplink)
 Returns the current CC configuration for Downlink and Uplink in switchable mode. More...
 
void XDfeCcf_GetEmptyCCCfg (const XDfeCcf *InstancePtr, XDfeCcf_CCCfg *CCCfg)
 Returns configuration structure CCCfg with CCCfg->Sequence.Length value set in XDfeCcf_Configure(), array CCCfg->Sequence.CCID[] members are set to not used value (-1) and the other CCCfg members are set to 0. More...
 
void XDfeCcf_GetCarrierCfg (const XDfeCcf *InstancePtr, XDfeCcf_CCCfg *CCCfg, s32 CCID, u32 *CCSeqBitmap, XDfeCcf_CarrierCfg *CarrierCfg)
 Returns the current CCID carrier configuration. More...
 
void XDfeCcf_SetAntennaCfgInCCCfg (const XDfeCcf *InstancePtr, XDfeCcf_CCCfg *CCCfg, XDfeCcf_AntennaCfg *AntennaCfg)
 Set antenna configuration in CC configuration container. More...
 
u32 XDfeCcf_AddCCtoCCCfg (XDfeCcf *InstancePtr, XDfeCcf_CCCfg *CCCfg, s32 CCID, u32 CCSeqBitmap, const XDfeCcf_CarrierCfg *CarrierCfg)
 Adds specified CCID, with specified configuration, to a local CC configuration structure. More...
 
void XDfeCcf_RemoveCCfromCCCfg (XDfeCcf *InstancePtr, XDfeCcf_CCCfg *CCCfg, s32 CCID)
 Removes specified CCID from a local CC configuration structure. More...
 
void XDfeCcf_UpdateCCinCCCfg (const XDfeCcf *InstancePtr, XDfeCcf_CCCfg *CCCfg, s32 CCID, const XDfeCcf_CarrierCfg *CarrierCfg)
 Updates specified CCID, with specified configuration to a local CC configuration structure. More...
 
u32 XDfeCcf_SetNextCCCfgAndTrigger (XDfeCcf *InstancePtr, XDfeCcf_CCCfg *CCCfg)
 Writes local CC configuration to the shadow (NEXT) registers and triggers copying from shadow to operational (CURRENT) registers. More...
 
u32 XDfeCcf_SetNextCCCfgAndTriggerSwitchable (XDfeCcf *InstancePtr, XDfeCcf_CCCfg *CCCfgDownlink, XDfeCcf_CCCfg *CCCfgUplink)
 Writes local CC configuration to the shadow (NEXT) registers and triggers copying from shadow to operational (CURRENT) registers for both Downlink and Upling in switchable mode. More...
 
u32 XDfeCcf_AddCC (XDfeCcf *InstancePtr, s32 CCID, u32 CCSeqBitmap, const XDfeCcf_CarrierCfg *CarrierCfg)
 Adds specified CCID, with specified configuration. More...
 
u32 XDfeCcf_RemoveCC (XDfeCcf *InstancePtr, s32 CCID)
 Removes specified CCID. More...
 
u32 XDfeCcf_UpdateCC (XDfeCcf *InstancePtr, s32 CCID, const XDfeCcf_CarrierCfg *CarrierCfg)
 Updates specified CCID carrier configuration; change gain or filter coefficients set. More...
 
u32 XDfeCcf_UpdateAntenna (XDfeCcf *InstancePtr, u32 Ant, bool Enabled)
 Updates specified antenna TDM slot enablement. More...
 
u32 XDfeCcf_UpdateAntennaCfg (XDfeCcf *InstancePtr, XDfeCcf_AntennaCfg *AntennaCfg)
 Updates antenna configuration to all antennas. More...
 
u32 XDfeCcf_UpdateAntennaCfgSwitchable (XDfeCcf *InstancePtr, XDfeCcf_AntennaCfg *AntennaCfgDownlink, XDfeCcf_AntennaCfg *AntennaCfgUplink)
 Updates antenna configuration of all antennas. More...
 
void XDfeCcf_GetTriggersCfg (const XDfeCcf *InstancePtr, XDfeCcf_TriggerCfg *TriggerCfg)
 Returns current trigger configuration. More...
 
void XDfeCcf_SetTriggersCfg (const XDfeCcf *InstancePtr, XDfeCcf_TriggerCfg *TriggerCfg)
 Sets trigger configuration. More...
 
void XDfeCcf_GetCC (const XDfeCcf *InstancePtr, s32 CCID, XDfeCcf_CarrierCfg *CarrierCfg)
 Gets specified CCID carrier configuration. More...
 
void XDfeCcf_GetActiveSets (const XDfeCcf *InstancePtr, u32 *IsActive)
 Returns a list indicating which coefficient sets are currently in use. More...
 
void XDfeCcf_LoadCoefficients (XDfeCcf *InstancePtr, u32 Set, u32 Shift, const XDfeCcf_Coefficients *Coeffs)
 Writes the coefficient set defined into the register map and commit them to the hard block's internal coefficient memory for the specified Set. More...
 
void XDfeCcf_GetOverflowStatus (const XDfeCcf *InstancePtr, XDfeCcf_OverflowStatus *Status)
 Gets overflow event status. More...
 
void XDfeCcf_GetEventStatus (const XDfeCcf *InstancePtr, XDfeCcf_Status *Status)
 Gets event status. More...
 
void XDfeCcf_ClearEventStatus (const XDfeCcf *InstancePtr, const XDfeCcf_Status *Status)
 Clears events status. More...
 
void XDfeCcf_SetInterruptMask (const XDfeCcf *InstancePtr, const XDfeCcf_InterruptMask *Mask)
 Sets interrupt masks. More...
 
void XDfeCcf_GetInterruptMask (const XDfeCcf *InstancePtr, XDfeCcf_InterruptMask *Mask)
 Gets interrupt masks. More...
 
void XDfeCcf_SetTUserDelay (const XDfeCcf *InstancePtr, u32 Delay)
 Sets the delay, which will be added to TUSER and TLAST (delay matched through the IP). More...
 
u32 XDfeCcf_GetTUserDelay (const XDfeCcf *InstancePtr)
 Reads the delay, which will be added to TUSER and TLAST (delay matched through the IP). More...
 
u32 XDfeCcf_GetTDataDelay (XDfeCcf *InstancePtr, u32 Tap, s32 CCID, u32 Symmetric, u32 Num, u32 *TDataDelay)
 Gets calculated TDataDelay value for CCID from current CC configuration. More...
 
u32 XDfeCcf_GetTDataDelayFromCCCfg (XDfeCcf *InstancePtr, u32 Tap, s32 CCID, XDfeCcf_CCCfg *CCCfg, u32 Symmetric, u32 Num, u32 *TDataDelay)
 Gets calculated TDataDelay value for CCID. More...
 
void XDfeCcf_SetRegBank (const XDfeCcf *InstancePtr, u32 RegBank)
 Sets uplink/downlink register bank. More...
 
void XDfeCcf_GetVersions (const XDfeCcf *InstancePtr, XDfeCcf_Version *SwVersion, XDfeCcf_Version *HwVersion)
 This API is used to get the driver version. More...