vprocss: Vprocss_v2_4

| vprocss Xilinx SDK Drivers API Documentation

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

Macros | Enumerations | Enumerator | Functions | Variables
Vprocss_v2_4

## Macros
#define | XVPROCSS_LOG_H
| < prevent circular inclusions by using protection macros More...
#define | XVPROCSS_EVT_BUFFSIZE 256
| Data structure for the event logging mechanism for debug. More...
#define | XVPROCSS_EDAT_SUCCESS 0x00
| Event Log status codes. More...

## Enumerations
enum | XVPROCSS_VDMA_CH_UPDATE
| This typedef enumerates the VDMA channel that needs update. More...
enum | XVprocSs_LogEvent { XVPROCSS_EVT_NONE = 1, XVPROCSS_EVT_INIT, XVPROCSS_EVT_INIT_RESAXIS, XVPROCSS_EVT_INIT_RESAXIM, XVPROCSS_EVT_INIT_ROUTER, XVPROCSS_EVT_INIT_LBOX, XVPROCSS_EVT_INIT_VDMA, XVPROCSS_EVT_CFGERR_VDMA, XVPROCSS_EVT_OPERR_VDMA, XVPROCSS_EVT_CFG_HSCALER, XVPROCSS_EVT_CFG_VSCALER, XVPROCSS_EVT_CFG_CSC, XVPROCSS_EVT_CFG_DEINT, XVPROCSS_EVT_CFG_VCRI, XVPROCSS_EVT_CFG_VCRO, XVPROCSS_EVT_CFG_HCR, XVPROCSS_EVT_CFG_MAX, XVPROCSS_EVT_CFG_VPSS, XVPROCSS_EVT_CHK_TOPO, XVPROCSS_EVT_CHK_BASEADDR, XVPROCSS_EVT_SET_PIPMODE, XVPROCSS_EVT_SET_ZOOMMODE, XVPROCSS_EVT_SET_PIPWIN, XVPROCSS_EVT_SET_ZOOMWIN, XVPROCSS_EVT_GET_ZPWIN, XVPROCSS_EVT_UPDATE_ZPWIN, XVPROCSS_EVT_RESET_VPSS, XVPROCSS_EVT_START_VPSS, XVPROCSS_EVT_STOP_VPSS, XVPROCSS_EVT_LAST_ENUM }
| This typedef contains the Event Log identifiers. More...

