cresample
Xilinx SDK Drivers API Documentation
xcresample.h File Reference

Data Structures

struct  XCresample_Config
 This typedef contains configuration information for a Video device. More...
 
struct  XCresample
 The XCresample driver instance data structure. More...
 
struct  XHorizontal_Coeffs
 The XCoeffs is a structure contains predefined fixed coefficient values for Horizontal filter of two phases (phase 0 and phase 1). More...
 
struct  XVertical_Coeffs
 The XCoeffs is a structure contains predefined fixed coefficient values for Vertical filter of two phases (phase 0 and phase 1). More...
 

Macros

#define XCRESAMPLE_H_
 Prevent circular inclusions by using protection macros. More...
 
#define XCresample_Enable(InstancePtr)
 This macro enables the Chroma Resampler core. More...
 
#define XCresample_Disable(InstancePtr)
 This macro disables the Chroma Resampler core. More...
 
#define XCresample_Start   XCresample_Enable
 This macro enables/starts the Chroma Resampler core. More...
 
#define XCresample_Stop   XCresample_Disable
 This macro disables/stops the Chroma Resampler core. More...
 
#define XCresample_RegUpdateEnable(InstancePtr)
 This macro commits all the register value changes made so far by the software to the Chroma Resampler core. More...
 
#define XCresample_RegUpdateDisable(InstancePtr)
 This macro prevents the Chroma Resampler core from committing recent changes made so far by the software. More...
 
#define XCresample_SyncReset(InstancePtr)
 This macro resets a Chroma Resampler core instance, but differs from XCresample_Reset() in that it automatically synchronizes to the SOF input of the core to prevent tearing. More...
 
#define XCresample_Reset(InstancePtr)
 This macro resets the Chroma Resampler core. More...
 
#define XCresample_IntrEnable(InstancePtr, IntrType)
 This macro enables individual interrupts of the Cresample core by updating the IRQ_ENABLE register. More...
 
#define XCresample_IntrDisable(InstancePtr, IntrType)
 This macro disables individual interrupts of the Cresample core by updating the IRQ_ENABLE register. More...
 
#define XCresample_StatusGetPending(InstancePtr)
 This macro returns the pending interrupt status of the Cresample core read from the Status register. More...
 
#define XCresample_IntrGetPending(InstancePtr)
 This macro returns the pending interrupts of the Cresample core for the interrupts that have been enabled. More...
 
#define XCresample_IntrClear(InstancePtr, IntrType)
 This macro clears/acknowledges pending interrupts of the Cresample core in the Status register. More...
 
Active size ranges
#define XCRE_ACT_SIZE_FIRST   32
 Active Size starting value. More...
 
#define XCRE_ACT_SIZE_LAST   7680
 Active Size ending value. More...
 
Parity valid values
#define XCRE_PARITY_ODD   1
 For odd (or top) field it is 1. More...
 
#define XCRE_PARITY_EVEN   0
 For even (or bottom) field it is 0. More...
 
Coefficient ranges
#define XCRE_COEF_FIRST   -2.0
 Coefficient start value. More...
 
#define XCRE_COEF_LAST   2.0
 Coefficient end value. More...
 
#define XCRE_OFFSET_DIFF   4
 Coefficient offset difference. More...
 
Number of phases
#define XCRE_NUM_OF_PHASES   2
 Number of phases. More...
 
Number of coefficients
#define XCRE_NUM_HCOEFS   24
 Number of horizontal coefficients. More...
 
#define XCRE_NUM_VCOEFS   8
 Number of vertical coefficients. More...
 

Typedefs

typedef void(* XCresample_CallBack) (void *CallBackRef)
 Callback type for all interrupts except error interrupt. More...
 
typedef void(* XCresample_ErrorCallBack) (void *CallBackRef, u32 ErrorMask)
 Callback type for Error interrupt. More...
 

Enumerations

Interrupt types for setting up callbacks
enum  { XCRE_HANDLER_PROCSTART = 1, XCRE_HANDLER_FRAMEDONE, XCRE_HANDLER_ERROR }
 These constants specify different types of handler and used to differentiate interrupt requests from core. More...
 

Functions

int XCresample_CfgInitialize (XCresample *InstancePtr, XCresample_Config *CfgPtr, u32 EffectiveAddr)
 This function initializes the Cresample core. More...
 
u32 XCresample_GetVersion (XCresample *InstancePtr)
 This function returns the version of the Chroma Resampler core. More...
 
