| dfeofdm Vitis Drivers API Documentation

- Overview
- Data Structures
- APIs
- File List
- Examples

Macros | Functions
xdfeofdm.c File Reference

## Overview

Contains the APIs for DFE Orthogonal Frequency Division Multiplexing component.

    MODIFICATION HISTORY:

    Ver   Who    Date     Changes

    1.0   dc     11/21/22 Initial version
    1.1   dc     05/22/23 State and status upgrades
          dc     06/20/23 Deprecate obsolete APIs
          dc     06/28/23 Add phase compensation calculation
          cog    07/04/23 Add support for SDT
          dc     07/27/23 Output delay in ccid slots
          dc     07/31/23 Antenna interleave delay reorder
          dc     08/28/23 Remove immediate trigger
    1.2   dc     10/16/23 Doxygen documenatation update
          dc     10/17/23 Support for FFT size 512
          dc     02/29/24 Correct sw major/minor version numbers
          dc     03/22/24 Update hw version
    1.3   dc     06/18/24 Add FR1 and FR2 frequency range
          dc     09/23/24 Add frequency range MODEL_PARAM

## Macros
#define | XDFEOFDM_DRIVER_VERSION_MINOR (3U)
| Minor version number of driver. More...
#define | XDFEOFDM_DRIVER_VERSION_MAJOR (1U)
| Major version number of driver. More...
#define | XDFEOFDM_PHASE_COMPENSATION_REG_STEP 8U
| Address space step between space for phase compensation on one carrier. More...
#define | XDFEOFDM_FREQUENCY_RANGE_1 0U
| [15, 30, 60] kHz (default) More...
#define | XDFEOFDM_FREQUENCY_RANGE_2 1U
| [60, 120, 240, 480, 960] kHz More...