## Functions
void | XVprocSs_VdmaStart (XVprocSs *XVprocSsPtr)
| This function starts Read and Write channels. More...
void | XVprocSs_VdmaStop (XVprocSs *XVprocSsPtr)
| This function stops Read and Write channels. More...
void | XVprocSs_VdmaReset (XVprocSs *XVprocSsPtr)
| This function resets Read and Write channels. More...
int | XVprocSs_VdmaWriteSetup (XVprocSs *XVprocSsPtr, UINTPTR WrBaseAddress, XVidC_VideoWindow *window, u32 FrameWidth, u32 FrameHeight, u32 PixelWidthInBits)
| This function sets up the write channel. More...
int | XVprocSs_VdmaReadSetup (XVprocSs *XVprocSsPtr, UINTPTR RdBaseAddress, XVidC_VideoWindow *window, u32 FrameWidth, u32 FrameHeight, u32 PixelWidthInBits)
| This function sets up the read channel. More...
int | XVprocSs_VdmaStartTransfer (XVprocSs *XVprocSsPtr)
| This function starts the transfer on Read/Write channels. More...
void | XVprocSs_VdmaSetWinToDnScaleMode (XVprocSs *XVprocSsPtr, u32 updateCh)
| This function configures the VDMA RD/WR channel for down scale mode. More...
void | XVprocSs_VdmaSetWinToUpScaleMode (XVprocSs *XVprocSsPtr, u32 updateCh)
| This function configures the VDMA RD/WR channel for UP scale (or 1:1) mode. More...
void | XVprocSs_VdmaDbgReportStatus (XVprocSs *XVprocSsPtr, u32 PixelWidthInBits)
| This function prints VDMA status on the console. More...
int | XVprocSs_SubcoreInitResetAxis (XVprocSs *XVprocSsPtr)
| This function initializes the included sub-core to it's static configuration. More...
int | XVprocSs_SubcoreInitResetAximm (XVprocSs *XVprocSsPtr)
| This function initializes the included sub-core to it's static configuration. More...
int | XVprocSs_SubcoreInitRouter (XVprocSs *XVprocSsPtr)
| This function initializes the included sub-core to it's static configuration. More...
int | XVprocSs_SubcoreInitCsc (XVprocSs *XVprocSsPtr)
| This function initializes the included sub-core to it's static configuration. More...
int | XVprocSs_SubcoreInitHScaler (XVprocSs *XVprocSsPtr)
| This function initializes the included sub-core to it's static configuration. More...
int | XVprocSs_SubcoreInitVScaler (XVprocSs *XVprocSsPtr)
| This function initializes the included sub-core to it's static configuration. More...
int | XVprocSs_SubcoreInitHCrsmplr (XVprocSs *XVprocSsPtr)
| This function initializes the included sub-core to it's static configuration. More...
int | XVprocSs_SubcoreInitVCrsmpleIn (XVprocSs *XVprocSsPtr)
| This function initializes the included sub-core to it's static configuration. More...
int | XVprocSs_SubcoreInitVCrsmpleOut (XVprocSs *XVprocSsPtr)
| This function initializes the included sub-core to it's static configuration. More...
int | XVprocSs_SubcoreInitLetterbox (XVprocSs *XVprocSsPtr)
| This function initializes the included sub-core to it's static configuration. More...
int | XVprocSs_SubcoreInitVdma (XVprocSs *XVprocSsPtr)
| This function initializes the included sub-core to it's static configuration. More...
int | XVprocSs_SubcoreInitDeinterlacer (XVprocSs *XVprocSsPtr)
| This function initializes the included sub-core to it's static configuration. More...
int | XVprocSs_BuildRoutingTable (XVprocSs *XVprocSsPtr)
| This function examines the subsystem Input/Output Stream configuration and builds a routing table for the supported use-case. More...
void | XVprocSs_ProgRouterMux (XVprocSs *XVprocSsPtr)
| This function traverses the computed routing table and sets up the AXIS switch registers, to route the stream through processing cores, in the order defined in the routing map. More...
void | XVprocSs_SetupRouterDataFlow (XVprocSs *XVprocSsPtr)
| This function traverses the routing map built earlier and configures each sub-core in the processing path per its location in the chain. More...
XVprocSs_Config * | XVprocSs_LookupConfig (u32 DeviceId)
| This function looks for the device configuration based on the unique device ID. More...

## Variables
u16 | XVprocSs_Log::DataBuffer [XVPROCSS_EVT_BUFFSIZE]
| Log buffer with event data. More...
u8 | XVprocSs_Log::HeadIndex
    Index of the head entry of the
Event/DataBuffer. More...
u8 | XVprocSs_Log::TailIndex
    Index of the tail entry of the
Event/DataBuffer. More...

## Macro Definition Documentation

#define XVPROCSS_EDAT_SUCCESS 0x00

Event Log status codes.

These are the event data values.

0x00 - 0x0F : Successful events - applicable to VPSS and subcores 0xF0 - 0xFF : Error events - applicable to VPSS and subcores

0x10 ... : Successful events - applicable to particular subcores ... 0xEF : Error events - applicable to particular subcores

Referenced by XVprocSs_GetZoomPipWindow(), XVprocSs_LogDisplay(), XVprocSs_Reset(), XVprocSs_SetZoomPipWindow(), XVprocSs_Start(), XVprocSs_Stop(), and XVprocSs_UpdateZoomPipWindow().

#define XVPROCSS_EVT_BUFFSIZE 256

Data structure for the event logging mechanism for debug.

Referenced by XVprocSs_LogRead(), and XVprocSs_LogWrite().

#define XVPROCSS_LOG_H

< prevent circular inclusions by using protection macros

## Enumeration Type Documentation

enum XVprocSs_LogEvent

This typedef contains the Event Log identifiers.

