![]() |
vprocss
Vitis Drivers API Documentation
|
Data Structures | |
| struct | XVprocSs_ContextData |
| Video Processing Subsystem context scratch pad memory. More... | |
| struct | XSubCore |
| Sub-Core Configuration Table. More... | |
| struct | XVprocSs_Config |
| Video Processing Subsystem configuration structure. More... | |
| struct | XVprocSs |
| The XVprocSs driver instance data. More... | |
Macros | |
| #define | XVPROCSS_H |
| < prevent circular inclusions by using protection macros More... | |
| #define | XVprocSs_GetSubsystemTopology(XVprocSsPtr) ((XVprocSsPtr)->Config.Topology) |
| This macro returns the subsystem topology. More... | |
| #define | XVprocSs_GetColorDepth(XVprocSsPtr) ((XVprocSsPtr)->Config.ColorDepth) |
| This macro returns the subsystem Color Depth. More... | |
| #define | XVprocSs_IsConfigModeMax(XVprocSsPtr) ((XVprocSsPtr)->Config.Topology == XVPROCSS_TOPOLOGY_FULL_FLEDGED) |
| This macro checks if subsystem is in Maximum (Full_Fledged) configuration. More... | |
| #define | XVprocSs_IsConfigModeSscalerOnly(XVprocSsPtr) ((XVprocSsPtr)->Config.Topology == XVPROCSS_TOPOLOGY_SCALER_ONLY) |
| This macro checks if subsystem configuration is in Scaler Only Mode. More... | |
| #define | XVprocSs_IsConfigModeDeinterlaceOnly(XVprocSsPtr) ((XVprocSsPtr)->Config.Topology == XVPROCSS_TOPOLOGY_DEINTERLACE_ONLY) |
| This macro checks if subsystem configuration is in Deinterlace Only Mode. More... | |
| #define | XVprocSs_IsConfigModeCscOnly(XVprocSsPtr) ((XVprocSsPtr)->Config.Topology == XVPROCSS_TOPOLOGY_CSC_ONLY) |
| This macro checks if subsystem configuration is in CSC Only Mode. More... | |
| #define | XVprocSs_IsConfigModeVCResampleOnly(XVprocSsPtr) ((XVprocSsPtr)->Config.Topology == XVPROCSS_TOPOLOGY_VCRESAMPLE_ONLY) |
| This macro checks if subsystem configuration is in V Chroma ResampleMode. More... | |
| #define | XVprocSs_IsConfigModeHCResampleOnly(XVprocSsPtr) ((XVprocSsPtr)->Config.Topology == XVPROCSS_TOPOLOGY_HCRESAMPLE_ONLY) |
| This macro checks if subsystem configuration is in H Chroma Resample Mode. More... | |
| #define | XVprocSs_IsPipModeOn(XVprocSsPtr) ((XVprocSsPtr)->CtxtData.PipEn) |
| This macro returns the current state of PIP Mode stored in subsystem internal scratch pad memory. More... | |
| #define | XVprocSs_IsZoomModeOn(XVprocSsPtr) ((XVprocSsPtr)->CtxtData.ZoomEn) |
| This macro returns the current state of Zoom Mode stored in subsystem internal scratch pad memory. More... | |
| #define | XVprocSs_GetPipZoomWinHStepSize(XVprocSsPtr) ((XVprocSsPtr)->CtxtData.PixelHStepSize) |
| This macro returns the Pip/Zoom window horizontal increment size. More... | |
| #define | XVprocSs_ResetPipModeFlag(XVprocSsPtr) ((XVprocSsPtr)->CtxtData.PipEn = FALSE) |
| This macro clears the PIP mode flag stored in subsystem internal scratch pad memory. More... | |
| #define | XVprocSs_ResetZoomModeFlag(XVprocSsPtr) ((XVprocSsPtr)->CtxtData.ZoomEn = FALSE) |
| This macro clears the ZOOM mode flag stored in subsystem internal scratch pad memory. More... | |
| #define | XVprocSs_SetStreamColorFormat(Stream, ColorFormat) ((Stream)->ColorFormatId = ColorFormat) |
| This macro sets the specified stream's color format. More... | |
| #define | XVprocSs_SetStreamColorDepth(Stream, ColorDepth) ((Stream)->ColorDepth = ColorDepth) |
| This macro sets the specified stream's color depth. More... | |
Enumerations | |
| enum | XVPROCSS_SUBCORE_ID |
| Subsystem sub-core layer 2 header files Layer 2 includes Layer-1. More... | |
| enum | XVPROCSS_CONFIG_TOPOLOGY |
| This typedef enumerates supported subsystem configuration topology. More... | |
| enum | XVprocSs_Win |
| This typedef enumerates types of Windows (Sub-frames) available in the Subsystem. More... | |
| enum | XVprocSs_ScaleMode |
| This typedef enumerates supported scaling modes. More... | |
| enum | XVprocSs_ColorChannel |
| This typedef enumerates supported Color Channels. More... | |
Functions | |
| int | XVprocSs_CfgInitialize (XVprocSs *InstancePtr, XVprocSs_Config *CfgPtr, UINTPTR EffectiveAddr) |
| This function initializes the video subsystem and included sub-cores. More... | |
| int | XVprocSs_SetSubsystemConfig (XVprocSs *InstancePtr) |
| This function is the entry point into the video processing subsystem driver processing path. More... | |
| XVprocSs_Config * | XVprocSs_LookupConfig (u32 DeviceId) |
| This function looks for the device configuration based on the unique device ID. More... | |
| void | XVprocSs_Start (XVprocSs *InstancePtr) |
| This function starts the video subsystem including all sub-cores that are included in the processing pipeline for a given use-case. More... | |
| void | XVprocSs_Stop (XVprocSs *InstancePtr) |
| This function stops the video subsystem including all sub-cores Stop the video pipe starting from front to back. More... | |
| void | XVprocSs_Reset (XVprocSs *InstancePtr) |
| This function resets the video subsystem sub-cores. More... | |
| int | XVprocSs_SetVidStreamIn (XVprocSs *InstancePtr, const XVidC_VideoStream *StrmIn) |
| This function configures the video subsystem input interface. More... | |
| int | XVprocSs_SetVidStreamOut (XVprocSs *InstancePtr, const XVidC_VideoStream *StrmOut) |
| This function configures the video subsystem output interface. More... | |
| int | XVprocSs_SetStreamResolution (XVidC_VideoStream *StreamPtr, const XVidC_VideoMode VmId, XVidC_VideoTiming const *Timing) |
| This function sets the required subsystem video stream to the user provided stream and timing parameters. More... | |
| void | XVprocSs_SetFrameBufBaseaddr (XVprocSs *InstancePtr, UINTPTR addr) |
| This function sets the base address of the video frame buffers used by the subsystem instance. More... | |
| void | XVprocSs_SetUserTimerHandler (XVprocSs *InstancePtr, XVidC_DelayHandler CallbackFunc, void *CallbackRef) |
| This function registers the user defined delay/sleep function with subsystem. More... | |
| void | XVprocSs_SetZoomMode (XVprocSs *InstancePtr, u8 OnOff) |
| This function configures the video subsystem to enable/disable ZOOM feature If ZOOM mode is set to ON but user has not set window coordinates then quarter of input stream resolution at coordinates 0,0 is set as the default zoom window. More... | |
| void | XVprocSs_SetPipMode (XVprocSs *InstancePtr, u8 OnOff) |
| This function configures the video subsystem to enable/disable PIP feature If PIP mode is set to ON but user has not set window coordinates then half of input stream resolution at coordinates 0,0 is set as the default zoom window. More... | |
| void | XVprocSs_SetZoomPipWindow (XVprocSs *InstancePtr, XVprocSs_Win mode, XVidC_VideoWindow *win) |
| This function allows user to set the Zoom or PIP window. More... | |
| void | XVprocSs_GetZoomPipWindow (XVprocSs *InstancePtr, XVprocSs_Win mode, XVidC_VideoWindow *win) |
| This function reads the user defined Zoom/Pip window from scratch pad memory. More... | |
| void | XVprocSs_UpdateZoomPipWindow (XVprocSs *InstancePtr) |
| This function updates the Pip/Zoom window currently on screen in-place. More... | |
| s32 | XVprocSs_GetPictureBrightness (XVprocSs *InstancePtr) |
| This function returns picture brighntess setting. More... | |
| void | XVprocSs_SetPictureBrightness (XVprocSs *InstancePtr, s32 NewValue) |
| This function updates picture brighntess setting with specified value. More... | |
| s32 | XVprocSs_GetPictureContrast (XVprocSs *InstancePtr) |
| This function returns picture contrast setting. More... | |
| void | XVprocSs_SetPictureContrast (XVprocSs *InstancePtr, s32 NewValue) |
| This function updates picture contrast setting with specified value. More... | |
| s32 | XVprocSs_GetPictureSaturation (XVprocSs *InstancePtr) |
| This function returns picture saturation setting. More... | |
| void | XVprocSs_SetPictureSaturation (XVprocSs *InstancePtr, s32 NewValue) |
| This function updates picture saturation setting with specified value. More... | |
| s32 | XVprocSs_GetPictureGain (XVprocSs *InstancePtr, XVprocSs_ColorChannel ChId) |
| This function returns picture gain setting for the specified color channel. More... | |
| void | XVprocSs_SetPictureGain (XVprocSs *InstancePtr, XVprocSs_ColorChannel ChId, s32 NewValue) |
| This function updates picture gain setting with specified value. More... | |
| XVidC_ColorStd | XVprocSs_GetPictureColorStdIn (XVprocSs *InstancePtr) |
| This function returns picture color standard setting for input. More... | |
| void | XVprocSs_SetPictureColorStdIn (XVprocSs *InstancePtr, XVidC_ColorStd NewVal) |
| This function sets picture color standard setting for input. More... | |
| XVidC_ColorStd | XVprocSs_GetPictureColorStdOut (XVprocSs *InstancePtr) |
| This function returns picture color standard setting for output. More... | |
| void | XVprocSs_SetPictureColorStdOut (XVprocSs *InstancePtr, XVidC_ColorStd NewVal) |
| This function sets picture color standard setting for output. More... | |
| XVidC_ColorRange | XVprocSs_GetPictureColorRange (XVprocSs *InstancePtr) |
| This function returns picture color range for output. More... | |
| void | XVprocSs_SetPictureColorRange (XVprocSs *InstancePtr, XVidC_ColorRange NewVal) |
| This function sets picture color range for output. More... | |
| int | XVprocSs_SetPictureDemoWindow (XVprocSs *InstancePtr, XVidC_VideoWindow *Win) |
| This function sets picture Demo Window. More... | |
| void | XVprocSs_SetPIPBackgroundColor (XVprocSs *InstancePtr, XLboxColorId ColorId) |
| This function sets PIP background color. More... | |
| void | XVprocSs_LoadScalerCoeff (XVprocSs *InstancePtr, u32 CoreId, u16 num_phases, u16 num_taps, const short *Coeff) |
| This function enables user to load external filter coefficients for Scaler cores, independently for H & V. More... | |
| void | XVprocSs_LoadChromaResamplerCoeff (XVprocSs *InstancePtr, u32 CoreId, u16 num_taps, const short *Coeff) |
| This function enables user to load external filter coefficients for Chroma Resampler cores, independently for H & V. More... | |
| void | XVprocSs_ReportSubsystemConfig (XVprocSs *InstancePtr) |
| This function reports the subsystem HW and input/output stream configuration. More... | |
| void | XVprocSs_ReportSubsystemCoreInfo (XVprocSs *InstancePtr) |
| This function reports Video Processing Subsystem HW configuration. More... | |
| void | XVprocSs_ReportSubcoreStatus (XVprocSs *InstancePtr, u32 SubcoreId) |
| This function reports the status of specified sub-core. More... | |
| void | XVprocSs_LogReset (XVprocSs *InstancePtr) |
| This function will reset the driver's logging mechanism. More... | |
| u16 | XVprocSs_LogRead (XVprocSs *InstancePtr) |
| This function will read the last event from the log. More... | |
| void | XVprocSs_LogDisplay (XVprocSs *InstancePtr) |
| This function will read and print the entire event log. More... | |
| void | XVprocSs_LogWrite (XVprocSs *InstancePtr, XVprocSs_LogEvent Evt, u8 Data) |
| This function will insert an event in the driver's logging mechanism. More... | |
| #define XVprocSs_GetColorDepth | ( | XVprocSsPtr | ) | ((XVprocSsPtr)->Config.ColorDepth) |
This macro returns the subsystem Color Depth.
| XVprocSsPtr | is a pointer to the Video Processing subsystem instance |
Referenced by XVprocSs_SetupRouterDataFlow().
| #define XVprocSs_GetPipZoomWinHStepSize | ( | XVprocSsPtr | ) | ((XVprocSsPtr)->CtxtData.PixelHStepSize) |
This macro returns the Pip/Zoom window horizontal increment size.
| XVprocSsPtr | is a pointer to the Video Processing subsystem instance |
Referenced by XVprocSs_ReportSubsystemConfig().
| #define XVprocSs_GetSubsystemTopology | ( | XVprocSsPtr | ) | ((XVprocSsPtr)->Config.Topology) |
This macro returns the subsystem topology.
| XVprocSsPtr | is a pointer to the Video Processing subsystem instance |
Referenced by XVprocSs_CfgInitialize(), XVprocSs_ReportSubsystemCoreInfo(), and XVprocSs_SetSubsystemConfig().
| #define XVPROCSS_H |
< prevent circular inclusions by using protection macros
| #define XVprocSs_IsConfigModeCscOnly | ( | XVprocSsPtr | ) | ((XVprocSsPtr)->Config.Topology == XVPROCSS_TOPOLOGY_CSC_ONLY) |
This macro checks if subsystem configuration is in CSC Only Mode.
| XVprocSsPtr | is pointer to the Video Processing subsystem instance |
| #define XVprocSs_IsConfigModeDeinterlaceOnly | ( | XVprocSsPtr | ) | ((XVprocSsPtr)->Config.Topology == XVPROCSS_TOPOLOGY_DEINTERLACE_ONLY) |
This macro checks if subsystem configuration is in Deinterlace Only Mode.
| XVprocSsPtr | is pointer to the Video Processing subsystem instance |
| #define XVprocSs_IsConfigModeHCResampleOnly | ( | XVprocSsPtr | ) | ((XVprocSsPtr)->Config.Topology == XVPROCSS_TOPOLOGY_HCRESAMPLE_ONLY) |
This macro checks if subsystem configuration is in H Chroma Resample Mode.
| XVprocSsPtr | is pointer to the Video Processing subsystem instance |
| #define XVprocSs_IsConfigModeMax | ( | XVprocSsPtr | ) | ((XVprocSsPtr)->Config.Topology == XVPROCSS_TOPOLOGY_FULL_FLEDGED) |
This macro checks if subsystem is in Maximum (Full_Fledged) configuration.
| XVprocSsPtr | is a pointer to the Video Processing subsystem instance |
Referenced by XVprocSs_GetZoomPipWindow(), XVprocSs_ReportSubsystemConfig(), XVprocSs_SetPipMode(), XVprocSs_SetZoomMode(), XVprocSs_SetZoomPipWindow(), and XVprocSs_UpdateZoomPipWindow().
| #define XVprocSs_IsConfigModeSscalerOnly | ( | XVprocSsPtr | ) | ((XVprocSsPtr)->Config.Topology == XVPROCSS_TOPOLOGY_SCALER_ONLY) |
This macro checks if subsystem configuration is in Scaler Only Mode.
| XVprocSsPtr | is pointer to the Video Processing subsystem instance |
| #define XVprocSs_IsConfigModeVCResampleOnly | ( | XVprocSsPtr | ) | ((XVprocSsPtr)->Config.Topology == XVPROCSS_TOPOLOGY_VCRESAMPLE_ONLY) |
This macro checks if subsystem configuration is in V Chroma ResampleMode.
| XVprocSsPtr | is pointer to the Video Processing subsystem instance |
| #define XVprocSs_IsPipModeOn | ( | XVprocSsPtr | ) | ((XVprocSsPtr)->CtxtData.PipEn) |
This macro returns the current state of PIP Mode stored in subsystem internal scratch pad memory.
| XVprocSsPtr | is a pointer to the Video Processing subsystem instance |
Referenced by XVprocSs_ReportSubsystemConfig(), XVprocSs_SetupRouterDataFlow(), XVprocSs_UpdateZoomPipWindow(), and XVprocSs_VdmaSetWinToDnScaleMode().
| #define XVprocSs_IsZoomModeOn | ( | XVprocSsPtr | ) | ((XVprocSsPtr)->CtxtData.ZoomEn) |
This macro returns the current state of Zoom Mode stored in subsystem internal scratch pad memory.
| XVprocSsPtr | is a pointer to the Video Processing subsystem instance |
Referenced by XVprocSs_ReportSubsystemConfig(), XVprocSs_SetupRouterDataFlow(), and XVprocSs_VdmaSetWinToUpScaleMode().
| #define XVprocSs_ResetPipModeFlag | ( | XVprocSsPtr | ) | ((XVprocSsPtr)->CtxtData.PipEn = FALSE) |
This macro clears the PIP mode flag stored in subsystem internal scratch pad memory.
This call has no side-effect
| XVprocSsPtr | is a pointer to the Video Processing subsystem instance |
| #define XVprocSs_ResetZoomModeFlag | ( | XVprocSsPtr | ) | ((XVprocSsPtr)->CtxtData.ZoomEn = FALSE) |
This macro clears the ZOOM mode flag stored in subsystem internal scratch pad memory.
This call has no side-effect
| XVprocSsPtr | is pointer to the Video Processing subsystem instance |
| #define XVprocSs_SetStreamColorDepth | ( | Stream, | |
| ColorDepth | |||
| ) | ((Stream)->ColorDepth = ColorDepth) |
This macro sets the specified stream's color depth.
It can be used to update input or output stream. This call has no side-effect in isolation For change to take effect user must trigger processing path reconfiguration by calling XVprocSs_ConfigureSubsystem()
| Stream | is a pointer to the Subsystem Input or Output Stream |
| ColorDepth | is the requested color depth |
| #define XVprocSs_SetStreamColorFormat | ( | Stream, | |
| ColorFormat | |||
| ) | ((Stream)->ColorFormatId = ColorFormat) |
This macro sets the specified stream's color format.
It can be used to update input or output stream. This call has no side-effect in isolation. For change to take effect user must trigger processing path reconfiguration by calling XVprocSs_ConfigureSubsystem()
| Stream | is a pointer to the Subsystem Input or Output Stream |
| ColorFormat | is the requested color format |
This typedef enumerates supported Color Channels.
This typedef enumerates supported subsystem configuration topology.
| enum XVprocSs_ScaleMode |
This typedef enumerates supported scaling modes.
| enum XVPROCSS_SUBCORE_ID |
Subsystem sub-core layer 2 header files Layer 2 includes Layer-1.
This typedef enumerates the AXIS Switch Port for Sub-Core connection
| enum XVprocSs_Win |
This typedef enumerates types of Windows (Sub-frames) available in the Subsystem.
| int XVprocSs_CfgInitialize | ( | XVprocSs * | InstancePtr, |
| XVprocSs_Config * | CfgPtr, | ||
| UINTPTR | EffectiveAddr | ||
| ) |
This function initializes the video subsystem and included sub-cores.
This function must be called prior to using the subsystem. Initialization includes setting up the instance data for top level as well as all included sub-core therein, and ensuring the hardware is in a known stable state.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
| CfgPtr | points to the configuration structure associated with the subsystem instance. |
| EffectiveAddr | is the base address of the device. If address translation is being used, then this parameter must reflect the virtual base address. Otherwise, the physical address should be used. |
References XVprocSs_Config::BaseAddress, XVprocSs_Config::ColorDepth, XVprocSs::Config, XVprocSs::CscPtr, XVprocSs::CtxtData, XVprocSs_ContextData::DeintBufAddr, XVprocSs::DeintPtr, XVprocSs::FrameBufBaseaddr, XVprocSs_Config::HasMADI, XVprocSs::HcrsmplrPtr, XVprocSs::HscalerPtr, XVprocSs::IsReady, XVprocSs::LboxPtr, XVprocSs_Config::MaxHeight, XVprocSs_Config::MaxWidth, XVprocSs_Config::NumVidComponents, XVprocSs::RouterPtr, XVprocSs::RstAximmPtr, XVprocSs::RstAxisPtr, XVprocSs::VcrsmplrInPtr, XVprocSs::VcrsmplrOutPtr, XVprocSs::VdmaPtr, XVprocSs::VscalerPtr, XVPROCSS_EVT_CHK_BASEADDR, XVPROCSS_EVT_CHK_TOPO, XVPROCSS_EVT_INIT, XVprocSs_GetSubsystemTopology, XVprocSs_LogWrite(), XVprocSs_Reset(), XVprocSs_SubcoreInitCsc(), XVprocSs_SubcoreInitDeinterlacer(), XVprocSs_SubcoreInitHCrsmplr(), XVprocSs_SubcoreInitHScaler(), XVprocSs_SubcoreInitLetterbox(), XVprocSs_SubcoreInitResetAximm(), XVprocSs_SubcoreInitResetAxis(), XVprocSs_SubcoreInitRouter(), XVprocSs_SubcoreInitVCrsmpleIn(), XVprocSs_SubcoreInitVCrsmpleOut(), XVprocSs_SubcoreInitVdma(), and XVprocSs_SubcoreInitVScaler().
Referenced by XSys_Init().
| s32 XVprocSs_GetPictureBrightness | ( | XVprocSs * | InstancePtr | ) |
This function returns picture brighntess setting.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
References XVprocSs::CscPtr.
| XVidC_ColorRange XVprocSs_GetPictureColorRange | ( | XVprocSs * | InstancePtr | ) |
This function returns picture color range for output.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
References XVprocSs::CscPtr.
| XVidC_ColorStd XVprocSs_GetPictureColorStdIn | ( | XVprocSs * | InstancePtr | ) |
This function returns picture color standard setting for input.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
References XVprocSs::CscPtr.
| XVidC_ColorStd XVprocSs_GetPictureColorStdOut | ( | XVprocSs * | InstancePtr | ) |
This function returns picture color standard setting for output.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
References XVprocSs::CscPtr.
| s32 XVprocSs_GetPictureContrast | ( | XVprocSs * | InstancePtr | ) |
This function returns picture contrast setting.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
References XVprocSs::CscPtr.
| s32 XVprocSs_GetPictureGain | ( | XVprocSs * | InstancePtr, |
| XVprocSs_ColorChannel | ChId | ||
| ) |
This function returns picture gain setting for the specified color channel.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
| ChId | is the color channel id for which gain is requested |
References XVprocSs::CscPtr.
| s32 XVprocSs_GetPictureSaturation | ( | XVprocSs * | InstancePtr | ) |
This function returns picture saturation setting.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
References XVprocSs::CscPtr.
| void XVprocSs_GetZoomPipWindow | ( | XVprocSs * | InstancePtr, |
| XVprocSs_Win | mode, | ||
| XVidC_VideoWindow * | win | ||
| ) |
This function reads the user defined Zoom/Pip window from scratch pad memory.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
| mode | is feature (PIP or ZOOM) whose window coordinates are to be retrieved |
| win | is structure that will contain read window coordinates and size |
References XVprocSs::CtxtData, XVprocSs_ContextData::RdWindow, XVprocSs_ContextData::WrWindow, XVPROCSS_EDAT_SUCCESS, XVPROCSS_EVT_GET_ZPWIN, XVprocSs_IsConfigModeMax, and XVprocSs_LogWrite().
Referenced by XVprocSs_ReportSubsystemConfig(), XVprocSs_VdmaSetWinToDnScaleMode(), and XVprocSs_VdmaSetWinToUpScaleMode().
| void XVprocSs_LoadChromaResamplerCoeff | ( | XVprocSs * | InstancePtr, |
| u32 | CoreId, | ||
| u16 | num_taps, | ||
| const short * | Coeff | ||
| ) |
This function enables user to load external filter coefficients for Chroma Resampler cores, independently for H & V.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
| CoreId | is the resampler core to be worked on
|
| num_taps | is the taps of the resampler hw instance |
| Coeff | is the pointer to the filter table to be loaded |
References XVprocSs::HcrsmplrPtr, XVprocSs::VcrsmplrInPtr, XVprocSs::VcrsmplrOutPtr, XVPROCSS_EVT_CFG_HCR, XVPROCSS_EVT_CFG_VCRI, XVPROCSS_EVT_CFG_VCRO, and XVprocSs_LogWrite().
| void XVprocSs_LoadScalerCoeff | ( | XVprocSs * | InstancePtr, |
| u32 | CoreId, | ||
| u16 | num_phases, | ||
| u16 | num_taps, | ||
| const short * | Coeff | ||
| ) |
This function enables user to load external filter coefficients for Scaler cores, independently for H & V.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
| CoreId | is the Scaler core to be worked on
|
| num_phases | is the number of phases supported by Scaler |
| num_taps | is the effective taps to be used by Scaler |
| Coeff | is the pointer to the filter table to be loaded |
References XVprocSs::HscalerPtr, XVprocSs::VscalerPtr, XVPROCSS_EVT_CFG_HSCALER, XVPROCSS_EVT_CFG_VSCALER, and XVprocSs_LogWrite().
| void XVprocSs_LogDisplay | ( | XVprocSs * | InstancePtr | ) |
This function will read and print the entire event log.
| InstancePtr | is a pointer to the XVprocSs core instance. |
References XVPROCSS_EDAT_SUCCESS, XVPROCSS_EVT_CFG_CSC, XVPROCSS_EVT_CFG_DEINT, XVPROCSS_EVT_CFG_HCR, XVPROCSS_EVT_CFG_HSCALER, XVPROCSS_EVT_CFG_MAX, XVPROCSS_EVT_CFG_VCRI, XVPROCSS_EVT_CFG_VCRO, XVPROCSS_EVT_CFG_VPSS, XVPROCSS_EVT_CFG_VSCALER, XVPROCSS_EVT_CFGERR_VDMA, XVPROCSS_EVT_CHK_BASEADDR, XVPROCSS_EVT_CHK_TOPO, XVPROCSS_EVT_GET_ZPWIN, XVPROCSS_EVT_INIT, XVPROCSS_EVT_INIT_LBOX, XVPROCSS_EVT_INIT_RESAXIM, XVPROCSS_EVT_INIT_RESAXIS, XVPROCSS_EVT_INIT_ROUTER, XVPROCSS_EVT_INIT_VDMA, XVPROCSS_EVT_NONE, XVPROCSS_EVT_OPERR_VDMA, XVPROCSS_EVT_RESET_VPSS, XVPROCSS_EVT_SET_PIPMODE, XVPROCSS_EVT_SET_PIPWIN, XVPROCSS_EVT_SET_ZOOMMODE, XVPROCSS_EVT_SET_ZOOMWIN, XVPROCSS_EVT_START_VPSS, XVPROCSS_EVT_STOP_VPSS, XVPROCSS_EVT_UPDATE_ZPWIN, and XVprocSs_LogRead().
| u16 XVprocSs_LogRead | ( | XVprocSs * | InstancePtr | ) |
This function will read the last event from the log.
| InstancePtr | is a pointer to the XVprocSs core instance. |
References XVprocSs::Log, XVPROCSS_EVT_BUFFSIZE, and XVPROCSS_EVT_NONE.
Referenced by XVprocSs_LogDisplay().
| void XVprocSs_LogReset | ( | XVprocSs * | InstancePtr | ) |
This function will reset the driver's logging mechanism.
| InstancePtr | is a pointer to the XVprocSs core instance. |
References XVprocSs::Log.
Referenced by XSys_Init().
| void XVprocSs_LogWrite | ( | XVprocSs * | InstancePtr, |
| XVprocSs_LogEvent | Evt, | ||
| u8 | Data | ||
| ) |
This function will insert an event in the driver's logging mechanism.
| InstancePtr | is a pointer to the XVprocSs core instance. |
| Evt | is the event type to log. |
| Data | is the associated data for the event. |
References XVprocSs::Log, XVPROCSS_EVT_BUFFSIZE, and XVPROCSS_EVT_LAST_ENUM.
Referenced by XVprocSs_BuildRoutingTable(), XVprocSs_CfgInitialize(), XVprocSs_GetZoomPipWindow(), XVprocSs_LoadChromaResamplerCoeff(), XVprocSs_LoadScalerCoeff(), XVprocSs_ProgRouterMux(), XVprocSs_Reset(), XVprocSs_SetPictureDemoWindow(), XVprocSs_SetPIPBackgroundColor(), XVprocSs_SetPipMode(), XVprocSs_SetSubsystemConfig(), XVprocSs_SetupRouterDataFlow(), XVprocSs_SetZoomMode(), XVprocSs_SetZoomPipWindow(), XVprocSs_Start(), XVprocSs_Stop(), XVprocSs_SubcoreInitCsc(), XVprocSs_SubcoreInitDeinterlacer(), XVprocSs_SubcoreInitHCrsmplr(), XVprocSs_SubcoreInitHScaler(), XVprocSs_SubcoreInitLetterbox(), XVprocSs_SubcoreInitResetAximm(), XVprocSs_SubcoreInitResetAxis(), XVprocSs_SubcoreInitRouter(), XVprocSs_SubcoreInitVCrsmpleIn(), XVprocSs_SubcoreInitVCrsmpleOut(), XVprocSs_SubcoreInitVdma(), XVprocSs_SubcoreInitVScaler(), XVprocSs_UpdateZoomPipWindow(), XVprocSs_VdmaReadSetup(), XVprocSs_VdmaReset(), XVprocSs_VdmaStartTransfer(), and XVprocSs_VdmaWriteSetup().
| void XVprocSs_ReportSubcoreStatus | ( | XVprocSs * | InstancePtr, |
| u32 | SubcoreId | ||
| ) |
This function reports the status of specified sub-core.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
| SubcoreId | is the subcore index from the below list
|
References XVprocSs::CscPtr, XVprocSs::CtxtData, XVprocSs::DeintPtr, XVprocSs::HcrsmplrPtr, XVprocSs::HscalerPtr, XVprocSs::LboxPtr, XVprocSs_ContextData::PixelWidthInBits, XVprocSs::VcrsmplrInPtr, XVprocSs::VcrsmplrOutPtr, XVprocSs::VscalerPtr, and XVprocSs_VdmaDbgReportStatus().
| void XVprocSs_ReportSubsystemConfig | ( | XVprocSs * | InstancePtr | ) |
This function reports the subsystem HW and input/output stream configuration.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
References XVprocSs::CtxtData, XVprocSs_ContextData::RtngTable, XVprocSs::VidIn, XVprocSs::VidOut, XVprocSs_GetPipZoomWinHStepSize, XVprocSs_GetZoomPipWindow(), XVprocSs_IsConfigModeMax, XVprocSs_IsPipModeOn, and XVprocSs_IsZoomModeOn.
| void XVprocSs_ReportSubsystemCoreInfo | ( | XVprocSs * | InstancePtr | ) |
This function reports Video Processing Subsystem HW configuration.
| InstancePtr | is a pointer to the Subsystem instance. |
References XVprocSs_Config::ColorDepth, XVprocSs::Config, XVprocSs::CscPtr, XVprocSs::DeintPtr, XVprocSs::HcrsmplrPtr, XVprocSs::HscalerPtr, XVprocSs::LboxPtr, XVprocSs_Config::MaxHeight, XVprocSs_Config::MaxWidth, XVprocSs_Config::NumVidComponents, XVprocSs_Config::PixPerClock, XVprocSs::RouterPtr, XVprocSs::RstAximmPtr, XVprocSs::RstAxisPtr, XVprocSs::VcrsmplrInPtr, XVprocSs::VcrsmplrOutPtr, XVprocSs::VdmaPtr, XVprocSs::VscalerPtr, and XVprocSs_GetSubsystemTopology.
Referenced by XSys_ReportSystemInfo().
| void XVprocSs_Reset | ( | XVprocSs * | InstancePtr | ) |
This function resets the video subsystem sub-cores.
There are 2 reset networks within the subsystem
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
XVprocSs_Reset,_Start controls vpss resets as shown axis_int -—_______________________-----------------------------— axis_ext -—________________________________________________----— aximm --------—_______--------------------------------------— | 100us| 100us| 1000us | 1000us | | _Reset...............................| | Program VSPP IP| _Start
References XVprocSs::CtxtData, XVprocSs::RstAximmPtr, XVprocSs::RstAxisPtr, XVprocSs_ContextData::StartCore, XVPROCSS_EDAT_SUCCESS, XVPROCSS_EVT_RESET_VPSS, XVprocSs_LogWrite(), XVPROCSS_RSTMASK_IP_AXIMM, XVPROCSS_RSTMASK_IP_AXIS, and XVprocSs_VdmaReset().
Referenced by XVprocSs_CfgInitialize().
| void XVprocSs_SetFrameBufBaseaddr | ( | XVprocSs * | InstancePtr, |
| UINTPTR | addr | ||
| ) |
This function sets the base address of the video frame buffers used by the subsystem instance.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
| addr | is the base address of the video frame buffers |
References XVprocSs::FrameBufBaseaddr.
Referenced by XSys_Init().
| void XVprocSs_SetPictureBrightness | ( | XVprocSs * | InstancePtr, |
| s32 | NewValue | ||
| ) |
This function updates picture brighntess setting with specified value.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
| NewValue | is the new value to be written
|
References XVprocSs::CscPtr.
| void XVprocSs_SetPictureColorRange | ( | XVprocSs * | InstancePtr, |
| XVidC_ColorRange | NewVal | ||
| ) |
This function sets picture color range for output.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
| NewVal | is the required color range
|
References XVprocSs::CscPtr.
| void XVprocSs_SetPictureColorStdIn | ( | XVprocSs * | InstancePtr, |
| XVidC_ColorStd | NewVal | ||
| ) |
This function sets picture color standard setting for input.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
| NewVal | is the required color standard
|
References XVprocSs::CscPtr.
| void XVprocSs_SetPictureColorStdOut | ( | XVprocSs * | InstancePtr, |
| XVidC_ColorStd | NewVal | ||
| ) |
This function sets picture color standard setting for output.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
| NewVal | is the required color standard
|
References XVprocSs::CscPtr.
| void XVprocSs_SetPictureContrast | ( | XVprocSs * | InstancePtr, |
| s32 | NewValue | ||
| ) |
This function updates picture contrast setting with specified value.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
| NewValue | is the new value to be written
|
References XVprocSs::CscPtr.
| int XVprocSs_SetPictureDemoWindow | ( | XVprocSs * | InstancePtr, |
| XVidC_VideoWindow * | Win | ||
| ) |
This function sets picture Demo Window.
Post this function call all further picture settings will apply only within the defined window. Demo window gets reset every time subsystem configuration changes
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
| Win | is the pointer to window coordinates within which picture settings should be applied |
References XVprocSs::CscPtr, XVPROCSS_EVT_CFG_CSC, and XVprocSs_LogWrite().
| void XVprocSs_SetPictureGain | ( | XVprocSs * | InstancePtr, |
| XVprocSs_ColorChannel | ChId, | ||
| s32 | NewValue | ||
| ) |
This function updates picture gain setting with specified value.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
| ChId | is the color channel id for which gain is to be updated |
| NewValue | is the new value to be written
|
References XVprocSs::CscPtr.
| void XVprocSs_SetPictureSaturation | ( | XVprocSs * | InstancePtr, |
| s32 | NewValue | ||
| ) |
This function updates picture saturation setting with specified value.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
| NewValue | is the new value to be written
|
References XVprocSs::CscPtr.
| void XVprocSs_SetPIPBackgroundColor | ( | XVprocSs * | InstancePtr, |
| XLboxColorId | ColorId | ||
| ) |
This function sets PIP background color.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
| ColorId | is the requested background color
|
References XVprocSs::CtxtData, XVprocSs_ContextData::LboxBkgndColor, XVprocSs::LboxPtr, XVprocSs_ContextData::StrmCformat, XVprocSs::VidIn, XVPROCSS_EVT_SET_PIPMODE, and XVprocSs_LogWrite().
| void XVprocSs_SetPipMode | ( | XVprocSs * | InstancePtr, |
| u8 | OnOff | ||
| ) |
This function configures the video subsystem to enable/disable PIP feature If PIP mode is set to ON but user has not set window coordinates then half of input stream resolution at coordinates 0,0 is set as the default zoom window.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
| OnOff | is the action required |
References XVprocSs::CtxtData, XVprocSs_ContextData::PipEn, XVPROCSS_EVT_SET_PIPMODE, XVprocSs_IsConfigModeMax, XVprocSs_LogWrite(), and XVprocSs_ContextData::ZoomEn.
| int XVprocSs_SetStreamResolution | ( | XVidC_VideoStream * | StreamPtr, |
| const XVidC_VideoMode | VmId, | ||
| XVidC_VideoTiming const * | Timing | ||
| ) |
This function sets the required subsystem video stream to the user provided stream and timing parameters.
| StreamPtr | is a pointer to the subsystem video stream to be configured |
| VmId | is the Video Mode ID of the new resolution to be set |
| Timing | is the timing parameters of the new resolution to be set |
| int XVprocSs_SetSubsystemConfig | ( | XVprocSs * | InstancePtr | ) |
This function is the entry point into the video processing subsystem driver processing path.
It will examine the instantiated subsystem configuration mode and the input and output stream configuration. Based on the available information control flow is determined and requisite sub-cores are configured to implement the supported use case
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
References XVPROCSS_EVT_CHK_TOPO, XVprocSs_GetSubsystemTopology, and XVprocSs_LogWrite().
| void XVprocSs_SetUserTimerHandler | ( | XVprocSs * | InstancePtr, |
| XVidC_DelayHandler | CallbackFunc, | ||
| void * | CallbackRef | ||
| ) |
This function registers the user defined delay/sleep function with subsystem.
| InstancePtr | is a pointer to the Subsystem instance |
| CallbackFunc | is the function pointer to the user defined delay function |
| CallbackRef | is the pointer to timer instance used by the delay function |
References XVprocSs::UsrDelayUs, and XVprocSs::UsrTmrPtr.
| int XVprocSs_SetVidStreamIn | ( | XVprocSs * | InstancePtr, |
| const XVidC_VideoStream * | StrmIn | ||
| ) |
This function configures the video subsystem input interface.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
| StrmIn | is the pointer to input stream configuration |
References XVprocSs::VidIn.
Referenced by XSys_SetStreamParam().
| int XVprocSs_SetVidStreamOut | ( | XVprocSs * | InstancePtr, |
| const XVidC_VideoStream * | StrmOut | ||
| ) |
This function configures the video subsystem output interface.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
| StrmOut | is the pointer to input stream configuration |
References XVprocSs::VidOut.
Referenced by XSys_SetStreamParam().
| void XVprocSs_SetZoomMode | ( | XVprocSs * | InstancePtr, |
| u8 | OnOff | ||
| ) |
This function configures the video subsystem to enable/disable ZOOM feature If ZOOM mode is set to ON but user has not set window coordinates then quarter of input stream resolution at coordinates 0,0 is set as the default zoom window.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
| OnOff | is the action required |
References XVprocSs::CtxtData, XVprocSs_ContextData::PipEn, XVPROCSS_EVT_SET_ZOOMMODE, XVprocSs_IsConfigModeMax, XVprocSs_LogWrite(), and XVprocSs_ContextData::ZoomEn.
| void XVprocSs_SetZoomPipWindow | ( | XVprocSs * | InstancePtr, |
| XVprocSs_Win | mode, | ||
| XVidC_VideoWindow * | win | ||
| ) |
This function allows user to set the Zoom or PIP window.
Scratch pad memory is updated with the new window information
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
| mode | is feature to be updated PIP or ZOOM |
| win | is structure that contains window coordinates and size |
References XVprocSs::Config, XVprocSs::CtxtData, XVprocSs_ContextData::PixelHStepSize, XVprocSs_Config::PixPerClock, XVprocSs_ContextData::RdWindow, XVprocSs::VdmaPtr, XVprocSs_ContextData::WrWindow, XVPROCSS_EDAT_SUCCESS, XVPROCSS_EVT_SET_PIPWIN, XVPROCSS_EVT_SET_ZOOMWIN, XVprocSs_IsConfigModeMax, and XVprocSs_LogWrite().
| void XVprocSs_Start | ( | XVprocSs * | InstancePtr | ) |
This function starts the video subsystem including all sub-cores that are included in the processing pipeline for a given use-case.
Video pipe is started from back to front
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
References XVprocSs::CscPtr, XVprocSs::CtxtData, XVprocSs::DeintPtr, XVprocSs::HcrsmplrPtr, XVprocSs::HscalerPtr, XVprocSs::LboxPtr, XVprocSs::RstAxisPtr, XVprocSs_ContextData::StartCore, XVprocSs::VcrsmplrInPtr, XVprocSs::VcrsmplrOutPtr, XVprocSs::VscalerPtr, XVPROCSS_EDAT_SUCCESS, XVPROCSS_EVT_START_VPSS, XVprocSs_LogWrite(), XVPROCSS_RSTMASK_VIDEO_IN, and XVprocSs_VdmaStartTransfer().
Referenced by XVprocSs_SetupRouterDataFlow().
| void XVprocSs_Stop | ( | XVprocSs * | InstancePtr | ) |
This function stops the video subsystem including all sub-cores Stop the video pipe starting from front to back.
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
References XVprocSs::CscPtr, XVprocSs::DeintPtr, XVprocSs::HcrsmplrPtr, XVprocSs::HscalerPtr, XVprocSs::LboxPtr, XVprocSs::VcrsmplrInPtr, XVprocSs::VcrsmplrOutPtr, XVprocSs::VdmaPtr, XVprocSs::VscalerPtr, XVPROCSS_EDAT_SUCCESS, XVPROCSS_EVT_STOP_VPSS, XVprocSs_LogWrite(), and XVprocSs_VdmaStop().
| void XVprocSs_UpdateZoomPipWindow | ( | XVprocSs * | InstancePtr | ) |
This function updates the Pip/Zoom window currently on screen in-place.
This implies the video is not blanked and the new coordinates will update instantly as the function executes
| InstancePtr | is a pointer to the Subsystem instance to be worked on. |
References XVprocSs::CtxtData, XVprocSs::LboxPtr, XVprocSs::VidOut, XVprocSs_ContextData::WrWindow, XVPROCSS_EDAT_SUCCESS, XVPROCSS_EVT_UPDATE_ZPWIN, XVprocSs_IsConfigModeMax, XVprocSs_IsPipModeOn, XVprocSs_LogWrite(), XVprocSs_VdmaSetWinToDnScaleMode(), XVprocSs_VdmaSetWinToUpScaleMode(), and XVprocSs_VdmaStartTransfer().