rfdc: xrfdc.h File Reference

| rfdc Xilinx SDK Drivers API Documentation

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

Data Structures | Typedefs | Functions
xrfdc.h File Reference

## Data Structures
struct | XRFdc_PLL_Settings
| PLL settings. More...
struct | XRFdc_Tile_Clock_Settings
| ClkIntraTile Settings. More...
struct | XRFdc_Distribution
| Clk Distribution. More...
struct | XRFdc_Distribution_Settings
| Clk Distribution Settings. More...
struct | XRFdc_Signal_Detector_Settings
| ADC Signal Detect Settings. More...
struct | XRFdc_QMC_Settings
| QMC settings. More...
struct | XRFdc_CoarseDelay_Settings
| Coarse delay settings. More...
struct | XRFdc_Mixer_Settings
| Mixer settings. More...
struct | XRFdc_Threshold_Settings
| ADC block Threshold settings. More...
struct | XRFdc_Calibration_Coefficients
| RFSoC Calibration coefficients generic struct. More...
struct | XRFdc_DSA_Settings
| RFSoC DSA settings. More...
struct | XRFdc_Cal_Freeze_Settings
| RFSoC Calibration freeze settings struct. More...
struct | XRFdc_TileStatus
| RFSoC Tile status. More...
struct | XRFdc_IPStatus
| RFSoC Data converter IP status. More...
struct | XRFdc_BlockStatus
| status of DAC or ADC blocks in the RFSoC Data converter. More...
struct | XRFdc_DACBlock_AnalogDataPath_Config
| DAC block Analog DataPath Config settings. More...
struct | XRFdc_DACBlock_DigitalDataPath_Config
| DAC block Digital DataPath Config settings. More...
struct | XRFdc_ADCBlock_AnalogDataPath_Config
| ADC block Analog DataPath Config settings. More...
struct | XRFdc_ADCBlock_DigitalDataPath_Config
| DAC block Digital DataPath Config settings. More...
struct | XRFdc_DACTile_Config
| DAC Tile Config structure. More...
struct | XRFdc_ADCTile_Config
| ADC Tile Config Structure. More...
struct | XRFdc_Config
| RFdc Config Structure. More...
struct | XRFdc_DACBlock_AnalogDataPath
| DAC Block Analog DataPath Structure. More...
struct | XRFdc_DACBlock_DigitalDataPath
| DAC Block Digital DataPath Structure. More...
struct | XRFdc_ADCBlock_AnalogDataPath
| ADC Block Analog DataPath Structure. More...
struct | XRFdc_ADCBlock_DigitalDataPath
| ADC Block Digital DataPath Structure. More...
struct | XRFdc_DAC_Tile
| DAC Tile Structure. More...
struct | XRFdc_ADC_Tile
| ADC Tile Structure. More...
struct | XRFdc
| RFdc Structure. More...

## Typedefs
typedef void(* | XRFdc_StatusHandler )(void *CallBackRef, u32 Type, u32 Tile_Id, u32 Block_Id, u32 StatusEvent)
| The handler data type allows the user to define a callback function to respond to interrupt events in the system. More...