Enumerator
XVPROCSS_EVT_NONE | Log event none.
XVPROCSS_EVT_INIT | Log event init.
XVPROCSS_EVT_INIT_RESAXIS | Log event init status of Reset Axis subcore.
XVPROCSS_EVT_INIT_RESAXIM | Log event init status of Reset Aximm subcore.
XVPROCSS_EVT_INIT_ROUTER | Log event init status of Router subcore.
XVPROCSS_EVT_INIT_LBOX | Log event init status of Letterbox subcore.
XVPROCSS_EVT_INIT_VDMA | Log event init status of VDMA subcore.
XVPROCSS_EVT_CFGERR_VDMA | Log event VDMA configuration error.
XVPROCSS_EVT_OPERR_VDMA | Log event VDMA operation error.
XVPROCSS_EVT_CFG_HSCALER | Log event Scaler config status.
XVPROCSS_EVT_CFG_VSCALER | Log event Scaler config status.
XVPROCSS_EVT_CFG_CSC | Log event Csc config status.
XVPROCSS_EVT_CFG_DEINT | Log event Deinterlacer config status.
XVPROCSS_EVT_CFG_VCRI | Log event VCResampler config status.
XVPROCSS_EVT_CFG_VCRO | Log event VCResampler config status.
XVPROCSS_EVT_CFG_HCR | Log event HCResampler config status.
XVPROCSS_EVT_CFG_MAX | Log event Full Fledged config status.
XVPROCSS_EVT_CFG_VPSS | Log event VPSS config status.
XVPROCSS_EVT_CHK_TOPO | Log event check Topology.
XVPROCSS_EVT_CHK_BASEADDR | Log event check Frame buffer base address.
XVPROCSS_EVT_SET_PIPMODE | Log event Set Pip Mode.
XVPROCSS_EVT_SET_ZOOMMODE | Log event Set Zoom Mode.
XVPROCSS_EVT_SET_PIPWIN | Log event Set Pip window.
XVPROCSS_EVT_SET_ZOOMWIN | Log event Set Zoom window.
XVPROCSS_EVT_GET_ZPWIN | Log event Get Zoom/Pip window.
XVPROCSS_EVT_UPDATE_ZPWIN | Log event Update Zoom/Pip window status.
XVPROCSS_EVT_RESET_VPSS | Log event Reset the VPSS.
XVPROCSS_EVT_START_VPSS | Log event Start the VPSS.
XVPROCSS_EVT_STOP_VPSS | Log event Stop the VPSS.
XVPROCSS_EVT_LAST_ENUM | (dummy event: marks last enum)

enum XVPROCSS_VDMA_CH_UPDATE

This typedef enumerates the VDMA channel that needs update.

## Function Documentation

int XVprocSs_BuildRoutingTable | ( | XVprocSs * | XVprocSsPtr | ) |

This function examines the subsystem Input/Output Stream configuration and builds a routing table for the supported use-case.

The computed routing table is stored in the scratch pad memory

Parameters

  XVprocSsPtr | is a pointer to the Subsystem instance to be worked on.

Returns
  XST_SUCCESS if routing table can be created else XST_FAILURE

References XVprocSs_ContextData::CscIn, XVprocSs_ContextData::CscOut, XVprocSs::CtxtData, XVprocSs_ContextData::HcrIn, XVprocSs_ContextData::HcrOut, XVprocSs_ContextData::RtngTable, XVprocSs_ContextData::RtrNumCores, XVprocSs_ContextData::ScaleMode, XVprocSs_ContextData::StrmCformat, XVprocSs::VdmaPtr, XVprocSs::VidIn, XVprocSs_ContextData::VidInHeight, XVprocSs_ContextData::VidInWidth, XVprocSs::VidOut, XVPROCSS_EVT_CFG_MAX, and XVprocSs_LogWrite().

XVprocSs_Config* XVprocSs_LookupConfig | ( | u32 | DeviceId | ) |

This function looks for the device configuration based on the unique device ID.

The table XVprocSs_ConfigTable[] contains the configuration information for each instance of the device in the system.

Parameters

  DeviceId | is the unique device ID of the device being looked up

Returns
  A pointer to the configuration table entry corresponding to the given device ID, or NULL if no match is found

Referenced by XSys_Init().

void XVprocSs_ProgRouterMux | ( | XVprocSs * | XVprocSsPtr | ) |

This function traverses the computed routing table and sets up the AXIS switch registers, to route the stream through processing cores, in the order defined in the routing map.

Parameters

  XVprocSsPtr | is a pointer to the Subsystem instance to be worked on.

Returns
  None

References XVprocSs::CtxtData, XVprocSs::RouterPtr, XVprocSs_ContextData::RtngTable, XVprocSs_ContextData::RtrNumCores, XVPROCSS_EVT_CFG_MAX, and XVprocSs_LogWrite().

