XilinxProcessorIPLib/drivers/aienginev2/src/dma/xaie_dma_aieml.c
AieRC _XAieMl_DmaUpdateBdLen(XAie_DevInst *DevInst, const XAie_DmaMod *DmaMod,
		XAie_LocType Loc, u32 Len, u8 BdNum)
{
	u64 RegAddr;
	u32 RegVal, Mask;

	RegAddr = DmaMod->BaseAddr + BdNum * DmaMod->IdxOffset +
		_XAie_GetTileAddr(DevInst, Loc.Row, Loc.Col) +
		DmaMod->BdProp->Buffer->TileDmaBuff.BufferLen.Idx * 4U;

	Mask = DmaMod->BdProp->Buffer->TileDmaBuff.BufferLen.Mask;
	RegVal = XAie_SetField(Len,
			DmaMod->BdProp->Buffer->TileDmaBuff.BufferLen.Lsb,
			Mask);

	return XAie_MaskWrite32(DevInst, RegAddr, Mask, RegVal);
}
/*****************************************************************************/
/**
*
* This API updates the length of the buffer descriptor in the tile dma or mem
* tile dma module.
*
* @param	DevInst: Device Instance.
* @param	DmaMod: Dma module pointer
* @param	Loc: Location of AIE Tile
* @param	Len: Length of BD in bytes.
* @param	BdNum: Hardware BD number to be written to.
*
* @return	XAIE_OK on success, Error code on failure.
*
* @note		Internal only. This API accesses the hardware directly and does
*		not operate on software descriptor.
******************************************************************************/
This API updates the length of the buffer descriptor in the tile dma or mem
tile dma module.
This API updates the length of the buffer descriptor in the tile dma or mem tile dma module .
AieRC _XAieMl_DmaUpdateBdLen(XAie_DevInst *DevInst, const XAie_DmaMod *DmaMod,
		XAie_LocType Loc, u32 Len, u8 BdNum)
{
	u64 RegAddr;
	u32 RegVal, Mask;
	RegAddr = DmaMod->BaseAddr + BdNum * DmaMod->IdxOffset +
		_XAie_GetTileAddr(DevInst, Loc.Row, Loc.Col) +
		DmaMod->BdProp->Buffer->TileDmaBuff.BufferLen.Idx * 4U;
	Mask = DmaMod->BdProp->Buffer->TileDmaBuff.BufferLen.Mask;
	RegVal = XAie_SetField(Len,
			DmaMod->BdProp->Buffer->TileDmaBuff.BufferLen.Lsb,
			Mask);
	return XAie_MaskWrite32(DevInst, RegAddr, Mask, RegVal);
}
AieRC _XAieMl_DmaUpdateBdLen ( XAie_DevInst * DevInst , const XAie_DmaMod * DmaMod , XAie_LocType Loc , u32 Len , u8 BdNum ) { u64 RegAddr ; u32 RegVal , Mask ; RegAddr = DmaMod -> BaseAddr + BdNum * DmaMod -> IdxOffset + _XAie_GetTileAddr ( DevInst , Loc . Row , Loc . Col ) + DmaMod -> BdProp -> Buffer -> TileDmaBuff . BufferLen . Idx * 4U ; Mask = DmaMod -> BdProp -> Buffer -> TileDmaBuff . BufferLen . Mask ; RegVal = XAie_SetField ( Len , DmaMod -> BdProp -> Buffer -> TileDmaBuff . BufferLen . Lsb , Mask ) ; return XAie_MaskWrite32 ( DevInst , RegAddr , Mask , RegVal ) ; }
This API updates the length of the buffer descriptor in the tile dma or mem
tile dma module.
This API updates the length of the buffer descriptor in the tile dma or mem tile dma module .