/**************************************************************************** * DibBridgeTargetInit ****************************************************************************/ DIBSTATUS DibBridgeTargetInit(struct DibBridgeContext *pContext) { DIBSTATUS rc = DIBSTATUS_SUCCESS; /*** Initialize Mutex to avoid concurrent access ***/ DibAllocateLock(&pContext->DibTargetAccessLock); DibInitLock(&pContext->DibTargetAccessLock); DibAllocateLock(&pContext->BridgeTargetCtx.IrqLock); DibInitLock(&pContext->BridgeTargetCtx.IrqLock); /*** Configure Driver for SRAM interface ***/ DibBridgeSetHostIfMode(pContext, eSRAM); /*** Initialize SRAM Controller ***/ SramInit(pContext); return rc; }
/**************************************************************************** * DibBridgeTargetInit ****************************************************************************/ DIBSTATUS DibBridgeTargetInit(struct DibBridgeContext *pContext) { DIBSTATUS rc = DIBSTATUS_SUCCESS; /*** Initialize Mutex to avoid concurrent access ***/ DibAllocateLock(&pContext->DibTargetAccessLock); DibInitLock(&pContext->DibTargetAccessLock); DibAllocateLock(&pContext->BridgeTargetCtx.IrqLock); DibInitLock(&pContext->BridgeTargetCtx.IrqLock); /*** Configure Driver for I2C interface ***/ DibBridgeSetHostIfMode(pContext, eI2C); /*** Use a global variable to call in DibWaitForEvent ***/ pLocalContext = pContext; /*** Initialize I2C by Parallel port **i*/ I2CInit(); return rc; }