void XVprocSs_SetupRouterDataFlow | ( | XVprocSs * | XVprocSsPtr | ) |

This function traverses the routing map built earlier and configures each sub-core in the processing path per its location in the chain.

Each core in the processing path is marked and only marked cores are started All remaining cores stay disabled

Parameters

  XVprocSsPtr | is a pointer to the Subsystem instance to be worked on.

Returns
  None

References XVprocSs_ContextData::CscIn, XVprocSs_ContextData::CscOut, XVprocSs::CscPtr, XVprocSs::CtxtData, XVprocSs_ContextData::DeintBufAddr, XVprocSs::DeintPtr, XVprocSs_ContextData::HcrIn, XVprocSs_ContextData::HcrOut, XVprocSs::HcrsmplrPtr, XVprocSs::HscalerPtr, XVprocSs_ContextData::LboxBkgndColor, XVprocSs::LboxPtr, XVprocSs_ContextData::RdWindow, XVprocSs_ContextData::RtngTable, XVprocSs_ContextData::RtrNumCores, XVprocSs_ContextData::ScaleMode, XVprocSs_ContextData::StartCore, XVprocSs_ContextData::StrmCformat, XVprocSs::VcrsmplrInPtr, XVprocSs::VcrsmplrOutPtr, XVprocSs::VdmaPtr, XVprocSs::VidIn, XVprocSs_ContextData::VidInHeight, XVprocSs_ContextData::VidInWidth, XVprocSs::VidOut, XVprocSs::VscalerPtr, XVprocSs_ContextData::WrWindow, XVPROCSS_EVT_CFG_CSC, XVPROCSS_EVT_CFG_HSCALER, XVPROCSS_EVT_CFG_MAX, XVPROCSS_EVT_CFG_VSCALER, XVprocSs_GetColorDepth, XVprocSs_IsPipModeOn, XVprocSs_IsZoomModeOn, XVprocSs_LogWrite(), XVprocSs_Start(), XVprocSs_VdmaSetWinToDnScaleMode(), and XVprocSs_VdmaSetWinToUpScaleMode().

int XVprocSs_SubcoreInitCsc | ( | XVprocSs * | XVprocSsPtr | ) |

This function initializes the included sub-core to it's static configuration.

Parameters

  XVprocSsPtr | is a pointer to the Subsystem instance to be worked on.

Returns
  XST_SUCCESS/XST_FAILURE

References XSubCore::AddrOffset, XVprocSs_Config::BaseAddress, XVprocSs::Config, XVprocSs_Config::Csc, XVprocSs::CscPtr, XSubCore::DeviceId, XVprocSs_Config::HighAddress, XVPROCSS_EVT_CFG_CSC, and XVprocSs_LogWrite().

Referenced by XVprocSs_CfgInitialize().

int XVprocSs_SubcoreInitDeinterlacer | ( | XVprocSs * | XVprocSsPtr | ) |

This function initializes the included sub-core to it's static configuration.

Parameters

  XVprocSsPtr | is a pointer to the Subsystem instance to be worked on.

Returns
  XST_SUCCESS/XST_FAILURE

References XSubCore::AddrOffset, XVprocSs_Config::BaseAddress, XVprocSs::Config, XVprocSs_Config::Deint, XVprocSs::DeintPtr, XSubCore::DeviceId, XVprocSs_Config::HighAddress, XVPROCSS_EVT_CFG_DEINT, and XVprocSs_LogWrite().

Referenced by XVprocSs_CfgInitialize().

int XVprocSs_SubcoreInitHCrsmplr | ( | XVprocSs * | XVprocSsPtr | ) |

This function initializes the included sub-core to it's static configuration.

Parameters

  XVprocSsPtr | is a pointer to the Subsystem instance to be worked on.

Returns
  XST_SUCCESS/XST_FAILURE

References XSubCore::AddrOffset, XVprocSs_Config::BaseAddress, XVprocSs::Config, XSubCore::DeviceId, XVprocSs_Config::HCrsmplr, XVprocSs::HcrsmplrPtr, XVprocSs_Config::HighAddress, XVPROCSS_EVT_CFG_HCR, and XVprocSs_LogWrite().

Referenced by XVprocSs_CfgInitialize().

