Lines Matching refs:gpphTmlNfc_Context
44 phTmlNfc_Context_t *gpphTmlNfc_Context = NULL;
81 if (NULL != gpphTmlNfc_Context)
96 gpphTmlNfc_Context = malloc(sizeof(phTmlNfc_Context_t));
98 if (NULL == gpphTmlNfc_Context)
105 memset(gpphTmlNfc_Context, PH_TMLNFC_RESET_VALUE, sizeof(phTmlNfc_Context_t));
107 gpphTmlNfc_Context->bThreadDone = 1;
110 wInitStatus = phTmlNfc_i2c_open_and_configure(pConfig, &(gpphTmlNfc_Context->pDevHandle));
115 gpphTmlNfc_Context->pDevHandle = (void *) NFCSTATUS_INVALID_DEVICE;
119 gpphTmlNfc_Context->tReadInfo.bEnable = 0;
120 gpphTmlNfc_Context->tWriteInfo.bEnable = 0;
121 gpphTmlNfc_Context->tReadInfo.bThreadBusy = FALSE;
122 gpphTmlNfc_Context->tWriteInfo.bThreadBusy = FALSE;
124 if(0 != sem_init(&gpphTmlNfc_Context->rxSemaphore, 0, 0))
128 else if(0 != sem_init(&gpphTmlNfc_Context->txSemaphore, 0, 0))
132 else if(0 != sem_init(&gpphTmlNfc_Context->postMsgSemaphore, 0, 0))
138 sem_post(&gpphTmlNfc_Context->postMsgSemaphore);
147 gpphTmlNfc_Context->dwTimerId = phOsalNfc_Timer_Create();
148 if (PH_OSALNFC_TIMER_ID_INVALID != gpphTmlNfc_Context->dwTimerId)
151 gpphTmlNfc_Context->dwCallbackThreadId = pConfig->dwGetMsgThreadId;
153 gpphTmlNfc_Context->eConfig = phTmlNfc_e_DisableRetrans;
155 gpphTmlNfc_Context->bRetryCount = (2000 / PHTMLNFC_MAXTIME_RETRANSMIT) + 1;
156 gpphTmlNfc_Context->bWriteCbInvoked = FALSE;
195 gpphTmlNfc_Context->eConfig = eConfiguration;
201 gpphTmlNfc_Context->bRetryCount = bRetryCounter;
207 gpphTmlNfc_Context->bRetryCount = (2000 / PHTMLNFC_MAXTIME_RETRANSMIT) + 1;
235 pthread_create_status = pthread_create(&gpphTmlNfc_Context->readerThread,NULL,(void *)&phTmlNfc_TmlThread,
244 pthread_create_status = pthread_create(&gpphTmlNfc_Context->writerThread,NULL,(void *)&phTmlNfc_TmlWriterThread,
269 if ((gpphTmlNfc_Context->dwTimerId == dwTimerId) &&
282 gpphTmlNfc_Context->tWriteInfo.bThreadBusy = TRUE;
283 gpphTmlNfc_Context->tWriteInfo.bEnable = 1;
285 sem_post(&gpphTmlNfc_Context->txSemaphore);
307 wStatus = phOsalNfc_Timer_Start(gpphTmlNfc_Context->dwTimerId,
341 while (gpphTmlNfc_Context->bThreadDone)
346 sem_wait(&gpphTmlNfc_Context->rxSemaphore);
349 if (1 == gpphTmlNfc_Context->tReadInfo.bEnable)
359 if (NFCSTATUS_INVALID_DEVICE != (uintptr_t)gpphTmlNfc_Context->pDevHandle)
362 dwNoBytesWrRd = phTmlNfc_i2c_read(gpphTmlNfc_Context->pDevHandle, temp, 260);
367 sem_post(&gpphTmlNfc_Context->rxSemaphore);
371 memcpy(gpphTmlNfc_Context->tReadInfo.pBuffer, temp, dwNoBytesWrRd);
375 gpphTmlNfc_Context->tReadInfo.bEnable = 0;
376 if ((phTmlNfc_e_EnableRetrans == gpphTmlNfc_Context->eConfig) &&
377 (0x00 != (gpphTmlNfc_Context->tReadInfo.pBuffer[0] & 0xE0)))
382 uint32_t timerStatus = phOsalNfc_Timer_Stop(gpphTmlNfc_Context->dwTimerId);
389 gpphTmlNfc_Context->bWriteCbInvoked = FALSE;
393 gpphTmlNfc_Context->tReadInfo.wLength = (uint16_t) (dwNoBytesWrRd);
394 phNxpNciHal_print_packet("RECV", gpphTmlNfc_Context->tReadInfo.pBuffer,
395 gpphTmlNfc_Context->tReadInfo.wLength);
401 tTransactionInfo.pBuff = gpphTmlNfc_Context->tReadInfo.pBuffer;
403 tTransactionInfo.wLength = gpphTmlNfc_Context->tReadInfo.wLength;
413 phTmlNfc_DeferredCall(gpphTmlNfc_Context->dwCallbackThreadId, &tMsg);
419 NXPLOG_TML_D("PN54X - NFCSTATUS_INVALID_DEVICE == gpphTmlNfc_Context->pDevHandle");
460 while (gpphTmlNfc_Context->bThreadDone)
463 sem_wait(&gpphTmlNfc_Context->txSemaphore);
465 if (1 == gpphTmlNfc_Context->tWriteInfo.bEnable)
470 if (NFCSTATUS_INVALID_DEVICE != (uintptr_t)gpphTmlNfc_Context->pDevHandle)
474 gpphTmlNfc_Context->tWriteInfo.bEnable = 0;
479 dwNoBytesWrRd = phTmlNfc_i2c_write(gpphTmlNfc_Context->pDevHandle,
480 gpphTmlNfc_Context->tWriteInfo.pBuffer,
481 gpphTmlNfc_Context->tWriteInfo.wLength
501 phNxpNciHal_print_packet("SEND", gpphTmlNfc_Context->tWriteInfo.pBuffer,
502 gpphTmlNfc_Context->tWriteInfo.wLength);
512 tTransactionInfo.pBuff = gpphTmlNfc_Context->tWriteInfo.pBuffer;
530 if ((phTmlNfc_e_EnableRetrans == gpphTmlNfc_Context->eConfig) &&
531 (0x00 != (gpphTmlNfc_Context->tWriteInfo.pBuffer[0] & 0xE0)))
533 if (FALSE == gpphTmlNfc_Context->bWriteCbInvoked)
539 phTmlNfc_DeferredCall(gpphTmlNfc_Context->dwCallbackThreadId,
541 gpphTmlNfc_Context->bWriteCbInvoked = TRUE;
548 phTmlNfc_DeferredCall(gpphTmlNfc_Context->dwCallbackThreadId, &tMsg);
553 NXPLOG_TML_D("PN54X - NFCSTATUS_INVALID_DEVICE != gpphTmlNfc_Context->pDevHandle");
557 if ((phTmlNfc_e_EnableRetrans == gpphTmlNfc_Context->eConfig) &&
558 (0x00 != (gpphTmlNfc_Context->tWriteInfo.pBuffer[0] & 0xE0)))
566 gpphTmlNfc_Context->tWriteInfo.bEnable = 0;
597 if (NULL != gpphTmlNfc_Context->pDevHandle)
599 (void) phTmlNfc_i2c_reset(gpphTmlNfc_Context->pDevHandle, 0);
600 gpphTmlNfc_Context->bThreadDone = 0;
602 sem_destroy(&gpphTmlNfc_Context->rxSemaphore);
603 sem_destroy(&gpphTmlNfc_Context->txSemaphore);
604 sem_destroy(&gpphTmlNfc_Context->postMsgSemaphore);
605 phTmlNfc_i2c_close(gpphTmlNfc_Context->pDevHandle);
606 gpphTmlNfc_Context->pDevHandle = NULL;
608 free((void *) gpphTmlNfc_Context);
610 gpphTmlNfc_Context = NULL;
634 if (NULL != gpphTmlNfc_Context)
637 gpphTmlNfc_Context->bThreadDone = 0;
640 sem_post(&gpphTmlNfc_Context->rxSemaphore);
642 sem_post(&gpphTmlNfc_Context->txSemaphore);
644 sem_post(&gpphTmlNfc_Context->postMsgSemaphore);
646 sem_post(&gpphTmlNfc_Context->postMsgSemaphore);
648 if (0 != pthread_join(gpphTmlNfc_Context->readerThread, (void**)NULL))
652 if (0 != pthread_join(gpphTmlNfc_Context->writerThread, (void**)NULL))
699 if (NULL != gpphTmlNfc_Context)
701 if ((NULL != gpphTmlNfc_Context->pDevHandle) && (NULL != pBuffer) &&
704 if (!gpphTmlNfc_Context->tWriteInfo.bThreadBusy)
707 gpphTmlNfc_Context->tWriteInfo.bThreadBusy = TRUE;
710 gpphTmlNfc_Context->tWriteInfo.pBuffer = pBuffer;
711 gpphTmlNfc_Context->tWriteInfo.wLength = wLength;
712 gpphTmlNfc_Context->tWriteInfo.pThread_Callback = pTmlWriteComplete;
713 gpphTmlNfc_Context->tWriteInfo.pContext = pContext;
717 if (phTmlNfc_e_EnableRetrans == gpphTmlNfc_Context->eConfig)
723 bCurrentRetryCount = gpphTmlNfc_Context->bRetryCount;
724 gpphTmlNfc_Context->bWriteCbInvoked = FALSE;
727 gpphTmlNfc_Context->tWriteInfo.bEnable = 1;
728 sem_post(&gpphTmlNfc_Context->txSemaphore);
774 if (NULL != gpphTmlNfc_Context)
776 if ((gpphTmlNfc_Context->pDevHandle != NULL) && (NULL != pBuffer) &&
779 if (!gpphTmlNfc_Context->tReadInfo.bThreadBusy)
782 gpphTmlNfc_Context->tReadInfo.bThreadBusy = TRUE;
785 gpphTmlNfc_Context->tReadInfo.pBuffer = pBuffer;
786 gpphTmlNfc_Context->tReadInfo.wLength = wLength;
787 gpphTmlNfc_Context->tReadInfo.pThread_Callback = pTmlReadComplete;
788 gpphTmlNfc_Context->tReadInfo.pContext = pContext;
792 gpphTmlNfc_Context->tReadInfo.bEnable = 1;
793 sem_post(&gpphTmlNfc_Context->rxSemaphore);
831 gpphTmlNfc_Context->tReadInfo.bEnable = 0;
834 gpphTmlNfc_Context->tReadInfo.bThreadBusy=FALSE;
859 gpphTmlNfc_Context->tWriteInfo.bEnable = 0;
864 gpphTmlNfc_Context->tWriteInfo.bThreadBusy=FALSE;
891 if (NULL == gpphTmlNfc_Context)
902 phTmlNfc_i2c_reset(gpphTmlNfc_Context->pDevHandle, 1);
904 phTmlNfc_i2c_reset(gpphTmlNfc_Context->pDevHandle, 0);
906 phTmlNfc_i2c_reset(gpphTmlNfc_Context->pDevHandle, 1);
912 phTmlNfc_i2c_reset(gpphTmlNfc_Context->pDevHandle, 0);
914 phTmlNfc_i2c_reset(gpphTmlNfc_Context->pDevHandle, 1);
921 (void)phTmlNfc_i2c_reset(gpphTmlNfc_Context->pDevHandle,2);
954 sem_wait(&gpphTmlNfc_Context->postMsgSemaphore);
955 bPostStatus = phDal4Nfc_msgsnd(gpphTmlNfc_Context->dwCallbackThreadId,
959 sem_post(&gpphTmlNfc_Context->postMsgSemaphore);
979 gpphTmlNfc_Context->tReadInfo.bThreadBusy = FALSE;
980 gpphTmlNfc_Context->tReadInfo.pThread_Callback(gpphTmlNfc_Context->tReadInfo.pContext,
1003 gpphTmlNfc_Context->tWriteInfo.bThreadBusy = FALSE;
1004 gpphTmlNfc_Context->tWriteInfo.pThread_Callback(gpphTmlNfc_Context->tWriteInfo.pContext,