v_frmbuf_rd
Vitis Drivers API Documentation
xv_frmbufrd_l2.h File Reference

Data Structures

struct  XV_FrmbufRd_l2
 Frame Buffer Read driver Layer 2 data. More...
 

Macros

#define XVFrmbufRd_IsRGBX8Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.RGBX8En)
 This macro returns if Video Format RGBX8 is available. More...
 
#define XVFrmbufRd_IsYUVX8Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.YUVX8En)
 This macro returns if Video Format YUVX8 is available. More...
 
#define XVFrmbufRd_IsY_U_V8Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.Y_U_V8En)
 This macro returns if Video Format Y_U_V8 is available. More...
 
#define XVFrmbufRd_IsY_U_V10Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.Y_U_V10En)
 This macro returns if Video Format Y_U_V10 is available. More...
 
#define XVFrmbufRd_IsY_U_V8_420Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.Y_U_V8_420En)
 This macro returns if Video Format Y_U_V8_420 is available. More...
 
#define XVFrmbufRd_IsYUYV8Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.YUYV8En)
 This macro returns if Video Format YUYV8 is available. More...
 
#define XVFrmbufRd_IsRGBA8Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.RGBA8En)
 This macro returns if Video Format RGBA8 is available. More...
 
#define XVFrmbufRd_IsYUVA8Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.YUVA8En)
 This macro returns if Video Format YUVA8 is available. More...
 
#define XVFrmbufRd_IsRGBX10Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.RGBX10En)
 This macro returns if Video Format RGBX10 is available. More...
 
#define XVFrmbufRd_IsYUVX10Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.YUVX10En)
 This macro returns if Video Format YUVX10 is available. More...
 
#define XVFrmbufRd_IsY_UV8Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.Y_UV8En)
 This macro returns if Video Format Y_UV8 is available. More...
 
#define XVFrmbufRd_IsY_UV8_420Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.Y_UV8_420En)
 This macro returns if Video Format Y_UV8_420 is available. More...
 
#define XVFrmbufRd_IsRGB8Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.RGB8En)
 This macro returns if Video Format RGB8 is available. More...
 
#define XVFrmbufRd_IsYUV8Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.YUV8En)
 This macro returns if Video Format YUV8 is available. More...
 
#define XVFrmbufRd_IsY_UV10Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.Y_UV10En)
 This macro returns if Video Format Y_UV10 is available. More...
 
#define XVFrmbufRd_IsY_UV10_420Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.Y_UV10_420En)
 This macro returns if Video Format Y_UV10_420 is available. More...
 
#define XVFrmbufRd_IsY8Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.Y8En)
 This macro returns if Video Format Y8 is available. More...
 
#define XVFrmbufRd_IsY10Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.Y10En)
 This macro returns if Video Format Y10 is available. More...
 
#define XVFrmbufRd_IsBGRA8Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.BGRA8En)
 This macro returns if Video Format BGRA8 is available. More...
 
#define XVFrmbufRd_IsBGRX8Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.BGRX8En)
 This macro returns if Video Format BGRX8 is available. More...
 
#define XVFrmbufRd_IsUYVY8Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.UYVY8En)
 This macro returns if Video Format UYVY8 is available. More...
 
#define XVFrmbufRd_IsBGR8Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.BGR8En)
 This macro returns if Video Format BGR8 is available. More...
 
#define XVFrmbufRd_IsRGBX12Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.RGBX12En)
 This macro returns if Video Format RGBX12 is available. More...
 
#define XVFrmbufRd_IsRGB16Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.RGB16En)
 This macro returns if Video Format RGB16 is available. More...
 
#define XVFrmbufRd_IsYUVX12Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.YUVX12En)
 This macro returns if Video Format YUVX12 is available. More...
 
#define XVFrmbufRd_IsYUV16Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.YUV16En)
 This macro returns if Video Format YUV16 is available. More...
 
#define XVFrmbufRd_IsY_UV12Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.Y_UV12En)
 This macro returns if Video Format Y_UV12 is available. More...
 
#define XVFrmbufRd_IsY_UV16Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.Y_UV16En)
 This macro returns if Video Format Y_UV16 is available. More...
 
#define XVFrmbufRd_IsY_UV12_420Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.Y_UV12_420En)
 This macro returns if Video Format Y_UV12_420 is available. More...
 
#define XVFrmbufRd_IsY_UV16_420Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.Y_UV16_420En)
 This macro returns if Video Format Y_UV16_420 is available. More...
 