int XVprocSs_SubcoreInitHScaler | ( | XVprocSs * | XVprocSsPtr | ) |

This function initializes the included sub-core to it's static configuration.

Parameters

  XVprocSsPtr | is a pointer to the Subsystem instance to be worked on.

Returns
  XST_SUCCESS/XST_FAILURE

References XSubCore::AddrOffset, XVprocSs_Config::BaseAddress, XVprocSs::Config, XSubCore::DeviceId, XVprocSs_Config::HighAddress, XVprocSs_Config::Hscale, XVprocSs::HscalerPtr, XVPROCSS_EVT_CFG_HSCALER, and XVprocSs_LogWrite().

Referenced by XVprocSs_CfgInitialize().

int XVprocSs_SubcoreInitLetterbox | ( | XVprocSs * | XVprocSsPtr | ) |

This function initializes the included sub-core to it's static configuration.

Parameters

  XVprocSsPtr | is a pointer to the Subsystem instance to be worked on.

Returns
  XST_SUCCESS/XST_FAILURE

References XSubCore::AddrOffset, XVprocSs_Config::BaseAddress, XVprocSs::Config, XSubCore::DeviceId, XVprocSs_Config::HighAddress, XVprocSs_Config::Lbox, XVprocSs::LboxPtr, XVPROCSS_EVT_INIT_LBOX, and XVprocSs_LogWrite().

Referenced by XVprocSs_CfgInitialize().

int XVprocSs_SubcoreInitResetAximm | ( | XVprocSs * | XVprocSsPtr | ) |

This function initializes the included sub-core to it's static configuration.

Parameters

  XVprocSsPtr | is a pointer to the Subsystem instance to be worked on.

Returns
  XST_SUCCESS/XST_FAILURE

References XSubCore::AddrOffset, XVprocSs_Config::BaseAddress, XVprocSs::Config, XSubCore::DeviceId, XVprocSs_Config::HighAddress, XVprocSs_Config::RstAximm, XVprocSs::RstAximmPtr, XVPROCSS_EVT_INIT_RESAXIM, and XVprocSs_LogWrite().

Referenced by XVprocSs_CfgInitialize().

int XVprocSs_SubcoreInitResetAxis | ( | XVprocSs * | XVprocSsPtr | ) |

This function initializes the included sub-core to it's static configuration.

Parameters

  XVprocSsPtr | is a pointer to the Subsystem instance to be worked on.

Returns
  XST_SUCCESS/XST_FAILURE

References XSubCore::AddrOffset, XVprocSs_Config::BaseAddress, XVprocSs::Config, XSubCore::DeviceId, XVprocSs_Config::HighAddress, XVprocSs_Config::RstAxis, XVprocSs::RstAxisPtr, XVPROCSS_EVT_INIT_RESAXIS, and XVprocSs_LogWrite().

Referenced by XVprocSs_CfgInitialize().

int XVprocSs_SubcoreInitRouter | ( | XVprocSs * | XVprocSsPtr | ) |

This function initializes the included sub-core to it's static configuration.

Parameters

  XVprocSsPtr | is a pointer to the Subsystem instance to be worked on.

Returns
  XST_SUCCESS/XST_FAILURE

References XSubCore::AddrOffset, XVprocSs_Config::BaseAddress, XVprocSs::Config, XSubCore::DeviceId, XVprocSs_Config::HighAddress, XVprocSs_Config::Router, XVprocSs::RouterPtr, XVPROCSS_EVT_INIT_ROUTER, and XVprocSs_LogWrite().

Referenced by XVprocSs_CfgInitialize().

int XVprocSs_SubcoreInitVCrsmpleIn | ( | XVprocSs * | XVprocSsPtr | ) |

This function initializes the included sub-core to it's static configuration.

Parameters

  XVprocSsPtr | is a pointer to the Subsystem instance to be worked on.

Returns
  XST_SUCCESS/XST_FAILURE

References XSubCore::AddrOffset, XVprocSs_Config::BaseAddress, XVprocSs::Config, XSubCore::DeviceId, XVprocSs_Config::HighAddress, XVprocSs_Config::VCrsmplrIn, XVprocSs::VcrsmplrInPtr, XVPROCSS_EVT_CFG_VCRI, and XVprocSs_LogWrite().

Referenced by XVprocSs_CfgInitialize().