## Functions
XRFdc_Config * | XRFdc_LookupConfig (u16 DeviceId)
| Looks up the device configuration based on the unique device ID. More...
u32 | XRFdc_RegisterMetal (XRFdc *InstancePtr, u16 DeviceId, struct metal_device **DevicePtr)
| Register/open the deviceand map RFDC to the IO region. More...
u32 | XRFdc_CfgInitialize (XRFdc *InstancePtr, XRFdc_Config *ConfigPtr)
| Initializes a specific XRFdc instance such that the driver is ready to use. More...
u32 | XRFdc_StartUp (XRFdc *InstancePtr, u32 Type, int Tile_Id)
| The API Restarts the requested tile. More...
u32 | XRFdc_Shutdown (XRFdc *InstancePtr, u32 Type, int Tile_Id)
| The API stops the tile as requested. More...
u32 | XRFdc_Reset (XRFdc *InstancePtr, u32 Type, int Tile_Id)
| The API resets the requested tile. More...
u32 | XRFdc_GetIPStatus (XRFdc *InstancePtr, XRFdc_IPStatus *IPStatusPtr)
| The API returns the IP status. More...
u32 | XRFdc_GetBlockStatus (XRFdc *InstancePtr, u32 Type, u32 Tile_Id, u32 Block_Id, XRFdc_BlockStatus *BlockStatusPtr)
| The API returns the requested block status. More...
u32 | XRFdc_SetMixerSettings (XRFdc *InstancePtr, u32 Type, u32 Tile_Id, u32 Block_Id, XRFdc_Mixer_Settings *MixerSettingsPtr)
| The API is used to update various mixer settings, fine, coarse, NCO etc. More...
u32 | XRFdc_GetMixerSettings (XRFdc *InstancePtr, u32 Type, u32 Tile_Id, u32 Block_Id, XRFdc_Mixer_Settings *MixerSettingsPtr)
| The API returns back Mixer/NCO settings to the caller. More...
u32 | XRFdc_SetQMCSettings (XRFdc *InstancePtr, u32 Type, u32 Tile_Id, u32 Block_Id, XRFdc_QMC_Settings *QMCSettingsPtr)
| This API is used to update various QMC settings, eg gain, phase, offset etc. More...
u32 | XRFdc_GetQMCSettings (XRFdc *InstancePtr, u32 Type, u32 Tile_Id, u32 Block_Id, XRFdc_QMC_Settings *QMCSettingsPtr)
| QMC settings are returned back to the caller through this API. More...
u32 | XRFdc_GetCoarseDelaySettings (XRFdc *InstancePtr, u32 Type, u32 Tile_Id, u32 Block_Id, XRFdc_CoarseDelay_Settings *CoarseDelaySettingsPtr)
| Coarse delay settings are returned back to the caller. More...
u32 | XRFdc_SetCoarseDelaySettings (XRFdc *InstancePtr, u32 Type, u32 Tile_Id, u32 Block_Id, XRFdc_CoarseDelay_Settings *CoarseDelaySettingsPtr)
| Coarse delay settings passed are used to update the corresponding block level registers. More...
u32 | XRFdc_GetInterpolationFactor (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 *InterpolationFactorPtr)
| Interpolation factor are returned back to the caller. More...
u32 | XRFdc_GetDecimationFactor (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 *DecimationFactorPtr)
| Decimation factor are returned back to the caller. More...
u32 | XRFdc_GetFabWrVldWords (XRFdc *InstancePtr, u32 Type, u32 Tile_Id, u32 Block_Id, u32 *FabricDataRatePtr)
| This API returns the the number of fabric write valid words requested for the block. More...
u32 | XRFdc_GetFabRdVldWords (XRFdc *InstancePtr, u32 Type, u32 Tile_Id, u32 Block_Id, u32 *FabricDataRatePtr)
| This API returns the the number of fabric read valid words requested for the block. More...
u32 | XRFdc_SetFabRdVldWords (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 FabricRdVldWords)
| Fabric data rate for the requested ADC block is set by writing to the corresponding register. More...
u32 | XRFdc_SetFabWrVldWords (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 FabricWrVldWords)
| Fabric data rate for the requested DAC block is set by writing to the corresponding register. More...
u32 | XRFdc_GetThresholdSettings (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, XRFdc_Threshold_Settings *ThresholdSettingsPtr)
| Threshold settings are read from the corresponding registers and are passed back to the caller. More...
u32 | XRFdc_SetThresholdSettings (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, XRFdc_Threshold_Settings *ThresholdSettingsPtr)
| Threshold settings are updated into the relevant registers. More...
u32 | XRFdc_SetDecoderMode (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 DecoderMode)
| Decoder mode is updated into the relevant registers. More...
u32 | XRFdc_UpdateEvent (XRFdc *InstancePtr, u32 Type, u32 Tile_Id, u32 Block_Id, u32 Event)
| This function will trigger the update event for an event. More...
u32 | XRFdc_GetDecoderMode (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 *DecoderModePtr)
| Decoder mode is read and returned back. More...
u32 | XRFdc_ResetNCOPhase (XRFdc *InstancePtr, u32 Type, u32 Tile_Id, u32 Block_Id)
| Resets the NCO phase of the current block phase accumulator. More...
void | XRFdc_DumpRegs (XRFdc *InstancePtr, u32 Type, int Tile_Id)
| This Prints the offset of the register along with the content. More...
u32 | XRFdc_MultiBand (XRFdc *InstancePtr, u32 Type, u32 Tile_Id, u8 DigitalDataPathMask, u32 MixerInOutDataType, u32 DataConverterMask)
| User-level API to setup multiband configuration. More...
u32 | XRFdc_IntrHandler (u32 Vector, void *XRFdcPtr)
| This function is the interrupt handler for the driver. More...
u32 | XRFdc_IntrClr (XRFdc *InstancePtr, u32 Type, u32 Tile_Id, u32 Block_Id, u32 IntrMask)
| This function clear the interrupts. More...
u32 | XRFdc_GetIntrStatus (XRFdc *InstancePtr, u32 Type, u32 Tile_Id, u32 Block_Id, u32 *IntrStsPtr)
| This function returns the interrupt status read from Interrupt Status Register(ISR). More...
u32 | XRFdc_IntrDisable (XRFdc *InstancePtr, u32 Type, u32 Tile_Id, u32 Block_Id, u32 IntrMask)
| This function clears the interrupt mask. More...
u32 | XRFdc_IntrEnable (XRFdc *InstancePtr, u32 Type, u32 Tile_Id, u32 Block_Id, u32 IntrMask)
| This function sets the interrupt mask. More...
u32 | XRFdc_GetEnabledInterrupts (XRFdc *InstancePtr, u32 Type, u32 Tile_Id, u32 Block_Id, u32 *IntrMask)
| This function gets a mask of enabled interrupts. More...
u32 | XRFdc_SetThresholdClrMode (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 ThresholdToUpdate, u32 ClrMode)
| This API sets the threshold clear mode. More...
u32 | XRFdc_ThresholdStickyClear (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 ThresholdToUpdate)
| This API is to clear the Sticky bit in threshold config registers. More...
void | XRFdc_SetStatusHandler (XRFdc *InstancePtr, void *CallBackRef, XRFdc_StatusHandler FunctionPtr)
| This function sets the status callback function, the status handler, which the driver calls when it encounters conditions that should be reported to the higher layer software. More...
u32 | XRFdc_SetupFIFO (XRFdc *InstancePtr, u32 Type, int Tile_Id, u8 Enable)
| Enable and Disable the ADC/DAC FIFO. More...
u32 | XRFdc_GetFIFOStatus (XRFdc *InstancePtr, u32 Type, u32 Tile_Id, u8 *EnablePtr)
| Current status of ADC/DAC FIFO. More...
u32 | XRFdc_SetNyquistZone (XRFdc *InstancePtr, u32 Type, u32 Tile_Id, u32 Block_Id, u32 NyquistZone)
| Set the Nyquist zone. More...
u32 | XRFdc_GetNyquistZone (XRFdc *InstancePtr, u32 Type, u32 Tile_Id, u32 Block_Id, u32 *NyquistZonePtr)
| Get the Nyquist zone. More...
u32 | XRFdc_GetOutputCurr (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 *OutputCurrPtr)
| Get Output Current for DAC block. More...
u32 | XRFdc_SetDecimationFactor (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 DecimationFactor)
| This API is to set the decimation factor and also update the FIFO write words w.r.t to decimation factor. More...
u32 | XRFdc_SetInterpolationFactor (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 InterpolationFactor)
| This API is to set the interpolation factor and also update the FIFO read words w.r.t to interpolation factor. More...
u32 | XRFdc_SetFabClkOutDiv (XRFdc *InstancePtr, u32 Type, u32 Tile_Id, u16 FabClkDiv)
| This API is to set the divider for clock fabric out. More...
u32 | XRFdc_SetCalibrationMode (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u8 CalibrationMode)
| This API is to set the Calibration mode. More...
u32 | XRFdc_GetCalibrationMode (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u8 *CalibrationModePtr)
| This API is to get the Calibration mode. More...
u32 | XRFdc_GetClockSource (XRFdc *InstancePtr, u32 Type, u32 Tile_Id, u32 *ClockSourcePtr)
| This function gets Clock source. More...
u32 | XRFdc_GetPLLLockStatus (XRFdc *InstancePtr, u32 Type, u32 Tile_Id, u32 *LockStatusPtr)
| This function gets PLL lock status. More...
u32 | XRFdc_GetPLLConfig (XRFdc *InstancePtr, u32 Type, u32 Tile_Id, XRFdc_PLL_Settings *PLLSettings)
| This API is used to get the PLL Configurations. More...
u32 | XRFdc_DynamicPLLConfig (XRFdc *InstancePtr, u32 Type, u32 Tile_Id, u8 Source, double RefClkFreq, double SamplingRate)
| This function used for dynamically switch between internal PLL and external clcok source and configuring the internal PLL. More...
u32 | XRFdc_SetInvSincFIR (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u16 Mode)
| This API is used to set the mode for the Inverse-Sinc filter. More...
u32 | XRFdc_GetInvSincFIR (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u16 *ModePtr)
| This API is used to get the Inverse-Sinc filter mode. More...
u32 | XRFdc_GetLinkCoupling (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 *ModePtr)
| This function is used to get the Link Coupling mode. More...
u32 | XRFdc_GetFabClkOutDiv (XRFdc *InstancePtr, u32 Type, u32 Tile_Id, u16 *FabClkDivPtr)
| This API is to get the divider for clock fabric out. More...
u32 | XRFdc_SetDither (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 Mode)
| This function is used to set the IM3 Dither mode. More...
u32 | XRFdc_GetDither (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 *ModePtr)
| This function is used to get the IM3 Dither mode. More...
u32 | XRFdc_SetClkDistribution (XRFdc *InstancePtr, XRFdc_Distribution_Settings *DistributionSettingsPtr)
| This function is used to set the clock distribution. More...
u32 | XRFdc_GetClkDistribution (XRFdc *InstancePtr, XRFdc_Distribution_Settings *DistributionSettingsPtr)
| This function is used to get the clock distribution. More...
u32 | XRFdc_SetDataPathMode (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 Mode)
| This API is to set the DAC Datapath mode. More...
u32 | XRFdc_GetDataPathMode (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 *ModePtr)
| This API is to get the DAC Datapath mode. More...
u32 | XRFdc_SetIMRPassMode (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 Mode)
| This API is to set the DAC Image Reject Filter Pass mode. More...
u32 | XRFdc_GetIMRPassMode (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 *ModePtr)
| This API is to get the DAC Image Reject Filter Pass mode. More...
u32 | XRFdc_SetSignalDetector (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, XRFdc_Signal_Detector_Settings *SettingsPtr)
| This function is used to set the ADC Signal Detector Settings. More...
u32 | XRFdc_GetSignalDetector (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, XRFdc_Signal_Detector_Settings *SettingsPtr)
| This function is used to get the ADC Signal Detector Settings. More...
u32 | XRFdc_DisableCoefficientsOverride (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 CalibrationBlock)
| This function is used to disable Calibration Coefficients override. More...
u32 | XRFdc_SetCalCoefficients (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 CalibrationBlock, XRFdc_Calibration_Coefficients *CoeffPtr)
| This function is used to set the ADC Calibration Coefficients. More...
u32 | XRFdc_GetCalCoefficients (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 CalibrationBlock, XRFdc_Calibration_Coefficients *CoeffPtr)
| This function is used to get the ADC Calibration Coefficients. More...
u32 | XRFdc_SetCalFreeze (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, XRFdc_Cal_Freeze_Settings *CalFreezePtr)
| This function is used to set calibration freeze settings. More...
u32 | XRFdc_GetCalFreeze (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, XRFdc_Cal_Freeze_Settings *CalFreezePtr)
| This function is used to get calibration freeze settings and status. More...
u32 | XRFdc_SetDACVOP (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 uACurrent)
| Set Output Current for DAC block. More...
u32 | XRFdc_SetDACCompMode (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 Enable)
| Sets VOP compatibility mode. More...
u32 | XRFdc_GetDACCompMode (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 *EnabledPtr)
| Gets VOP compatibility mode. More...
u32 | XRFdc_SetDSA (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, XRFdc_DSA_Settings *SettingsPtr)
| Set DSA for ADC block. More...
u32 | XRFdc_GetDSA (XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, XRFdc_DSA_Settings *SettingsPtr)
| Get DSA for ADC block. More...
s32 | XRFdc_GetDeviceNameByDeviceId (char *DevNamePtr, u16 DevId)
| Traverse "/sys/bus/platform/device" directory, to find RFDC device entry, corresponding to provided device id. More...