XilinxProcessorIPLib/drivers/vprocss/src/xvprocss.c
int XVprocSs_SetSubsystemConfig(XVprocSs *InstancePtr)
{
  int status = XST_SUCCESS;

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

  /* validate subsystem configuration */
  if(ValidateSubsystemConfig(InstancePtr) != XST_SUCCESS) {
	return(XST_FAILURE);
  }

  switch(XVprocSs_GetSubsystemTopology(InstancePtr))
  {
    case XVPROCSS_TOPOLOGY_FULL_FLEDGED:
        status = SetupModeMax(InstancePtr);
        break;

    case XVPROCSS_TOPOLOGY_SCALER_ONLY:
        //Only configuration supported is Scaler-only
        status = SetupModeScalerOnly(InstancePtr);
        break;

    case XVPROCSS_TOPOLOGY_CSC_ONLY:
        //Only configuration supported is CSC-only
        status = SetupModeCscOnly(InstancePtr);
        break;

    case XVPROCSS_TOPOLOGY_DEINTERLACE_ONLY:
        //Only configuration supported is Deint-only
        status = SetupModeDeintOnly(InstancePtr);
        break;

    case XVPROCSS_TOPOLOGY_VCRESAMPLE_ONLY:
        //Only configurations supported are 420 <-> 422
        status = SetupModeVCResampleOnly(InstancePtr);
        break;

    case XVPROCSS_TOPOLOGY_HCRESAMPLE_ONLY:
        //Only configurations supported are 422 <-> 444
        status = SetupModeHCResampleOnly(InstancePtr);
        break;

    default:
      XVprocSs_LogWrite(InstancePtr, XVPROCSS_EVT_CHK_TOPO, XVPROCSS_EDAT_FAILURE);
      status = XST_FAILURE;
      break;
  }
  return(status);
}
/*****************************************************************************/
/**
* 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
*
* @param  InstancePtr is a pointer to the Subsystem instance to be worked on.
*
* @return XST_SUCCESS if successful else XST_FAILURE
*
******************************************************************************/
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
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
int XVprocSs_SetSubsystemConfig(XVprocSs *InstancePtr)
{
  int status = XST_SUCCESS;
  Xil_AssertNonvoid(InstancePtr != NULL);
  if(ValidateSubsystemConfig(InstancePtr) != XST_SUCCESS) {
	return(XST_FAILURE);
  }
  switch(XVprocSs_GetSubsystemTopology(InstancePtr))
  {
    case XVPROCSS_TOPOLOGY_FULL_FLEDGED:
        status = SetupModeMax(InstancePtr);
        break;
    case XVPROCSS_TOPOLOGY_SCALER_ONLY:
        status = SetupModeScalerOnly(InstancePtr);
        break;
    case XVPROCSS_TOPOLOGY_CSC_ONLY:
        status = SetupModeCscOnly(InstancePtr);
        break;
    case XVPROCSS_TOPOLOGY_DEINTERLACE_ONLY:
        status = SetupModeDeintOnly(InstancePtr);
        break;
    case XVPROCSS_TOPOLOGY_VCRESAMPLE_ONLY:
        status = SetupModeVCResampleOnly(InstancePtr);
        break;
    case XVPROCSS_TOPOLOGY_HCRESAMPLE_ONLY:
        status = SetupModeHCResampleOnly(InstancePtr);
        break;
    default:
      XVprocSs_LogWrite(InstancePtr, XVPROCSS_EVT_CHK_TOPO, XVPROCSS_EDAT_FAILURE);
      status = XST_FAILURE;
      break;
  }
  return(status);
}
int XVprocSs_SetSubsystemConfig ( XVprocSs * InstancePtr ) { int status = XST_SUCCESS ; Xil_AssertNonvoid ( InstancePtr != NULL ) ; if ( ValidateSubsystemConfig ( InstancePtr ) != XST_SUCCESS ) { return ( XST_FAILURE ) ; } switch ( XVprocSs_GetSubsystemTopology ( InstancePtr ) ) { case XVPROCSS_TOPOLOGY_FULL_FLEDGED : status = SetupModeMax ( InstancePtr ) ; break ; case XVPROCSS_TOPOLOGY_SCALER_ONLY : status = SetupModeScalerOnly ( InstancePtr ) ; break ; case XVPROCSS_TOPOLOGY_CSC_ONLY : status = SetupModeCscOnly ( InstancePtr ) ; break ; case XVPROCSS_TOPOLOGY_DEINTERLACE_ONLY : status = SetupModeDeintOnly ( InstancePtr ) ; break ; case XVPROCSS_TOPOLOGY_VCRESAMPLE_ONLY : status = SetupModeVCResampleOnly ( InstancePtr ) ; break ; case XVPROCSS_TOPOLOGY_HCRESAMPLE_ONLY : status = SetupModeHCResampleOnly ( InstancePtr ) ; break ; default : XVprocSs_LogWrite ( InstancePtr , XVPROCSS_EVT_CHK_TOPO , XVPROCSS_EDAT_FAILURE ) ; status = XST_FAILURE ; break ; } return ( status ) ; }
This function is the entry point into the video processing subsystem driver
processing path.
This function is the entry point into the video processing subsystem driver processing path .
/* Verify arguments */ /* validate subsystem configuration */ //Only configuration supported is Scaler-only //Only configuration supported is CSC-only //Only configuration supported is Deint-only //Only configurations supported are 420 <-> 422 //Only configurations supported are 422 <-> 444