int XVprocSs_SubcoreInitVCrsmpleOut | ( | XVprocSs * | XVprocSsPtr | ) |

This function initializes the included sub-core to it's static configuration.

Parameters

  XVprocSsPtr | is a pointer to the Subsystem instance to be worked on.

Returns
  XST_SUCCESS/XST_FAILURE

References XSubCore::AddrOffset, XVprocSs_Config::BaseAddress, XVprocSs::Config, XSubCore::DeviceId, XVprocSs_Config::HighAddress, XVprocSs_Config::VCrsmplrOut, XVprocSs::VcrsmplrOutPtr, XVPROCSS_EVT_CFG_VCRO, and XVprocSs_LogWrite().

Referenced by XVprocSs_CfgInitialize().

int XVprocSs_SubcoreInitVdma | ( | XVprocSs * | XVprocSsPtr | ) |

This function initializes the included sub-core to it's static configuration.

Parameters

  XVprocSsPtr | is a pointer to the Subsystem instance to be worked on.

Returns
  XST_SUCCESS/XST_FAILURE

References XSubCore::AddrOffset, XVprocSs_Config::BaseAddress, XVprocSs::Config, XSubCore::DeviceId, XVprocSs_Config::HighAddress, XVprocSs_Config::Vdma, XVprocSs::VdmaPtr, XVPROCSS_EVT_INIT_VDMA, and XVprocSs_LogWrite().

Referenced by XVprocSs_CfgInitialize().

int XVprocSs_SubcoreInitVScaler | ( | XVprocSs * | XVprocSsPtr | ) |

This function initializes the included sub-core to it's static configuration.

Parameters

  XVprocSsPtr | is a pointer to the Subsystem instance to be worked on.

Returns
  XST_SUCCESS/XST_FAILURE

References XSubCore::AddrOffset, XVprocSs_Config::BaseAddress, XVprocSs::Config, XSubCore::DeviceId, XVprocSs_Config::HighAddress, XVprocSs_Config::Vscale, XVprocSs::VscalerPtr, XVPROCSS_EVT_CFG_VSCALER, and XVprocSs_LogWrite().

Referenced by XVprocSs_CfgInitialize().

void XVprocSs_VdmaDbgReportStatus | ( | XVprocSs * | XVprocSsPtr,
|  | u32 | PixelWidthInBits
| ) |  |

This function prints VDMA status on the console.

Parameters

  XVdmaPtr | is the instance pointer to the DMA engine.
  Bpp | is Bytes per pixel to be used for data transfer

Returns
  None

References XVprocSs::VdmaPtr.

Referenced by XVprocSs_ReportSubcoreStatus().

int XVprocSs_VdmaReadSetup | ( | XVprocSs * | XVprocSsPtr,
|  | UINTPTR | RdBaseAddress,
|  | XVidC_VideoWindow * | window,
|  | u32 | FrameWidth,
|  | u32 | FrameHeight,
|  | u32 | PixelWidthInBits
| ) |  |

This function sets up the read channel.

Parameters

  XVprocSsPtr | is the pointer to the VPSS instance.
  RdBaseAddress | is the address in DDR where frame buffers are located
  window | is pointer to sub-frame window
  FrameWidth | is the active width of the stream to be read
  FrameHeight | is the active height of the stream to be read
  PixelWidthInBits | is Bits Per Pixel required for the stream

Returns
  XST_SUCCESS if the setup is successful, XST_FAILURE otherwise.

Note
  None.

References XVprocSs::VdmaPtr, XVPROCSS_EVT_CFGERR_VDMA, and XVprocSs_LogWrite().

Referenced by XVprocSs_VdmaSetWinToDnScaleMode(), and XVprocSs_VdmaSetWinToUpScaleMode().

void XVprocSs_VdmaReset | ( | XVprocSs * | XVprocSsPtr | ) |

This function resets Read and Write channels.

Parameters

  XVprocSsPtr | is the pointer to the VPSS instance

Returns
  None

References XVprocSs::VdmaPtr, XVPROCSS_EVT_OPERR_VDMA, and XVprocSs_LogWrite().

Referenced by XVprocSs_Reset().

void XVprocSs_VdmaSetWinToDnScaleMode | ( | XVprocSs * | XVprocSsPtr,
|  | u32 | updateCh
| ) |  |