#define XVFrmbufRd_IsY12Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.Y12En)
 This macro returns if Video Format Y12 is available. More...
 
#define XVFrmbufRd_IsY16Enabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.Y16En)
 This macro returns if Video Format Y16 is available. More...
 
#define XVFrmbufRd_InterlacedEnabled(InstancePtr)   ((InstancePtr)->FrmbufRd.Config.Interlaced)
 This macro returns if interlaced support is available. More...
 

Typedefs

typedef void(* XVFrmbufRd_Callback )(void *CallbackRef)
 Callback type for interrupt. More...
 

Enumerations

enum  XVFrmbufRd_HandlerType { XVFRMBUFRD_HANDLER_DONE = 1, XVFRMBUFRD_HANDLER_READY }
 These constants specify different types of handler and used to differentiate interrupt requests from peripheral. More...
 

Functions

int XVFrmbufRd_Initialize (XV_FrmbufRd_l2 *InstancePtr, u16 DeviceId)
 This function initializes the core instance. More...
 
void XVFrmbufRd_Start (XV_FrmbufRd_l2 *InstancePtr)
 This function starts the core instance. More...
 
int XVFrmbufRd_Stop (XV_FrmbufRd_l2 *InstancePtr)
 This function stops the core instance. More...
 
int XVFrmbufRd_WaitForIdle (XV_FrmbufRd_l2 *InstancePtr)
 This function Waits for the core to reach idle state. More...
 
int XVFrmbufRd_SetMemFormat (XV_FrmbufRd_l2 *InstancePtr, u32 StrideInBytes, XVidC_ColorFormat MemFmt, const XVidC_VideoStream *StrmOut)
 This function configures the frame buffer read memory input. More...
 
XVidC_VideoStream * XVFrmbufRd_GetVideoStream (XV_FrmbufRd_l2 *InstancePtr)
 This function reads the pointer to the output stream configuration. More...
 
int XVFrmbufRd_SetBufferAddr (XV_FrmbufRd_l2 *InstancePtr, UINTPTR Addr)
 This function sets the buffer address. More...
 
UINTPTR XVFrmbufRd_GetBufferAddr (XV_FrmbufRd_l2 *InstancePtr)
 This function reads the buffer address. More...
 
int XVFrmbufRd_SetChromaBufferAddr (XV_FrmbufRd_l2 *InstancePtr, UINTPTR Addr)
 This function sets the buffer address for the UV plane for semi-planar formats or Only U Plane for 3 planar formats. More...
 
UINTPTR XVFrmbufRd_GetChromaBufferAddr (XV_FrmbufRd_l2 *InstancePtr)
 This function reads the buffer address for the UV plane for semi-planar formats or Only U plane for 3 planar formats. More...
 
int XVFrmbufRd_SetVChromaBufferAddr (XV_FrmbufRd_l2 *InstancePtr, UINTPTR Addr)
 This function sets the buffer address for the V plane for 3 planar formats. More...
 
UINTPTR XVFrmbufRd_GetVChromaBufferAddr (XV_FrmbufRd_l2 *InstancePtr)
 This function reads the buffer address for the V plane for 3 planar formats. More...
 
int XVFrmbufRd_SetFieldID (XV_FrmbufRd_l2 *InstancePtr, u32 FieldID)
 This function sets the field ID. More...
 
u32 XVFrmbufRd_GetFieldID (XV_FrmbufRd_l2 *InstancePtr)
 This function reads the field ID. More...
 
int XVFrmbufRd_Set_FidOutMode (XV_FrmbufRd_l2 *InstancePtr, u32 fidmodeval)
 This function sets the Fidout Mode Value. More...
 
u32 XVFrmbufRd_Get_FidOutMode (XV_FrmbufRd_l2 *InstancePtr)
 This function reads the Fidout Mode Value. More...
 
u32 XVFrmbufRd_Get_FidErrorOut (XV_FrmbufRd_l2 *InstancePtr)
 This function reads the Fid error Register and extract error flag. More...
 
u32 XVFrmbufRd_Get_FidErrorCount (XV_FrmbufRd_l2 *InstancePtr)
 This function reads the Fid error Register and extract error count. More...
 
u32 XVFrmbufRd_Get_FieldOut (XV_FrmbufRd_l2 *InstancePtr)
 This function reads the field Out. More...
 
