dfeequ
Vitis Drivers API Documentation
xdfeequ.c File Reference

Overview

Contains the APIs for the DFE Equalizer Filter component.

MODIFICATION HISTORY:
Ver   Who    Date     Changes


1.0 dc 09/03/20 Initial version dc 02/02/21 Remove hard coded device node name dc 02/22/21 align driver to current specification dc 03/15/21 Add data latency api dc 04/06/21 Register with full node name dc 04/07/21 Fix bare metal initialisation dc 04/20/21 Doxygen documentation update dc 05/08/21 Update to common trigger 1.1 dc 05/26/21 Update CFG_SHIFT calculation dc 07/13/21 Update to common latency requirements dc 10/26/21 Make driver R5 compatible 1.2 dc 10/29/21 Update doxygen comments dc 11/09/21 Add GetStateId API dc 11/19/21 Update doxygen documentation dc 12/17/21 Update after documentation review 1.3 dc 01/19/22 Assert Update trigger dc 01/24/22 Auto-compute number of units dc 02/18/22 Write 1 clears event status dc 03/21/22 Add prefix to global variables 1.4 dc 04/06/22 Update documentation 1.5 cog 07/04/23 Add support for SDT 1.6 cog 01/29/24 Yocto SDT support

 

Macros

#define XDFEEQU_TAP_MAX   (24U)
 Maximum tap value. More...
 
#define XDFEEQU_DRIVER_VERSION_MINOR   (6U)
 Driver's minor version number. More...
 
#define XDFEEQU_DRIVER_VERSION_MAJOR   (1U)
 Driver's major version number. More...
 

Functions

XDfeEquXDfeEqu_InstanceInit (const char *DeviceNodeName)
 API initialises one instance of an Equalizer driver. More...
 
void XDfeEqu_InstanceClose (XDfeEqu *InstancePtr)
 API closes the instance of an Equalizer driver and moves the state machine to a Not Ready state. More...
 
void XDfeEqu_Reset (XDfeEqu *InstancePtr)
 Resets Equalizer and puts block into a reset state. More...
 
void XDfeEqu_Configure (XDfeEqu *InstancePtr, XDfeEqu_Cfg *Cfg)
 Reads configuration from device tree/xparameters.h and IP registers. More...
 
void XDfeEqu_Initialize (XDfeEqu *InstancePtr, const XDfeEqu_EqConfig *Config)
 DFE Equalizer driver one time initialisation and moves the state machine to a Initialised state. More...
 
void XDfeEqu_Activate (XDfeEqu *InstancePtr, bool EnableLowPower)
 Activates channel Equalizer moves the state machine to an Activated state. More...
 
void XDfeEqu_Deactivate (XDfeEqu *InstancePtr)
 Deactivates Equalizer and moves the state machine to Initialised state. More...
 
XDfeEqu_StateId XDfeEqu_GetStateID (XDfeEqu *InstancePtr)
 Gets a state machine state id. More...
 
void XDfeEqu_Update (const XDfeEqu *InstancePtr, const XDfeEqu_EqConfig *Config)
 Updates Equalizer mode. More...
 
void XDfeEqu_GetTriggersCfg (const XDfeEqu *InstancePtr, XDfeEqu_TriggerCfg *TriggerCfg)
 Returns current trigger configuration. More...
 
void XDfeEqu_SetTriggersCfg (const XDfeEqu *InstancePtr, XDfeEqu_TriggerCfg *TriggerCfg)
 Sets trigger configuration. More...
 
void XDfeEqu_LoadCoefficients (const XDfeEqu *InstancePtr, u32 ChannelField, u32 Mode, u32 Shift, const XDfeEqu_Coefficients *EqCoeffs)
 Sets Equalizer filter coefficients in Real, Complex or Matrix mode. More...
 
void XDfeEqu_GetActiveSets (const XDfeEqu *InstancePtr, u32 *RealSet, u32 *ImagSet)
 Gets used coefficients settings. More...
 
void XDfeEqu_SetTUserDelay (const XDfeEqu *InstancePtr, u32 Delay)
 Sets the delay, which will be added to TUSER and TLAST (delay matched through the IP). More...
 
u32 XDfeEqu_GetTUserDelay (const XDfeEqu *InstancePtr)
 Reads the delay, which will be added to TUSER and TLAST (delay matched through the IP). More...
 
u32 XDfeEqu_GetTDataDelay (const XDfeEqu *InstancePtr, u32 Tap)
 Returns data latency + tap, where the tap is between 0 and 23 in real mode and between 0 and 11 in complex mode. More...
 
void XDfeEqu_GetVersions (const XDfeEqu *InstancePtr, XDfeEqu_Version *SwVersion, XDfeEqu_Version *HwVersion)
 This API gets the driver and HW design version. More...