Lines Matching defs:NdefMap

77 static void phFriNfc_DesfCapCont_HReset(phFriNfc_NdefMap_t  *NdefMap);
82 static void phFriNfc_Felica_HReset(phFriNfc_NdefMap_t *NdefMap);
92 NFCSTATUS phFriNfc_NdefMap_Reset( phFriNfc_NdefMap_t *NdefMap,
105 if ( (ReceiveLength == NULL) || (NdefMap == NULL) || (psRemoteDevInfo == NULL) ||
116 NdefMap->State = PH_FRINFC_NDEFMAP_STATE_RESET_INIT;
120 /* Initialise the NdefMap Completion Routine to Null */
121 NdefMap->CompletionRoutine[index].CompletionRoutine = NULL;
122 /* Initialise the NdefMap Completion Routine context to Null */
123 NdefMap->CompletionRoutine[index].Context = NULL;
127 is registred in NdefMap Lower Device) */
128 NdefMap->LowerDevice = LowerDevice;
131 NdefMap->psRemoteDevInfo = psRemoteDevInfo;
134 NdefMap->ApduBuffer = TrxBuffer;
137 NdefMap->ApduBufferSize = TrxBufferSize;
140 NdefMap->ApduBuffIndex = 0;
143 NdefMap->SendLength = 0;
146 NdefMap->SendRecvBuf = ReceiveBuffer;
149 NdefMap->SendRecvLength = ReceiveLength;
152 NdefMap->TempReceiveLength = *ReceiveLength;
155 NdefMap->DataCount = DataCount;
156 *NdefMap->DataCount = 0;
159 NdefMap->Offset = 0;
162 NdefMap->NumOfBytesRead = 0;
165 NdefMap->NumOfBytesWritten = 0;
168 NdefMap->CardType = 0;
171 NdefMap->CardMemSize = 0;
174 NdefMap->PrevOperation = 0;
177 NdefMap->DespOpFlag = 0;
180 NdefMap->MapCompletionInfo.CompletionRoutine = NULL;
181 NdefMap->MapCompletionInfo.Context = NULL;
184 NdefMap->ReadingForWriteOperation = 0; /* FALSE */
188 phFriNfc_DesfCapCont_HReset(NdefMap);
193 NdefMap->StdMifareContainer.DevInputParam = psDevInputParam;
194 status = phFriNfc_MifareStdMap_H_Reset(NdefMap);
199 NdefMap->FelicaPollDetails.DevInputParam = psDevInputParam;
200 phFriNfc_Felica_HReset(NdefMap);
205 phFriNfc_TopazMap_H_Reset(NdefMap);
210 status = phFriNfc_MifareUL_H_Reset(NdefMap);
215 phFriNfc_Mockup_H_Reset(NdefMap);
222 NdefMap->CardState = PH_NDEFMAP_CARD_STATE_INVALID;
237 NFCSTATUS phFriNfc_NdefMap_SetCompletionRoutine(phFriNfc_NdefMap_t *NdefMap,
244 if ( ( NdefMap == NULL ) || (FunctionID >= PH_FRINFC_NDEFMAP_CR) ||
251 /* Register the application callback with the NdefMap Completion Routine */
252 NdefMap->CompletionRoutine[FunctionID].CompletionRoutine = CompletionRoutine;
254 /* Register the application context with the NdefMap Completion Routine context */
255 NdefMap->CompletionRoutine[FunctionID].Context = CompletionRoutineContext;
268 * This is the main NdefMap read function call.Internally,depending upon
280 NFCSTATUS phFriNfc_NdefMap_RdNdef( phFriNfc_NdefMap_t *NdefMap,
290 || ( NdefMap == NULL )
294 || (NdefMap->CompletionRoutine->CompletionRoutine == NULL)
295 || (NdefMap->CompletionRoutine->Context == NULL )
300 else if (NdefMap->CardState == PH_NDEFMAP_CARD_STATE_INVALID)
307 else if(NdefMap->CardState == PH_NDEFMAP_CARD_STATE_INITIALIZED)
312 NdefMap->NumOfBytesRead = PacketDataLength;
313 *NdefMap->NumOfBytesRead = 0;
317 else if ( (NdefMap->PrevOperation == PH_FRINFC_NDEFMAP_WRITE_OPE) && (Offset != PH_FRINFC_NDEFMAP_SEEK_BEGIN ))
331 NdefMap->ApduBuffIndex = 0;
332 *NdefMap->DataCount = 0;
335 if ( (NdefMap->CardType == PH_FRINFC_NDEFMAP_ISO14443_4A_CARD) &&
336 (Offset == PH_FRINFC_NDEFMAP_SEEK_CUR) && (*NdefMap->DataCount == 0 ))
346 switch ( NdefMap->CardType)
351 status = phFriNfc_MifareUL_RdNdef ( NdefMap,
364 status = phFriNfc_Desfire_RdNdef( NdefMap,
375 status = phFriNfc_MifareStdMap_RdNdef ( NdefMap,
385 status = phFriNfc_Felica_RdNdef( NdefMap,
395 status = phFriNfc_TopazMap_RdNdef( NdefMap,
403 status = phFriNfc_TopazDynamicMap_RdNdef( NdefMap,
413 status = phFriNfc_ISO15693_RdNdef( NdefMap,
423 status = phFriNfc_Mockup_RdNdef( NdefMap,
464 NFCSTATUS phFriNfc_NdefMap_WrNdef( phFriNfc_NdefMap_t *NdefMap,
473 || ( NdefMap == NULL )
479 || (NdefMap->CompletionRoutine->CompletionRoutine == NULL)
480 || (NdefMap->CompletionRoutine->Context == NULL)
486 else if (( NdefMap->CardState == PH_NDEFMAP_CARD_STATE_INVALID) &&
487 (PH_FRINFC_NDEFMAP_TOPAZ_CARD != NdefMap->CardType) &&
488 (PH_FRINFC_NDEFMAP_TOPAZ_DYNAMIC_CARD != NdefMap->CardType))
496 else if ( NdefMap->CardState == PH_NDEFMAP_CARD_STATE_READ_ONLY )
504 NdefMap->WrNdefPacketLength = PacketDataLength;
505 *NdefMap->WrNdefPacketLength = 0;
515 if (( NdefMap->CardState == PH_NDEFMAP_CARD_STATE_INVALID) &&
516 (PH_FRINFC_NDEFMAP_TOPAZ_DYNAMIC_CARD == NdefMap->CardType))
521 NdefMap->CardState = PH_NDEFMAP_CARD_STATE_READ_WRITE */
522 NdefMap->CardState = PH_NDEFMAP_CARD_STATE_READ_WRITE;
527 NdefMap->ApduBuffIndex = 0;
528 *NdefMap->DataCount = 0;
531 if ( (NdefMap->CardType == PH_FRINFC_NDEFMAP_MIFARE_UL_CARD) ||
532 (NdefMap->CardType == PH_FRINFC_NDEFMAP_ISO14443_4A_CARD))
534 if (( (NdefMap->PrevOperation == PH_FRINFC_NDEFMAP_READ_OPE) && (Offset != PH_FRINFC_NDEFMAP_SEEK_BEGIN )) ||
535 ( (Offset == PH_FRINFC_NDEFMAP_SEEK_CUR) && (*NdefMap->DataCount == 0 )))
546 NdefMap->WrNdefPacketLength = PacketDataLength;
547 switch ( NdefMap->CardType)
552 status = phFriNfc_MifareUL_WrNdef( NdefMap,
565 status = phFriNfc_Desfire_WrNdef( NdefMap,
576 status = phFriNfc_MifareStdMap_WrNdef ( NdefMap,
586 status = phFriNfc_Felica_WrNdef( NdefMap,
596 status = phFriNfc_TopazMap_WrNdef( NdefMap,
604 status = phFriNfc_TopazDynamicMap_WrNdef( NdefMap,
614 status = phFriNfc_ISO15693_WrNdef( NdefMap,
625 status = phFriNfc_Mockup_WrNdef( NdefMap,
646 phFriNfc_NdefMap_t *NdefMap)
652 if (NULL == NdefMap)
656 else if ((NdefMap->CompletionRoutine->CompletionRoutine == NULL)
657 || (NdefMap->CompletionRoutine->Context == NULL))
663 switch (NdefMap->CardType)
667 result = phFriNfc_TopazMap_ConvertToReadOnly (NdefMap);
673 result = phFriNfc_TopazDynamicMap_ConvertToReadOnly (NdefMap);
679 result = phFriNfc_ISO15693_ConvertToReadOnly (NdefMap);
714 NFCSTATUS phFriNfc_NdefMap_ChkNdef( phFriNfc_NdefMap_t *NdefMap)
721 if ( NdefMap == NULL )
727 if( (NdefMap->State != PH_FRINFC_NDEFMAP_STATE_RESET_INIT) ||
728 (NdefMap->psRemoteDevInfo->SessionOpened != 0x01 ) )
733 else if ( (NdefMap->CompletionRoutine->CompletionRoutine == NULL) || (NdefMap->CompletionRoutine->Context == NULL ))
744 sak = NdefMap->psRemoteDevInfo->RemoteDevInfo.Iso14443A_Info.Sak;
752 switch ( NdefMap->psRemoteDevInfo->RemDevType )
757 status = phFriNfc_ISO15693_ChkNdef (NdefMap);
774 status = phFriNfc_MifareUL_ChkNdef( NdefMap);
787 status = phFriNfc_MifareStdMap_ChkNdef( NdefMap);
804 status = phFriNfc_Desfire_ChkNdef(NdefMap);
815 status = phFriNfc_Desfire_ChkNdef(NdefMap);
836 NdefMap->OpModeType[0] = phHal_eOpModesFelica212;
837 NdefMap->OpModeType[1] = phHal_eOpModesArrayTerminator;
839 status = phFriNfc_Felica_ChkNdef(NdefMap);
851 NdefMap->OpModeType[0] = phHal_eOpModesFelica424;
852 NdefMap->OpModeType[1] = phHal_eOpModesArrayTerminator;
853 status = phFriNfc_Felica_ChkNdef(NdefMap);
869 if ( NdefMap->psRemoteDevInfo->RemoteDevInfo.Jewel_Info.HeaderRom0
873 status = phFriNfc_TopazMap_ChkNdef(NdefMap);
876 else if( NdefMap->psRemoteDevInfo->RemoteDevInfo.Jewel_Info.HeaderRom0
880 status = phFriNfc_TopazDynamicMap_ChkNdef(NdefMap);
899 status = phFriNfc_TopazMap_ChkNdef(NdefMap);
919 NdefMap->OpModeType[0] = phHal_eOpModesMockup;
920 NdefMap->OpModeType[1] = phHal_eOpModesArrayTerminator;
921 status = phFriNfc_Mockup_ChkNdef(NdefMap);
954 phFriNfc_NdefMap_t *NdefMap = (phFriNfc_NdefMap_t *)Context;
960 switch ( NdefMap->psRemoteDevInfo->RemDevType )
965 if((NdefMap->CardType == PH_FRINFC_NDEFMAP_MIFARE_STD_1K_CARD) ||
966 (NdefMap->CardType == PH_FRINFC_NDEFMAP_MIFARE_STD_4K_CARD))
970 phFriNfc_MifareStdMap_Process(NdefMap,Status);
980 phFriNfc_MifareUL_Process(NdefMap,Status);
991 phFriNfc_Desfire_Process(NdefMap, Status);
999 phFriNfc_Desfire_Process(NdefMap, Status);
1005 phFriNfc_Felica_Process(NdefMap, Status);
1014 if ( NdefMap->CardType == PH_FRINFC_NDEFMAP_TOPAZ_CARD )
1017 phFriNfc_TopazMap_Process(NdefMap, Status);
1020 else if ( NdefMap->CardType == PH_FRINFC_NDEFMAP_TOPAZ_DYNAMIC_CARD )
1023 phFriNfc_TopazDynamicMap_Process(NdefMap, Status);
1039 phFriNfc_Mockup_Process(NdefMap, Status);
1048 NdefMap->State = PH_FRINFC_NDEFMAP_STATE_RESET_INIT;
1051 NdefMap->CompletionRoutine[PH_FRINFC_NDEFMAP_CR_INVALID_OPE].
1052 CompletionRoutine(NdefMap->CompletionRoutine->Context, Status);
1067 NFCSTATUS phFriNfc_ChkAndParseTLV(phFriNfc_NdefMap_t *NdefMap)
1071 switch ( NdefMap->CardType )
1082 status = phFriNfc_Desf_ChkAndParseTLV(NdefMap);
1115 static void phFriNfc_DesfCapCont_HReset(phFriNfc_NdefMap_t *NdefMap)
1118 NdefMap->DesfireCapContainer.DesfVersion = 0;
1119 NdefMap->DesfireCapContainer.NdefMsgFid = 0;
1120 NdefMap->DesfireCapContainer.NdefFileSize = 0;
1121 NdefMap->DesfireCapContainer.MaxCmdSize = 0;
1122 NdefMap->DesfireCapContainer.MaxRespSize = 0;
1123 NdefMap->DesfireCapContainer.ReadAccess = 0;
1124 NdefMap->DesfireCapContainer.WriteAccess = 0;
1129 static void phFriNfc_Felica_HReset(phFriNfc_NdefMap_t *NdefMap)
1135 NdefMap->Felica.CurBlockNo = 0;
1139 NdefMap->Felica.Rd_BytesToCopyBuff[index] = 0;
1140 NdefMap->Felica.Wr_RemainedBytesBuff[index] = 0;
1142 NdefMap->Felica.Rd_NoBytesToCopy = 0;
1143 NdefMap->Felica.Wr_BytesRemained = 0;
1149 NdefMap->FelicaAttrInfo.LenBytes[index] = 0;
1152 NdefMap->FelicaAttrInfo.Nmaxb = 0;
1153 NdefMap->FelicaAttrInfo.Nbr = 0;
1154 NdefMap->FelicaAttrInfo.Nbw= 0;
1155 NdefMap->FelicaAttrInfo.RdWrFlag = 0;
1156 NdefMap->FelicaAttrInfo.WriteFlag = 0;
1157 NdefMap->Felica.CurrBytesRead=0;
1162 NdefMap->FelicaManufDetails.ManufID[index] = 0;
1163 NdefMap->FelicaManufDetails.ManufParameter[index] = 0;
1165 NdefMap->Felica.NoBlocksWritten=0;
1169 NFCSTATUS phFriNfc_NdefMap_EraseNdef(phFriNfc_NdefMap_t *NdefMap)
1177 if (NdefMap == NULL )
1184 switch ( NdefMap->CardType)
1206 status = phFriNfc_NdefMap_WrNdef( NdefMap,
1216 status = phFriNfc_Felica_EraseNdef( NdefMap );
1239 NFCSTATUS phFriNfc_NdefMap_GetContainerSize(const phFriNfc_NdefMap_t *NdefMap,uint32_t *maxSize, uint32_t *actualSize)
1246 if( (NdefMap == NULL) || (maxSize == NULL) || (actualSize == NULL))
1254 switch(NdefMap->CardType)
1261 otherwise NdefMap->CardMemSize will be 0 */
1262 *maxSize = NdefMap->MifareULContainer.RemainingSize;
1265 *actualSize = NdefMap->TLVStruct.ActualSize;
1277 otherwise NdefMap->DesfireCapContainer.NdefFileSize
1280 *maxSize = NdefMap->DesfireCapContainer.NdefFileSize - 2;
1283 *actualSize = NdefMap->DesfireCapContainer.NdefDataLen;
1292 otherwise NdefMap->CardMemSize will be 0 */
1293 *maxSize = NdefMap->TopazContainer.RemainingSize;
1296 *actualSize = NdefMap->TLVStruct.BytesRemainLinTLV;
1303 otherwise NdefMap->CardMemSize will be 0 */
1304 *maxSize = NdefMap->TopazContainer.NDEFRWSize;
1307 *actualSize = NdefMap->TopazContainer.ActualNDEFMsgSize;
1321 *maxSize = NdefMap->StdMifareContainer.remainingSize;
1326 NdefMap->StdMifareContainer.aid[count_index]) &&
1350 NdefMap->CardType)
1380 if (actual_sect_index > NdefMap->StdMifareContainer.SectorIndex)
1382 actual_sect_index = NdefMap->StdMifareContainer.SectorIndex;
1388 *actualSize = NdefMap->TLVStruct.BytesRemainLinTLV;
1397 *maxSize = NdefMap->FelicaAttrInfo.Nmaxb * 0x10;
1400 *actualSize = NdefMap->FelicaAttrInfo.LenBytes[0];
1402 *actualSize += NdefMap->FelicaAttrInfo.LenBytes[1];
1404 *actualSize += NdefMap->FelicaAttrInfo.LenBytes[2];
1417 NdefMap->ISO15693Container.ndef_tlv_type_blk,
1418 NdefMap->ISO15693Container.ndef_tlv_type_byte,
1419 NdefMap->ISO15693Container.actual_ndef_size);
1422 NdefMap->ISO15693Container.ndef_tlv_type_blk,
1423 NdefMap->ISO15693Container.ndef_tlv_type_byte,
1424 NdefMap->ISO15693Container.actual_ndef_size);
1426 *maxSize = (NdefMap->ISO15693Container.max_data_size -
1430 *maxSize = (NdefMap->ISO15693Container.max_data_size
1433 *actualSize = NdefMap->ISO15693Container.actual_ndef_size;
1458 NFCSTATUS phFriNfc_NdefMap_MockupCardSetter(phFriNfc_NdefMap_t *NdefMap,
1466 if((NdefData != NULL) && (NdefMap != NULL))
1469 NdefMap->MochupContainer.NdefData = NdefData;
1470 NdefMap->MochupContainer.NdefActualSize = NdefActualSize;
1471 NdefMap->MochupContainer.NdefMaxSize = NdefMaxSize;
1472 NdefMap->MochupContainer.CardSize = CardSize;
1473 NdefMap->MochupContainer.CurrentBlock = 0;