MV_STATUS my_mvSysCesaInit(int numOfSession, int queueDepth, void *osHandle) { MV_CESA_HAL_DATA halData; MV_UNIT_WIN_INFO addrWinMap[MAX_TARGETS + 1]; MV_STATUS status; MV_U8 chan; status = mvCtrlAddrWinMapBuild(addrWinMap, MAX_TARGETS + 1); if (status == MV_OK) { for (chan = 0; chan < MV_CESA_CHANNELS; chan++) { status = mvCesaTdmaWinInit(chan, addrWinMap); if (status != MV_OK) { mvOsPrintf("Error, unable to initialize CESA windows for channel(%d)\n", chan); break; } halData.sramPhysBase[chan] = (MV_ULONG)mv_crypto_virt_base_get(chan); halData.sramVirtBase[chan] = (MV_U8 *)mv_crypto_virt_base_get(chan); halData.sramOffset[chan] = 0; } if (status == MV_OK) { halData.ctrlModel = mvCtrlModelGet(); halData.ctrlRev = mvCtrlRevGet(); status = mvCesaHalInit(numOfSession, queueDepth, osHandle, &halData); } } return status; }
MV_STATUS mvCesaIfTdmaWinInit(MV_U8 chan, MV_UNIT_WIN_INFO *addrWinMap) { return mvCesaTdmaWinInit(chan, addrWinMap); }