XilinxProcessorIPLib/drivers/prc/src/xprc.c
void XPrc_SetRmClearingBsIndex(XPrc *InstancePtr, u16 VsmId, u16 RmId,
			u16 ClearingBsIndex)
{
	u32 Address;
	u32 BsIndex;
	u32 Data;

	Xil_AssertVoid(InstancePtr != NULL);
	Xil_AssertVoid(InstancePtr->IsReady == XIL_COMPONENT_IS_READY);
	Xil_AssertVoid(VsmId < XPRC_MAX_NUMBER_OF_VSMS);

	Address = XPrc_GetRegisterAddress(InstancePtr, VsmId,
				XPRC_RM_BS_INDEX_REG, RmId);

	/* Read the register and merge in the clearing BS index */
	BsIndex = XPrc_ReadReg(Address);
	Data = BsIndex;
	Data |= (ClearingBsIndex << XPRC_RM_CLEARING_BS_INDEX_SHIFT);

	xprc_printf(XPRC_DEBUG_GENERAL,"XPrc_SetRmClearingBsIndex :: Instance"
		"%d, VSMID = %x, Address = %x, Rm = %x, Data = %x,"
		"Clearing Bs Index = %x, Bs Index = %x\n\r",
		InstancePtr->Config.DeviceId, VsmId, Address, RmId, Data,
		ClearingBsIndex, BsIndex);

	XPrc_WriteReg(Address, Data);
}
/*****************************************************************************/
/**
*
* This function set the CLEAR_BS_INDEX field in the RM_BS_INDEX register to
* specify which row of the BS Information tables holds the clearing bitstream
* for the Reconfigurable Module in the Virtual Socket Manager.
*
* @param	InstancePtr is a pointer to the PRC instance.
* @param	VsmId is the identifier of the VSM to access.
* @param	RmId is the identifier of the Reconfigurable Module.
*		bitstream.
* @param	ClearingBsIndex is the row number in the Bitstream Information
*		register bank that holds information about the clearing
*		bitstream for the Reconfigurable Module.
*
* @return	None.
*
* @note		This is only needed when the device being managed is an
*		UltraScale device. This must be called after XPrc_SetRmBsIndex
*
******************************************************************************/
This function set the CLEAR_BS_INDEX field in the RM_BS_INDEX register to
specify which row of the BS Information tables holds the clearing bitstream
for the Reconfigurable Module in the Virtual Socket Manager.
This function set the CLEAR_BS_INDEX field in the RM_BS_INDEX register to specify which row of the BS Information tables holds the clearing bitstream for the Reconfigurable Module in the Virtual Socket Manager .
void XPrc_SetRmClearingBsIndex(XPrc *InstancePtr, u16 VsmId, u16 RmId,
			u16 ClearingBsIndex)
{
	u32 Address;
	u32 BsIndex;
	u32 Data;
	Xil_AssertVoid(InstancePtr != NULL);
	Xil_AssertVoid(InstancePtr->IsReady == XIL_COMPONENT_IS_READY);
	Xil_AssertVoid(VsmId < XPRC_MAX_NUMBER_OF_VSMS);
	Address = XPrc_GetRegisterAddress(InstancePtr, VsmId,
				XPRC_RM_BS_INDEX_REG, RmId);
	BsIndex = XPrc_ReadReg(Address);
	Data = BsIndex;
	Data |= (ClearingBsIndex << XPRC_RM_CLEARING_BS_INDEX_SHIFT);
	xprc_printf(XPRC_DEBUG_GENERAL,"XPrc_SetRmClearingBsIndex :: Instance"
		"%d, VSMID = %x, Address = %x, Rm = %x, Data = %x,"
		"Clearing Bs Index = %x, Bs Index = %x\n\r",
		InstancePtr->Config.DeviceId, VsmId, Address, RmId, Data,
		ClearingBsIndex, BsIndex);
	XPrc_WriteReg(Address, Data);
}
void XPrc_SetRmClearingBsIndex ( XPrc * InstancePtr , u16 VsmId , u16 RmId , u16 ClearingBsIndex ) { u32 Address ; u32 BsIndex ; u32 Data ; Xil_AssertVoid ( InstancePtr != NULL ) ; Xil_AssertVoid ( InstancePtr -> IsReady == XIL_COMPONENT_IS_READY ) ; Xil_AssertVoid ( VsmId < XPRC_MAX_NUMBER_OF_VSMS ) ; Address = XPrc_GetRegisterAddress ( InstancePtr , VsmId , XPRC_RM_BS_INDEX_REG , RmId ) ; BsIndex = XPrc_ReadReg ( Address ) ; Data = BsIndex ; Data |= ( ClearingBsIndex << XPRC_RM_CLEARING_BS_INDEX_SHIFT ) ; xprc_printf ( XPRC_DEBUG_GENERAL , " " " " " \n \r " , InstancePtr -> Config . DeviceId , VsmId , Address , RmId , Data , ClearingBsIndex , BsIndex ) ; XPrc_WriteReg ( Address , Data ) ; }
This function set the CLEAR_BS_INDEX field in the RM_BS_INDEX register to
specify which row of the BS Information tables holds the clearing bitstream
for the Reconfigurable Module in the Virtual Socket Manager.
This function set the CLEAR_BS_INDEX field in the RM_BS_INDEX register to specify which row of the BS Information tables holds the clearing bitstream for the Reconfigurable Module in the Virtual Socket Manager .
/* Read the register and merge in the clearing BS index */