XilinxProcessorIPLib/drivers/vprocss/src/xvprocss.c
void XVprocSs_LoadScalerCoeff(XVprocSs *InstancePtr,
		                      u32 CoreId,
                              u16 num_phases,
                              u16 num_taps,
                              const short *Coeff)
{
  /* Verify arguments */
  Xil_AssertVoid(InstancePtr != NULL);
  Xil_AssertVoid(Coeff != NULL);
  Xil_AssertVoid((CoreId == XVPROCSS_SUBCORE_SCALER_V) ||
		         (CoreId == XVPROCSS_SUBCORE_SCALER_H));

  switch(CoreId)
  {
    case XVPROCSS_SUBCORE_SCALER_V:
      if(InstancePtr->VscalerPtr) {
	    XV_VScalerLoadExtCoeff(InstancePtr->VscalerPtr,
		                       num_phases,
		                       num_taps,
		                       Coeff);
        XVprocSs_LogWrite(InstancePtr, XVPROCSS_EVT_CFG_VSCALER, XVPROCSS_EDAT_LDCOEF);
      } else {
        XVprocSs_LogWrite(InstancePtr, XVPROCSS_EVT_CFG_VSCALER, XVPROCSS_EDAT_IPABSENT);
      }
	  break;

    case XVPROCSS_SUBCORE_SCALER_H:
	  if(InstancePtr->HscalerPtr) {
	    XV_HScalerLoadExtCoeff(InstancePtr->HscalerPtr,
		                       num_phases,
		                       num_taps,
		                       Coeff);
        XVprocSs_LogWrite(InstancePtr, XVPROCSS_EVT_CFG_HSCALER, XVPROCSS_EDAT_LDCOEF);
      }	else {
        XVprocSs_LogWrite(InstancePtr, XVPROCSS_EVT_CFG_HSCALER, XVPROCSS_EDAT_IPABSENT);
	  }
	  break;

    default:
	  break;
  }
}
/*****************************************************************************/
/**
* This function enables user to load external filter coefficients for
* Scaler cores, independently for H & V
*
* @param  InstancePtr is a pointer to the Subsystem instance to be worked on.
* @param  CoreId is the Scaler core to be worked on
*           - XVPROCSS_SUBCORE_SCALER_V
*           - XVPROCSS_SUBCORE_SCALER_H
* @param  num_phases is the number of phases supported by Scaler
* @param  num_taps is the effective taps to be used by Scaler
* @param  Coeff is the pointer to the filter table to be loaded
*
* @return None
*
* @note   Applicable only if Scaler cores are included in the subsystem
*
******************************************************************************/
This function enables user to load external filter coefficients for
Scaler cores, independently for H & V
This function enables user to load external filter coefficients for Scaler cores independently for H & V
void XVprocSs_LoadScalerCoeff(XVprocSs *InstancePtr,
		                      u32 CoreId,
                              u16 num_phases,
                              u16 num_taps,
                              const short *Coeff)
{
  Xil_AssertVoid(InstancePtr != NULL);
  Xil_AssertVoid(Coeff != NULL);
  Xil_AssertVoid((CoreId == XVPROCSS_SUBCORE_SCALER_V) ||
		         (CoreId == XVPROCSS_SUBCORE_SCALER_H));
  switch(CoreId)
  {
    case XVPROCSS_SUBCORE_SCALER_V:
      if(InstancePtr->VscalerPtr) {
	    XV_VScalerLoadExtCoeff(InstancePtr->VscalerPtr,
		                       num_phases,
		                       num_taps,
		                       Coeff);
        XVprocSs_LogWrite(InstancePtr, XVPROCSS_EVT_CFG_VSCALER, XVPROCSS_EDAT_LDCOEF);
      } else {
        XVprocSs_LogWrite(InstancePtr, XVPROCSS_EVT_CFG_VSCALER, XVPROCSS_EDAT_IPABSENT);
      }
	  break;
    case XVPROCSS_SUBCORE_SCALER_H:
	  if(InstancePtr->HscalerPtr) {
	    XV_HScalerLoadExtCoeff(InstancePtr->HscalerPtr,
		                       num_phases,
		                       num_taps,
		                       Coeff);
        XVprocSs_LogWrite(InstancePtr, XVPROCSS_EVT_CFG_HSCALER, XVPROCSS_EDAT_LDCOEF);
      }	else {
        XVprocSs_LogWrite(InstancePtr, XVPROCSS_EVT_CFG_HSCALER, XVPROCSS_EDAT_IPABSENT);
	  }
	  break;
    default:
	  break;
  }
}
void XVprocSs_LoadScalerCoeff ( XVprocSs * InstancePtr , u32 CoreId , u16 num_phases , u16 num_taps , const short * Coeff ) { Xil_AssertVoid ( InstancePtr != NULL ) ; Xil_AssertVoid ( Coeff != NULL ) ; Xil_AssertVoid ( ( CoreId == XVPROCSS_SUBCORE_SCALER_V ) || ( CoreId == XVPROCSS_SUBCORE_SCALER_H ) ) ; switch ( CoreId ) { case XVPROCSS_SUBCORE_SCALER_V : if ( InstancePtr -> VscalerPtr ) { XV_VScalerLoadExtCoeff ( InstancePtr -> VscalerPtr , num_phases , num_taps , Coeff ) ; XVprocSs_LogWrite ( InstancePtr , XVPROCSS_EVT_CFG_VSCALER , XVPROCSS_EDAT_LDCOEF ) ; } else { XVprocSs_LogWrite ( InstancePtr , XVPROCSS_EVT_CFG_VSCALER , XVPROCSS_EDAT_IPABSENT ) ; } break ; case XVPROCSS_SUBCORE_SCALER_H : if ( InstancePtr -> HscalerPtr ) { XV_HScalerLoadExtCoeff ( InstancePtr -> HscalerPtr , num_phases , num_taps , Coeff ) ; XVprocSs_LogWrite ( InstancePtr , XVPROCSS_EVT_CFG_HSCALER , XVPROCSS_EDAT_LDCOEF ) ; } else { XVprocSs_LogWrite ( InstancePtr , XVPROCSS_EVT_CFG_HSCALER , XVPROCSS_EDAT_IPABSENT ) ; } break ; default : break ; } }
This function enables user to load external filter coefficients for
Scaler cores, independently for H & V
This function enables user to load external filter coefficients for Scaler cores independently for H & V
/* Verify arguments */