## Functions
XDfeOfdm * | XDfeOfdm_InstanceInit (const char *DeviceNodeName)
| Initializes one instance of the OFDM driver and traverses the "/sys/bus/platform/device" directory (in Linux) to find the registered OFDM device with the name DeviceNodeName. More...
void | XDfeOfdm_InstanceClose (XDfeOfdm *InstancePtr)
| Closes the instances of the OFDM driver and moves the state machine to a Not Ready state. More...
void | XDfeOfdm_Reset (XDfeOfdm *InstancePtr)
| Resets the OFDM instance and puts block into a reset state. More...
void | XDfeOfdm_Configure (XDfeOfdm *InstancePtr, XDfeOfdm_Cfg *Cfg)
| Reads configuration from device tree/xparameters.h and IP registers. More...
void | XDfeOfdm_Initialize (XDfeOfdm *InstancePtr, XDfeOfdm_Init *Init)
| Initializes the OFDM driver and moves the state machine to an initialized state. More...
void | XDfeOfdm_Activate (XDfeOfdm *InstancePtr, bool EnableLowPower)
| Activates OFDM and moves the state machine to an activated state. More...
void | XDfeOfdm_Deactivate (XDfeOfdm *InstancePtr)
| Deactivates OFDM and moves the state machine to an initialised state. More...
XDfeOfdm_StateId | XDfeOfdm_GetStateID (XDfeOfdm *InstancePtr)
| Gets a state machine state ID. More...
void | XDfeOfdm_GetCurrentCCCfg (const XDfeOfdm *InstancePtr, XDfeOfdm_CCCfg *CurrCCCfg)
| Returns the current CC configuration. More...
void | XDfeOfdm_GetEmptyCCCfg (const XDfeOfdm *InstancePtr, XDfeOfdm_CCCfg *CCCfg)
| Returns configuration structure CCCfg with CCCfg->CCSequence.Length value set in XDfeOfdm_Configure(), array CCCfg->CCSequence.CCID[] members are set to not used value (-1) and the other CCCfg members are set to 0. More...
u32 | XDfeOfdm_AddCCtoCCCfg (XDfeOfdm *InstancePtr, XDfeOfdm_CCCfg *CCCfg, s32 CCID, u32 CCSeqBitmap, const XDfeOfdm_CarrierCfg *CarrierCfg, XDfeOfdm_FTSequence *FTSeq)
| Adds specified CCID, with specified configuration, to a local CC configuration structure. More...
void | XDfeOfdm_GetCarrierCfg (const XDfeOfdm *InstancePtr, XDfeOfdm_CCCfg *CCCfg, s32 CCID, u32 *CCSeqBitmap, XDfeOfdm_CarrierCfg *CarrierCfg)
| Returns the current CCID carrier configuration. More...
u32 | XDfeOfdm_RemoveCCfromCCCfg (XDfeOfdm *InstancePtr, XDfeOfdm_CCCfg *CCCfg, s32 CCID, XDfeOfdm_FTSequence *FTSeq)
| Removes specified CCID from a local CC configuration structure. More...
u32 | XDfeOfdm_UpdateCCinCCCfg (XDfeOfdm *InstancePtr, XDfeOfdm_CCCfg *CCCfg, s32 CCID, const XDfeOfdm_CarrierCfg *CarrierCfg, XDfeOfdm_FTSequence *FTSeq)
| Updates a specified CCID with the specified configuration to a local CC configuration structure. More...
void | XDfeOfdm_SetNextCCCfg (const XDfeOfdm *InstancePtr, const XDfeOfdm_CCCfg *NextCCCfg)
| Sets the next CC configuration. More...
u32 | XDfeOfdm_EnableCCUpdateTrigger (const XDfeOfdm *InstancePtr)
| Reads the triggers and sets the enable bit of Update trigger. More...
u32 | XDfeOfdm_SetNextCCCfgAndTrigger (const XDfeOfdm *InstancePtr, XDfeOfdm_CCCfg *CCCfg)
| Writes local CC configuration to the shadow (NEXT) registers and triggers copying from shadow to operational registers. More...
void | XDfeOfdm_GetTriggersCfg (const XDfeOfdm *InstancePtr, XDfeOfdm_TriggerCfg *TriggerCfg)
| Returns the current trigger configuration. More...
void | XDfeOfdm_SetTriggersCfg (const XDfeOfdm *InstancePtr, XDfeOfdm_TriggerCfg *TriggerCfg)
| Sets the trigger configuration. More...
void | XDfeOfdm_SetTuserOutFrameLocation (const XDfeOfdm *InstancePtr, u32 TuserOutFrameLocation)
| Sets the TUSER Framing bit location register where bit location indicates which bit to be used for sending the framing information on DL_DOUT IF and M_AXIS_TBASE IF. More...
u32 | XDfeOfdm_GetTuserOutFrameLocation (const XDfeOfdm *InstancePtr)
| Gets the TUSER Framing bit location register where bit location indicates which bit to be used for sending framing information on DL_DOUT IF and M_AXIS_TBASE IF. More...
void | XDfeOfdm_SetTuserCCUpdateTrigger (const XDfeOfdm *InstancePtr, u32 TuserCCUpdateTrigger)
| Sets the TUSER CC Update trigger where bit location would indicate which bit to be used for sending cc update triggering on TUSER (DL_DOUT IF and M_AXIS_TBASE IF). More...
u32 | XDfeOfdm_GetTuserCCUpdateTrigger (const XDfeOfdm *InstancePtr)
| Gets the TUSER CC Update trigger. More...
void | XDfeOfdm_SetTUserDelay (const XDfeOfdm *InstancePtr, u32 Delay)
| Sets the delay to be added to TUSER and TLAST (delay matched through the IP). More...
u32 | XDfeOfdm_GetTUserDelay (const XDfeOfdm *InstancePtr)
| Reads the delay, which will be added to TUSER and TLAST (delay matched through the IP). More...
u32 | XDfeOfdm_GetDataLatency (const XDfeOfdm *InstancePtr)
| Returns data latency. More...
void | XDfeOfdm_GetVersions (const XDfeOfdm *InstancePtr, XDfeOfdm_Version *SwVersion, XDfeOfdm_Version *HwVersion)
| Gets the driver version. More...