void XCresample_EnableDbgByPass (XCresample *InstancePtr)
 This function enables the bypass mode by setting bypass bit of the Control register to switch the core to bypass mode if debug feature is enabled in the core. More...
 
int XCresample_IsDbgByPassEnabled (XCresample *InstancePtr)
 This function returns the current bypass mode settings from Control register of the Chroma Resampler core. More...
 
void XCresample_DisableDbgBypass (XCresample *InstancePtr)
 This function disables bypass mode of the Chroma Resampler core. More...
 
void XCresample_EnableDbgTestPattern (XCresample *InstancePtr)
 This function enables the test-pattern mode if debug feature is enabled by setting test-pattern bit of the Control register of the Chroma Resampler core. More...
 
int XCresample_IsDbgTestPatternEnabled (XCresample *InstancePtr)
 This function returns the test-pattern mode (enabled or not) from Control register of the Chroma Resampler core. More...
 
void XCresample_DisableDbgTestPattern (XCresample *InstancePtr)
 This function disables debug test pattern mode in Control register of the Chroma Resampler core, if Debug feature is enabled. More...
 
u32 XCresample_GetDbgFrameCount (XCresample *InstancePtr)
 This function returns the number of frames processed since power-up or last time the core is reset. More...
 
u32 XCresample_GetDbgLineCount (XCresample *InstancePtr)
 This function returns the number of lines processed since power-up or last time the core is reset. More...
 
u32 XCresample_GetDbgPixelCount (XCresample *InstancePtr)
 This function returns the number of pixels processed since power-up or last time the core is reset. More...
 
void XCresample_SetActiveSize (XCresample *InstancePtr, u16 HSize, u16 VSize)
 This function sets the active H/V sizes in the Active Size register. More...
 
void XCresample_GetActiveSize (XCresample *InstancePtr, u16 *HSize, u16 *VSize)
 This function gets the number of Active Pixels per Scan line and number of Active Lines per Frame from the Active Size register. More...
 
void XCresample_SetFieldParity (XCresample *InstancePtr, u8 FieldParity)
 This functions sets the field parity value of the Chroma Resampler core in the Encoding register. More...
 
void XCresample_SetChromaParity (XCresample *InstancePtr, u8 ChromaParity)
 This functions sets the Chroma parity value of the Chroma Resampler core in the Encoding register. More...
 
u8 XCresample_GetFieldParity (XCresample *InstancePtr)
 This function returns the field parity value of the Chroma Resampler core from Encoding register. More...
 
u8 XCresample_GetChromaParity (XCresample *InstancePtr)
 This function returns the value of chroma parity of the Chroma Resampler core from Encoding register. More...
 
void XCresample_SetHCoefs (XCresample *InstancePtr, XHorizontal_Coeffs *Coeff, u32 Phases)
 This function sets the horizontal coefficient values of the Chroma Resampler core for phase 0 or phase 1 or both phases. More...
 
void XCresample_SetVCoefs (XCresample *InstancePtr, XVertical_Coeffs *Coeff, u32 Phases)
 This function sets the vertical coefficient values of the Chroma Resampler for phase 0 or for phase 1 or for both phases. More...
 
void XCresample_GetHCoefs (XCresample *InstancePtr, XHorizontal_Coeffs *Coeff)
 This function gets the coefficient values from all the Horizontal Coefficient registers of phase0 and phase1 of the Chroma Resampler core. More...
 
void XCresample_GetVCoefs (XCresample *InstancePtr, XVertical_Coeffs *Coeff)
 This function gets the vertical coefficient values of the Chroma Resampler core from all Vertical Coefficient registers of phase0 and phase1. More...
 
XCresample_ConfigXCresample_LookupConfig (u16 DeviceId)
 This function returns a reference to an XCresample_Config structure based on the unique device id, DeviceId. More...
 
int XCresample_SelfTest (XCresample *InstancePtr)
 This function reads version register of Chroma Resampler core and compares with zero as part of self test. More...
 
int XCresample_SetCallBack (XCresample *InstancePtr, u32 HandlerType, void *CallBackFunc, void *CallBackRef)
 This routine installs an asynchronous callback function for the given HandlerType: More...
 
void XCresample_IntrHandler (void *InstancePtr)
 This function is the interrupt handler for the Chroma Resampler driver. More...
 
void XCresample_Clear_HCoef_Values (XCresample *InstancePtr)
 This function clears all horizontal coefficients of the Chroma Resampler core which are previously set. More...
 
void XCresample_Clear_VCoef_Values (XCresample *InstancePtr)
 This function clears all vertical coefficients of a the Chroma Resampler which are previously set. More...