Lines Matching refs:object
169 I2SCC32XX_Object *object = (I2SCC32XX_Object *)handle->object; in I2S_init() local
170 object->isOpen = (bool)false; in I2S_init()
183 I2SCC32XX_Object *object; in I2S_open() local
187 object = handle->object; in I2S_open()
195 if (!isInitialized || object->isOpen) { in I2S_open()
211 object->hwi = HwiP_create(INT_I2S, (HwiP_Fxn)I2S_hwiIntFxn, &hwiParams); in I2S_open()
213 if (object->hwi == NULL) { in I2S_open()
219 object->isOpen = (bool)true; in I2S_open()
231 … Power_registerNotify(&(object->notifyObj), PowerCC32XX_AWAKE_LPDS, postNotify, (uint32_t)handle); in I2S_open()
237 object->activatedFlag = 0; in I2S_open()
251 I2SCC32XX_Object *object = handle->object; in I2S_close() local
259 object->activatedFlag = 0; in I2S_close()
263 if(object->dmaHandle != NULL) { in I2S_close()
264 UDMACC32XX_close(object->dmaHandle); in I2S_close()
265 object->dmaHandle = NULL; in I2S_close()
269 if(object->hwi != NULL) { in I2S_close()
270 HwiP_delete(object->hwi); in I2S_close()
271 object->hwi = NULL; in I2S_close()
274 Power_unregisterNotify(&(object->notifyObj)); in I2S_close()
282 object->isOpen = (bool)false; in I2S_close()
292 I2SCC32XX_Object *object = handle->object; in I2S_setReadQueueHead() local
293 I2SCC32XX_Interface *interface = &object->read; in I2S_setReadQueueHead()
305 I2SCC32XX_Object *object = handle->object; in I2S_setWriteQueueHead() local
306 I2SCC32XX_Interface *interface = &object->write; in I2S_setWriteQueueHead()
316 I2SCC32XX_Object *object = handle->object; in I2S_startClocks() local
320 uint8_t mode = ((object->noOfInputs != 0)? 1:0) << 1 | in I2S_startClocks()
321 ((object->noOfOutputs != 0)? 1:0) << 0; in I2S_startClocks()
327 object->activatedFlag |= I2S_STS_RSYNCERR | I2S_STS_XSYNCERR; in I2S_startClocks()
338 I2SCC32XX_Object *object = handle->object; in I2S_stopClocks() local
341 while(object->isLastReadTransfer || object->isLastWriteTransfer); in I2S_stopClocks()
347 object->activatedFlag &= ~(I2S_STS_RSYNCERR | I2S_STS_XSYNCERR); in I2S_stopClocks()
359 I2SCC32XX_Object *object = handle->object; in I2S_startRead() local
365 SD0 = &object->dataInterfaceSD0; in I2S_startRead()
366 SD1 = &object->dataInterfaceSD1; in I2S_startRead()
368 if(object->noOfInputs != 0) { in I2S_startRead()
371 if(object->isDMAUnused) { in I2S_startRead()
374 object->activatedFlag |= I2S_STS_ROVERN | I2S_STS_RDATA; in I2S_startRead()
375 object->updateDataReadFxn((uintptr_t)handle); in I2S_startRead()
381 object->updateDataReadFxn((uintptr_t)handle); in I2S_startRead()
382 MAP_I2SRxFIFOEnable(I2S_BASE, object->udmaArbLength, object->noOfInputs); in I2S_startRead()
388 object->activatedFlag |= I2S_STS_RLAST | I2S_STS_ROVERN | I2S_STS_RDMA; in I2S_startRead()
406 I2SCC32XX_Object *object = handle->object; in I2S_startWrite() local
412 SD0 = &object->dataInterfaceSD0; in I2S_startWrite()
413 SD1 = &object->dataInterfaceSD1; in I2S_startWrite()
415 if(object->noOfOutputs != 0) { in I2S_startWrite()
418 if(object->isDMAUnused) { in I2S_startWrite()
421 object->activatedFlag |= I2S_STS_XDATA | I2S_STS_XUNDRN; in I2S_startWrite()
422 object->updateDataWriteFxn((uintptr_t)handle); in I2S_startWrite()
428 object->updateDataWriteFxn((uintptr_t)handle); in I2S_startWrite()
429 MAP_I2STxFIFOEnable(I2S_BASE, object->udmaArbLength, object->noOfOutputs); in I2S_startWrite()
435 object->activatedFlag |= I2S_STS_XLAST | I2S_STS_XUNDRN | I2S_STS_XDMA; in I2S_startWrite()
453 I2SCC32XX_Object *object = handle->object; in I2S_stopRead() local
458 SD0 = &object->dataInterfaceSD0; in I2S_stopRead()
459 SD1 = &object->dataInterfaceSD1; in I2S_stopRead()
461 if(object->noOfInputs != 0) { in I2S_stopRead()
463 if(!object->isDMAUnused) { in I2S_stopRead()
465 object->isLastReadTransfer = (bool)true; in I2S_stopRead()
473 object->activatedFlag &= ~(I2S_STS_RDMA | I2S_STS_ROVERN); in I2S_stopRead()
491 I2SCC32XX_Object *object = handle->object; in I2S_stopWrite() local
496 SD0 = &object->dataInterfaceSD0; in I2S_stopWrite()
497 SD1 = &object->dataInterfaceSD1; in I2S_stopWrite()
499 if(object->noOfOutputs != 0) { in I2S_stopWrite()
501 if(!object->isDMAUnused) { in I2S_stopWrite()
503 object->isLastWriteTransfer = (bool)true; in I2S_stopWrite()
511 object->activatedFlag &= ~(I2S_STS_XDMA | I2S_STS_XUNDRN); in I2S_stopWrite()
550 I2SCC32XX_Object const *object = handle->object; in I2S_hwiIntFxn() local
556 if(object->isDMAUnused) { in I2S_hwiIntFxn()
564 uint32_t interruptStatus = (rawInterruptStatus & object->activatedFlag); in I2S_hwiIntFxn()
570 object->updateDataReadFxn(arg); in I2S_hwiIntFxn()
575 object->updateDataWriteFxn(arg); in I2S_hwiIntFxn()
612 object->errorCallback(handle, errStatus, NULL); in I2S_hwiIntFxn()
621 I2SCC32XX_Object *object = handle->object; in updateDataReadDMA() local
627 if(!object->isLastReadTransfer) { in updateDataReadDMA()
629 I2S_Transaction *transaction = (I2S_Transaction *)object->read.activeTransfer; in updateDataReadDMA()
633 …transLength = transLength / (object->memorySlotLength / BYTE_LENGTH); /* … in updateDataReadDMA()
635 …transLength = transLength - (transLength % object->udmaArbLength); /* … in updateDataReadDMA()
638 object->read.udmaConfig); in updateDataReadDMA()
647 …transLength = transLength * (object->memorySlotLength / BYTE_LENGTH); /* h… in updateDataReadDMA()
648 handleDMATransaction(handle, transaction, transLength, &object->read); in updateDataReadDMA()
656 SD0 = &object->dataInterfaceSD0; in updateDataReadDMA()
657 SD1 = &object->dataInterfaceSD1; in updateDataReadDMA()
660 object->activatedFlag &= ~(I2S_STS_RLAST | I2S_STS_RDMA | I2S_STS_ROVERN); in updateDataReadDMA()
671 object->isLastReadTransfer = (bool)false; in updateDataReadDMA()
681 I2SCC32XX_Object *object = handle->object; in updateDataWriteDMA() local
689 if(!object->isLastWriteTransfer) { in updateDataWriteDMA()
690 I2S_Transaction *transaction = (I2S_Transaction *)object->write.activeTransfer; in updateDataWriteDMA()
694 …transLength = transLength / (object->memorySlotLength / BYTE_LENGTH); /* … in updateDataWriteDMA()
696 …transLength = transLength - (transLength % object->udmaArbLength); /* … in updateDataWriteDMA()
699 object->write.udmaConfig); in updateDataWriteDMA()
708 …transLength = transLength * (object->memorySlotLength / BYTE_LENGTH); /* h… in updateDataWriteDMA()
709 handleDMATransaction(handle, transaction, transLength, &object->write); in updateDataWriteDMA()
716 SD0 = &object->dataInterfaceSD0; in updateDataWriteDMA()
717 SD1 = &object->dataInterfaceSD1; in updateDataWriteDMA()
720 object->activatedFlag &= ~(I2S_STS_XDMA | I2S_STS_XUNDRN | I2S_STS_XLAST); in updateDataWriteDMA()
731 object->isLastWriteTransfer = (bool)false; in updateDataWriteDMA()
747 I2SCC32XX_Object *object = handle->object; in handleDMATransaction() local
750 uint16_t dmaMinimumStep = object->udmaArbLength * object->memorySlotLength / BYTE_LENGTH; in handleDMATransaction()
792 I2SCC32XX_Object *object = handle->object; in updateDataReadCPU() local
797 SD0 = &object->dataInterfaceSD0; in updateDataReadCPU()
798 SD1 = &object->dataInterfaceSD1; in updateDataReadCPU()
800 I2S_Transaction *transaction = (I2S_Transaction *)object->read.activeTransfer; in updateDataReadCPU()
815 handleCPUTransaction(handle, &transaction, &object->read); in updateDataReadCPU()
829 handleCPUTransaction(handle, &transaction, &object->read); in updateDataReadCPU()
848 I2SCC32XX_Object *object = handle->object; in updateDataWriteCPU() local
853 SD0 = &object->dataInterfaceSD0; in updateDataWriteCPU()
854 SD1 = &object->dataInterfaceSD1; in updateDataWriteCPU()
856 I2S_Transaction *transaction = (I2S_Transaction *)object->write.activeTransfer; in updateDataWriteCPU()
873 handleCPUTransaction(handle, &transaction, &object->write); in updateDataWriteCPU()
888 handleCPUTransaction(handle, &transaction, &object->write); in updateDataWriteCPU()
912 I2SCC32XX_Object const *object = handle->object; in handleCPUTransaction() local
915 transaction->bytesTransferred += object->memorySlotLength / BYTE_LENGTH; in handleCPUTransaction()
948 I2SCC32XX_Object *object = handle->object; in initObject() local
958 SD0 = &object->dataInterfaceSD0; in initObject()
959 SD1 = &object->dataInterfaceSD1; in initObject()
961 object->moduleRole = params->moduleRole; in initObject()
962 object->invertWS = params->invertWS; in initObject()
963 object->samplingEdge = params->samplingEdge; in initObject()
964 object->isMSBFirst = params->isMSBFirst; in initObject()
965 object->samplingFrequency = params->samplingFrequency; in initObject()
966 object->dataShift = (params->trueI2sFormat)? DATA_SHIFT_1 : DATA_SHIFT_NONE; in initObject()
967 object->isLastReadTransfer = (bool)false; in initObject()
968 object->isLastWriteTransfer = (bool)false; in initObject()
978 object->memorySlotLength = I2S_MEMORY_LENGTH_8BITS; in initObject()
982 object->memorySlotLength = I2S_MEMORY_LENGTH_16BITS; in initObject()
986 object->memorySlotLength = I2S_MEMORY_LENGTH_32BITS; in initObject()
994 object->memorySlotLength = params->memorySlotLength; in initObject()
999 …object->dataLength = params->beforeWordPadding + params->bitsPerWord + params->afterWordPaddi… in initObject()
1002 object->sampleMask = 0xFFFFFFFF >> (32-object->memorySlotLength); in initObject()
1003 object->sampleRotation = (object->dataLength / HWRESOLUTION) % BYTE_LENGTH; in initObject()
1006 if(params->bitsPerWord < object->memorySlotLength) { in initObject()
1007 object->sampleMask &= (0xFFFFFFFF << (object->memorySlotLength - params->bitsPerWord)); in initObject()
1008 …object->sampleRotation += ((object->memorySlotLength - params->bitsPerWord) / HWRESOLUTION) % BYTE… in initObject()
1012 if(params->bitsPerWord > object->memorySlotLength) { in initObject()
1013 …object->sampleRotation -= ((params->bitsPerWord - object->memorySlotLength) / HWRESOLUTION) % BYTE… in initObject()
1018 object->sampleRotation -= (params->afterWordPadding / HWRESOLUTION) % BYTE_LENGTH; in initObject()
1025 object->isDMAUnused = params->isDMAUnused; in initObject()
1026 if(object->isDMAUnused) { in initObject()
1027 object->updateDataReadFxn = updateDataReadCPU; in initObject()
1028 object->updateDataWriteFxn = updateDataWriteCPU; in initObject()
1031 object->updateDataReadFxn = updateDataReadDMA; in initObject()
1032 object->updateDataWriteFxn = updateDataWriteDMA; in initObject()
1044 object->noOfInputs = ((SD0->interfaceConfig == I2S_SD0_INPUT)? 1: 0) in initObject()
1046 object->noOfOutputs = ((SD0->interfaceConfig == I2S_SD0_OUTPUT)? 1: 0) in initObject()
1055 …uint16_t const fixedBufferLength = (params->fixedBufferLength /(object->memorySlotLength/BYTE_LENG… in initObject()
1059 object->udmaArbLength = 2; in initObject()
1063 object->udmaArbLength = 1 << i; in initObject()
1068 object->udmaArbLength = UDMA_ARBLENGTH_DEFAULT; in initObject()
1073 DebugP_assert(object->udmaArbLength == 2 || in initObject()
1074 object->udmaArbLength == 4 || in initObject()
1075 object->udmaArbLength == 8 || in initObject()
1076 object->udmaArbLength == 16 ); in initObject()
1080 if(object->udmaArbLength == (1 << i)) { in initObject()
1085 object->read.udmaConfig = dmaRxConfig[indexDmaConfig] | dmaArbConfig[indexDmaArbConfig]; in initObject()
1086 object->read.stopInterface = I2S_stopRead; in initObject()
1087 object->read.callback = params->readCallback; in initObject()
1088 if((object->read.callback == NULL) && (object->noOfInputs != 0U)) { in initObject()
1092 object->write.udmaConfig = dmaTxConfig[indexDmaConfig] | dmaArbConfig[indexDmaArbConfig]; in initObject()
1093 object->write.stopInterface = I2S_stopWrite; in initObject()
1094 object->write.callback = params->writeCallback; in initObject()
1095 if((object->write.callback == NULL) && (object->noOfOutputs != 0U)) { in initObject()
1099 object->errorCallback = params->errorCallback; in initObject()
1100 if(object->errorCallback == NULL) { in initObject()
1104 object->read.activeTransfer = NULL; in initObject()
1105 object->write.activeTransfer = NULL; in initObject()
1191 I2SCC32XX_Object *object; in initDMA() local
1192 object = handle->object; in initDMA()
1194 if(!object->isDMAUnused) { in initDMA()
1196 object->dmaHandle = UDMACC32XX_open(); in initDMA()
1220 I2SCC32XX_Object const *object; in configSCK() local
1223 object = handle->object; in configSCK()
1229 unsigned long ulI2SClk = object->samplingFrequency * object->dataLength * 2; in configSCK()
1240 if(object->noOfOutputs != 0) { in configSCK()
1242 … HWREG(I2S_BASE + MCASP_O_ACLKXCTL) = (((object->samplingEdge << 7) & MCASP_ACLKXCTL_CLKXP) | in configSCK()
1243 … ((object->moduleRole << 5) & MCASP_ACLKXCTL_CLKXM) | in configSCK()
1248 if(object->noOfInputs != 0) { in configSCK()
1250 … HWREG(I2S_BASE + MCASP_O_ACLKRCTL) = (((object->samplingEdge << 7) & MCASP_ACLKRCTL_CLKRP) | in configSCK()
1251 … ((object->moduleRole << 5) & MCASP_ACLKRCTL_CLKRM) | in configSCK()
1262 I2SCC32XX_Object const *object; in configWS() local
1265 object = handle->object; in configWS()
1267 if(object->noOfInputs != 0) { in configWS()
1270 ((object->moduleRole << 1) & MCASP_RXFMCTL_FSRM) | in configWS()
1271 ((object->invertWS << 0) & MCASP_RXFMCTL_FSRP)); in configWS()
1277 ((object->moduleRole << 1) & MCASP_TXFMCTL_FSXM) | in configWS()
1278 ((object->invertWS << 0) & MCASP_TXFMCTL_FSXP)); in configWS()
1286 I2SCC32XX_Object const *object; in configSerialFormat() local
1293 object = handle->object; in configSerialFormat()
1294 SD0 = &object->dataInterfaceSD0; in configSerialFormat()
1295 SD1 = &object->dataInterfaceSD1; in configSerialFormat()
1306 if(object->dataLength > i) { in configSerialFormat()
1311 if(object->noOfInputs != 0) { in configSerialFormat()
1315 …HWREG(I2S_BASE + MCASP_O_RXFMT) = (((object->dataShift << MCASP_RXFMT_RDATDLY_S) & MCASP_RX… in configSerialFormat()
1316 … ((object->isMSBFirst << 15 ) & MCASP_RXFMT_RRVRS ) | in configSerialFormat()
1318 … ((object->isDMAUnused << 3 ) & MCASP_RXFMT_RBUSEL) | in configSerialFormat()
1319 … ((object->sampleRotation << MCASP_RXFMT_RROT_S ) & MCASP_RXFMT_RROT_M)); in configSerialFormat()
1320 HWREG(I2S_BASE + MCASP_O_RXMASK) = object->sampleMask; in configSerialFormat()
1327 …HWREG(I2S_BASE + MCASP_O_TXFMT) = (((object->dataShift << MCASP_TXFMT_XDATDLY_S) & MCASP_TX… in configSerialFormat()
1328 … ((object->isMSBFirst << 15 ) & MCASP_TXFMT_XRVRS ) | in configSerialFormat()
1330 … ((object->isDMAUnused << 3 ) & MCASP_TXFMT_XBUSEL) | in configSerialFormat()
1331 … ((object->sampleRotation << MCASP_TXFMT_XROT_S ) & MCASP_TXFMT_XROT_M)); in configSerialFormat()
1332 HWREG(I2S_BASE + MCASP_O_TXMASK) = object->sampleMask; in configSerialFormat()