XilinxProcessorIPLib/drivers/hdcp1x/src/xhdcp1x_tx.c
static void XHdcp1x_TxStartComputations(XHdcp1x *InstancePtr,
		XHdcp1x_StateType *NextStatePtr)
{
	u64 Value = 0;
	u32 X = 0;
	u32 Y = 0;
	u32 Z = 0;

	/* Log */
	XHdcp1x_TxDebugLog(InstancePtr, "starting computations");

	/* Update Value with An */
	Value = InstancePtr->Tx.StateHelper;

	/* Load the cipher B registers with An */
	X = (u32)(Value & 0x0FFFFFFFul);
	Value >>= 28;
	Y = (u32)(Value & 0x0FFFFFFFul);
	Value >>= 28;
	Z = (u32)(Value & 0x000000FFul);
	if ((InstancePtr->Tx.Flags & XVPHY_FLAG_IS_REPEATER) != 0) {
		Z |= (1ul << 8);
	}
	XHdcp1x_CipherSetB(InstancePtr, X, Y, Z);

	/* Initiate the block cipher */
	XHdcp1x_CipherDoRequest(InstancePtr, XHDCP1X_CIPHER_REQUEST_BLOCK);

	/* Update NextStatePtr */
	*NextStatePtr = XHDCP1X_STATE_COMPUTATIONS;
}
/*****************************************************************************/
/**
* This function initiates the computations for a state machine.
*
* @param	InstancePtr is the HDCP receiver state machine.
* @param	NextStatePtr is the next state.
*
* @return	None.
*
* @note		None.
*
******************************************************************************/
This function initiates the computations for a state machine.
This function initiates the computations for a state machine .
static void XHdcp1x_TxStartComputations(XHdcp1x *InstancePtr,
		XHdcp1x_StateType *NextStatePtr)
{
	u64 Value = 0;
	u32 X = 0;
	u32 Y = 0;
	u32 Z = 0;
	XHdcp1x_TxDebugLog(InstancePtr, "starting computations");
	Value = InstancePtr->Tx.StateHelper;
	X = (u32)(Value & 0x0FFFFFFFul);
	Value >>= 28;
	Y = (u32)(Value & 0x0FFFFFFFul);
	Value >>= 28;
	Z = (u32)(Value & 0x000000FFul);
	if ((InstancePtr->Tx.Flags & XVPHY_FLAG_IS_REPEATER) != 0) {
		Z |= (1ul << 8);
	}
	XHdcp1x_CipherSetB(InstancePtr, X, Y, Z);
	XHdcp1x_CipherDoRequest(InstancePtr, XHDCP1X_CIPHER_REQUEST_BLOCK);
	*NextStatePtr = XHDCP1X_STATE_COMPUTATIONS;
}
static void XHdcp1x_TxStartComputations ( XHdcp1x * InstancePtr , XHdcp1x_StateType * NextStatePtr ) { u64 Value = 0 ; u32 X = 0 ; u32 Y = 0 ; u32 Z = 0 ; XHdcp1x_TxDebugLog ( InstancePtr , " " ) ; Value = InstancePtr -> Tx . StateHelper ; X = ( u32 ) ( Value & 0x0FFFFFFFul ) ; Value >>= 28 ; Y = ( u32 ) ( Value & 0x0FFFFFFFul ) ; Value >>= 28 ; Z = ( u32 ) ( Value & 0x000000FFul ) ; if ( ( InstancePtr -> Tx . Flags & XVPHY_FLAG_IS_REPEATER ) != 0 ) { Z |= ( 1ul << 8 ) ; } XHdcp1x_CipherSetB ( InstancePtr , X , Y , Z ) ; XHdcp1x_CipherDoRequest ( InstancePtr , XHDCP1X_CIPHER_REQUEST_BLOCK ) ; * NextStatePtr = XHDCP1X_STATE_COMPUTATIONS ; }
This function initiates the computations for a state machine.
This function initiates the computations for a state machine .
/* Log */ /* Update Value with An */ /* Load the cipher B registers with An */ /* Initiate the block cipher */ /* Update NextStatePtr */