This function configures the VDMA RD/WR channel for down scale mode.

Parameters

  XVprocSsPtr | is the pointer to the VPSS instance.
  updateCh | defines VDMA channel (RD/WR or RD+WR) to update

Returns
  None

References XVprocSs::CtxtData, XVprocSs::FrameBufBaseaddr, XVprocSs_ContextData::PixelWidthInBits, XVprocSs::VidOut, XVprocSs_GetZoomPipWindow(), XVprocSs_IsPipModeOn, XVprocSs_VdmaReadSetup(), and XVprocSs_VdmaWriteSetup().

Referenced by XVprocSs_SetupRouterDataFlow(), and XVprocSs_UpdateZoomPipWindow().

void XVprocSs_VdmaSetWinToUpScaleMode | ( | XVprocSs * | XVprocSsPtr,
|  | u32 | updateCh
| ) |  |

This function configures the VDMA RD/WR channel for UP scale (or 1:1) mode.

Parameters

  XVprocSsPtr | is the pointer to the VPSS instance.
  updateCh | defines VDMA channel (RD/WR or RD+WR) to update

Returns
  None

References XVprocSs::CtxtData, XVprocSs::FrameBufBaseaddr, XVprocSs_ContextData::PixelWidthInBits, XVprocSs_ContextData::VidInHeight, XVprocSs_ContextData::VidInWidth, XVprocSs_GetZoomPipWindow(), XVprocSs_IsZoomModeOn, XVprocSs_VdmaReadSetup(), and XVprocSs_VdmaWriteSetup().

Referenced by XVprocSs_SetupRouterDataFlow(), and XVprocSs_UpdateZoomPipWindow().

void XVprocSs_VdmaStart | ( | XVprocSs * | XVprocSsPtr | ) |

This function starts Read and Write channels.

Parameters

  XVdmaPtr | is the pointer to core instance to be worked on

Returns
  None

References XVprocSs::VdmaPtr.

int XVprocSs_VdmaStartTransfer | ( | XVprocSs * | XVprocSsPtr | ) |

This function starts the transfer on Read/Write channels.

Both channels must have been configured before this call is made

Parameters

  XVprocSsPtr | is the pointer to the VPSS instance.

Returns
  XST_SUCCESS if the setup is successful, XST_FAILURE otherwise.

Note
  Currently the return value is ignored at subsystem level.

References XVprocSs::VdmaPtr, XVPROCSS_EVT_OPERR_VDMA, and XVprocSs_LogWrite().

Referenced by XVprocSs_Start(), and XVprocSs_UpdateZoomPipWindow().

void XVprocSs_VdmaStop | ( | XVprocSs * | XVprocSsPtr | ) |

This function stops Read and Write channels.

Parameters

  XVdmaPtr | is the pointer to core instance to be worked on

Returns
  None

References XVprocSs::VdmaPtr.

Referenced by XVprocSs_Stop().

int XVprocSs_VdmaWriteSetup | ( | XVprocSs * | XVprocSsPtr,
|  | UINTPTR | WrBaseAddress,
|  | XVidC_VideoWindow * | window,
|  | u32 | FrameWidth,
|  | u32 | FrameHeight,
|  | u32 | PixelWidthInBits
| ) |  |

This function sets up the write channel.

Parameters

  XVprocSsPtr | is the pointer to the VPSS instance.
  WrBaseAddress | is the address in DDR where frame buffers are located
  window | is pointer to sub-frame window
  FrameWidth | is the active width of the stream to be written
  FrameHeight | is the active height of the stream to be written
  PixelWidthInBits | is Bits Per Pixel required for the stream

Returns
  XST_SUCCESS if the setup is successful, XST_FAILURE otherwise.

References XVprocSs::VdmaPtr, XVPROCSS_EVT_CFGERR_VDMA, and XVprocSs_LogWrite().

Referenced by XVprocSs_VdmaSetWinToDnScaleMode(), and XVprocSs_VdmaSetWinToUpScaleMode().

## Variable Documentation

u16 XVprocSs_Log::DataBuffer[XVPROCSS_EVT_BUFFSIZE]

Log buffer with event data.

u8 XVprocSs_Log::HeadIndex

    Index of the head entry of the

Event/DataBuffer.

u8 XVprocSs_Log::TailIndex

    Index of the tail entry of the

Event/DataBuffer.