XilinxProcessorIPLib/drivers/vprocss/src/xvprocss.c
void XVprocSs_Start(XVprocSs *InstancePtr)
{
  u8 *StartCorePtr;

  /* Verify arguments */
  Xil_AssertVoid(InstancePtr != NULL);

  StartCorePtr = &InstancePtr->CtxtData.StartCore[0];

  if(StartCorePtr[XVPROCSS_SUBCORE_CR_V_OUT])
    XV_VCrsmplStart(InstancePtr->VcrsmplrOutPtr);

  if(StartCorePtr[XVPROCSS_SUBCORE_CR_H])
    XV_HCrsmplStart(InstancePtr->HcrsmplrPtr);

  if(StartCorePtr[XVPROCSS_SUBCORE_CSC])
    XV_CscStart(InstancePtr->CscPtr);

  if(StartCorePtr[XVPROCSS_SUBCORE_LBOX])
    XV_LBoxStart(InstancePtr->LboxPtr);

  if(StartCorePtr[XVPROCSS_SUBCORE_SCALER_H])
    XV_HScalerStart(InstancePtr->HscalerPtr);

  if(StartCorePtr[XVPROCSS_SUBCORE_SCALER_V])
    XV_VScalerStart(InstancePtr->VscalerPtr);

  if(StartCorePtr[XVPROCSS_SUBCORE_VDMA])
    XVprocSs_VdmaStartTransfer(InstancePtr);

  if(StartCorePtr[XVPROCSS_SUBCORE_DEINT])
    XV_DeintStart(InstancePtr->DeintPtr);

  if(StartCorePtr[XVPROCSS_SUBCORE_CR_V_IN])
    XV_VCrsmplStart(InstancePtr->VcrsmplrInPtr);

  /* Subsystem ready to accept axis - Enable Video Input */
  XVprocSs_EnableBlock(InstancePtr->RstAxisPtr,  GPIO_CH_RESET_SEL, XVPROCSS_RSTMASK_VIDEO_IN);

  XVprocSs_LogWrite(InstancePtr, XVPROCSS_EVT_START_VPSS, XVPROCSS_EDAT_SUCCESS);
}
/****************************************************************************/
/**
* 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
* @param  InstancePtr is a pointer to the Subsystem instance to be worked on.
*
* @return None
*
* @note Cores are started only if the corresponding start flag in the scratch
*       pad memory is set. This allows to selectively start only those cores
*       included in the processing chain
******************************************************************************/
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
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
void XVprocSs_Start(XVprocSs *InstancePtr)
{
  u8 *StartCorePtr;
  Xil_AssertVoid(InstancePtr != NULL);
  StartCorePtr = &InstancePtr->CtxtData.StartCore[0];
  if(StartCorePtr[XVPROCSS_SUBCORE_CR_V_OUT])
    XV_VCrsmplStart(InstancePtr->VcrsmplrOutPtr);
  if(StartCorePtr[XVPROCSS_SUBCORE_CR_H])
    XV_HCrsmplStart(InstancePtr->HcrsmplrPtr);
  if(StartCorePtr[XVPROCSS_SUBCORE_CSC])
    XV_CscStart(InstancePtr->CscPtr);
  if(StartCorePtr[XVPROCSS_SUBCORE_LBOX])
    XV_LBoxStart(InstancePtr->LboxPtr);
  if(StartCorePtr[XVPROCSS_SUBCORE_SCALER_H])
    XV_HScalerStart(InstancePtr->HscalerPtr);
  if(StartCorePtr[XVPROCSS_SUBCORE_SCALER_V])
    XV_VScalerStart(InstancePtr->VscalerPtr);
  if(StartCorePtr[XVPROCSS_SUBCORE_VDMA])
    XVprocSs_VdmaStartTransfer(InstancePtr);
  if(StartCorePtr[XVPROCSS_SUBCORE_DEINT])
    XV_DeintStart(InstancePtr->DeintPtr);
  if(StartCorePtr[XVPROCSS_SUBCORE_CR_V_IN])
    XV_VCrsmplStart(InstancePtr->VcrsmplrInPtr);
  XVprocSs_EnableBlock(InstancePtr->RstAxisPtr,  GPIO_CH_RESET_SEL, XVPROCSS_RSTMASK_VIDEO_IN);
  XVprocSs_LogWrite(InstancePtr, XVPROCSS_EVT_START_VPSS, XVPROCSS_EDAT_SUCCESS);
}
void XVprocSs_Start ( XVprocSs * InstancePtr ) { u8 * StartCorePtr ; Xil_AssertVoid ( InstancePtr != NULL ) ; StartCorePtr = & InstancePtr -> CtxtData . StartCore [ 0 ] ; if ( StartCorePtr [ XVPROCSS_SUBCORE_CR_V_OUT ] ) XV_VCrsmplStart ( InstancePtr -> VcrsmplrOutPtr ) ; if ( StartCorePtr [ XVPROCSS_SUBCORE_CR_H ] ) XV_HCrsmplStart ( InstancePtr -> HcrsmplrPtr ) ; if ( StartCorePtr [ XVPROCSS_SUBCORE_CSC ] ) XV_CscStart ( InstancePtr -> CscPtr ) ; if ( StartCorePtr [ XVPROCSS_SUBCORE_LBOX ] ) XV_LBoxStart ( InstancePtr -> LboxPtr ) ; if ( StartCorePtr [ XVPROCSS_SUBCORE_SCALER_H ] ) XV_HScalerStart ( InstancePtr -> HscalerPtr ) ; if ( StartCorePtr [ XVPROCSS_SUBCORE_SCALER_V ] ) XV_VScalerStart ( InstancePtr -> VscalerPtr ) ; if ( StartCorePtr [ XVPROCSS_SUBCORE_VDMA ] ) XVprocSs_VdmaStartTransfer ( InstancePtr ) ; if ( StartCorePtr [ XVPROCSS_SUBCORE_DEINT ] ) XV_DeintStart ( InstancePtr -> DeintPtr ) ; if ( StartCorePtr [ XVPROCSS_SUBCORE_CR_V_IN ] ) XV_VCrsmplStart ( InstancePtr -> VcrsmplrInPtr ) ; XVprocSs_EnableBlock ( InstancePtr -> RstAxisPtr , GPIO_CH_RESET_SEL , XVPROCSS_RSTMASK_VIDEO_IN ) ; XVprocSs_LogWrite ( InstancePtr , XVPROCSS_EVT_START_VPSS , XVPROCSS_EDAT_SUCCESS ) ; }
This function starts the video subsystem including all sub-cores that are
included in the processing pipeline for a given use-case.
This function starts the video subsystem including all sub - cores that are included in the processing pipeline for a given use - case .
/* Verify arguments */ /* Subsystem ready to accept axis - Enable Video Input */