XilinxProcessorIPLib/drivers/aienginev2/src/dma/xaie_dma_aieml.c
AieRC _XAieMl_DmaSetBdIteration(XAie_DmaDesc *DmaDesc, u32 StepSize, u8 Wrap,
		u8 IterCurr)
{
	const XAie_DmaBdProp *BdProp = DmaDesc->DmaMod->BdProp;

	if((StepSize > BdProp->IterStepSizeMax) || (Wrap > BdProp->IterWrapMax) ||
			(IterCurr > BdProp->IterCurrMax)) {
		XAIE_ERROR("Iteration parameters exceed max value.\n");
		return XAIE_ERR;
	}

	DmaDesc->MultiDimDesc.AieMlMultiDimDesc.IterDesc.StepSize = StepSize;
	DmaDesc->MultiDimDesc.AieMlMultiDimDesc.IterDesc.Wrap = Wrap;
	DmaDesc->MultiDimDesc.AieMlMultiDimDesc.IterCurr = IterCurr;

	return XAIE_OK;
}
/*****************************************************************************/
/**
*
* This API setups the iteration parameters for a Buffer descriptor.
*
* @param	DmaDesc: Initialized Dma Descriptor.
* @param	StepSize: Offset applied at each execution of the BD.
* @param	Wrap: Iteration Wrap.
* @param	IterCurr: Current iteration step. This field is incremented by
*		the hardware after BD is loaded.
*
* @return	XAIE_OK on success, Error code on failure.
*
* @note		Internal. The stepsize and wrap parameters operate at 32 bit
*		granularity. The address is the absolute address of the buffer
*		which is 32 bit aligned. The driver will configure the BD
*		register with necessary bits(<32 bits) as required by the
*		hardware.
*
******************************************************************************/
This API setups the iteration parameters for a Buffer descriptor.
This API setups the iteration parameters for a Buffer descriptor .
AieRC _XAieMl_DmaSetBdIteration(XAie_DmaDesc *DmaDesc, u32 StepSize, u8 Wrap,
		u8 IterCurr)
{
	const XAie_DmaBdProp *BdProp = DmaDesc->DmaMod->BdProp;
	if((StepSize > BdProp->IterStepSizeMax) || (Wrap > BdProp->IterWrapMax) ||
			(IterCurr > BdProp->IterCurrMax)) {
		XAIE_ERROR("Iteration parameters exceed max value.\n");
		return XAIE_ERR;
	}
	DmaDesc->MultiDimDesc.AieMlMultiDimDesc.IterDesc.StepSize = StepSize;
	DmaDesc->MultiDimDesc.AieMlMultiDimDesc.IterDesc.Wrap = Wrap;
	DmaDesc->MultiDimDesc.AieMlMultiDimDesc.IterCurr = IterCurr;
	return XAIE_OK;
}
AieRC _XAieMl_DmaSetBdIteration ( XAie_DmaDesc * DmaDesc , u32 StepSize , u8 Wrap , u8 IterCurr ) { const XAie_DmaBdProp * BdProp = DmaDesc -> DmaMod -> BdProp ; if ( ( StepSize > BdProp -> IterStepSizeMax ) || ( Wrap > BdProp -> IterWrapMax ) || ( IterCurr > BdProp -> IterCurrMax ) ) { XAIE_ERROR ( " \n " ) ; return XAIE_ERR ; } DmaDesc -> MultiDimDesc . AieMlMultiDimDesc . IterDesc . StepSize = StepSize ; DmaDesc -> MultiDimDesc . AieMlMultiDimDesc . IterDesc . Wrap = Wrap ; DmaDesc -> MultiDimDesc . AieMlMultiDimDesc . IterCurr = IterCurr ; return XAIE_OK ; }
This API setups the iteration parameters for a Buffer descriptor.
This API setups the iteration parameters for a Buffer descriptor .