void XVFrmbufRd_DbgReportStatus (XV_FrmbufRd_l2 *InstancePtr)
 This function reports the frame buffer read status. More...
 
void XVFrmbufRd_InterruptHandler (void *InstancePtr)
 This function is the interrupt handler for the frame buffer read core driver. More...
 
int XVFrmbufRd_SetCallback (XV_FrmbufRd_l2 *InstancePtr, u32 HandlerType, void *CallbackFunc, void *CallbackRef)
 This function installs an asynchronous callback function for the given HandlerType: More...
 
void XVFrmbufRd_InterruptEnable (XV_FrmbufRd_l2 *InstancePtr, u32 IrqMask)
 This function enables interrupts in the core. More...
 
void XVFrmbufRd_InterruptDisable (XV_FrmbufRd_l2 *InstancePtr, u32 IrqMask)
 This function disables interrupts in the core. More...
 

Macro Definition Documentation

#define XVFrmbufRd_InterlacedEnabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.Interlaced)

This macro returns if interlaced support is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.
#define XVFrmbufRd_IsBGR8Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.BGR8En)

This macro returns if Video Format BGR8 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsBGRA8Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.BGRA8En)

This macro returns if Video Format BGRA8 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsBGRX8Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.BGRX8En)

This macro returns if Video Format BGRX8 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsRGB16Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.RGB16En)

This macro returns if Video Format RGB16 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsRGB8Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.RGB8En)

This macro returns if Video Format RGB8 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsRGBA8Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.RGBA8En)

This macro returns if Video Format RGBA8 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsRGBX10Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.RGBX10En)

This macro returns if Video Format RGBX10 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsRGBX12Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.RGBX12En)

This macro returns if Video Format RGBX12 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsRGBX8Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.RGBX8En)

This macro returns if Video Format RGBX8 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsUYVY8Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.UYVY8En)

This macro returns if Video Format UYVY8 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsY10Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.Y10En)

This macro returns if Video Format Y10 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsY12Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.Y12En)

This macro returns if Video Format Y12 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsY16Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.Y16En)

This macro returns if Video Format Y16 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsY8Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.Y8En)

This macro returns if Video Format Y8 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsY_U_V10Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.Y_U_V10En)

This macro returns if Video Format Y_U_V10 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsY_U_V8_420Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.Y_U_V8_420En)

This macro returns if Video Format Y_U_V8_420 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsY_U_V8Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.Y_U_V8En)

This macro returns if Video Format Y_U_V8 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsY_UV10_420Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.Y_UV10_420En)

This macro returns if Video Format Y_UV10_420 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsY_UV10Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.Y_UV10En)

This macro returns if Video Format Y_UV10 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsY_UV12_420Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.Y_UV12_420En)

This macro returns if Video Format Y_UV12_420 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsY_UV12Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.Y_UV12En)

This macro returns if Video Format Y_UV12 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsY_UV16_420Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.Y_UV16_420En)

This macro returns if Video Format Y_UV16_420 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsY_UV16Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.Y_UV16En)

This macro returns if Video Format Y_UV16 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsY_UV8_420Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.Y_UV8_420En)

This macro returns if Video Format Y_UV8_420 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsY_UV8Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.Y_UV8En)

This macro returns if Video Format Y_UV8 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsYUV16Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.YUV16En)

This macro returns if Video Format YUV16 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsYUV8Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.YUV8En)

This macro returns if Video Format YUV8 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsYUVA8Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.YUVA8En)

This macro returns if Video Format YUVA8 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsYUVX10Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.YUVX10En)

This macro returns if Video Format YUVX10 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsYUVX12Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.YUVX12En)

This macro returns if Video Format YUVX12 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsYUVX8Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.YUVX8En)

This macro returns if Video Format YUVX8 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

#define XVFrmbufRd_IsYUYV8Enabled (   InstancePtr)    ((InstancePtr)->FrmbufRd.Config.YUYV8En)

This macro returns if Video Format YUYV8 is available.

Parameters
InstancePtris a pointer to the core instance.
Returns
Enabled(1)/Disabled(0)
Note
None.

Referenced by XVFrmbufRd_SetMemFormat().

Typedef Documentation

typedef void(* XVFrmbufRd_Callback)(void *CallbackRef)

Callback type for interrupt.

Parameters
CallbackRefis a callback reference passed in by the upper layer when setting the callback functions, and passed back to the upper layer when the callback is invoked.
Returns
None.
Note
None.