4 * Copyright (c) 2011 Samsung Electronics Co., Ltd. All rights reserved.
6 * Contact: Kyeongchul Kim <kyeongchul.kim@samsung.com>
8 * Licensed under the Apache License, Version 2.0 (the "License");
9 * you may not use this file except in compliance with the License.
10 * You may obtain a copy of the License at
12 * http://www.apache.org/licenses/LICENSE-2.0
14 * Unless required by applicable law or agreed to in writing, software
15 * distributed under the License is distributed on an "AS IS" BASIS,
16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 * See the License for the specific language governing permissions and
18 * limitations under the License.
31 #include "TelUtility.h"
32 #include "TapiEvent.h"
33 #include "TapiCommon.h"
34 #include "ITapiData.h"
56 #define TEST_DEBUG(frmt, args...) \
57 {do { fprintf(stderr, "[CDMA-DATA Test][%s:%04d] "frmt "\n", __func__, __LINE__, ##args); } while (FALSE) ;}
60 #define TAPI_EVENT_CLASS_DATA_MAX_NUM 2
61 #define NUM_OF_CDMA_DATA_EVENT 39
65 unsigned int cdma_data_subscription_id[NUM_OF_CDMA_DATA_EVENT] = {0, };
67 void PrintNaiIndexType(TelDataNAIIndex_t NaiIndex)
69 if(NaiIndex == TAPI_DATA_FACTORY_NAI)
70 printf(" NAI type : FACTORY \n");
71 else if(NaiIndex == TAPI_DATA_CUSTOM_NAI)
72 printf(" NAI type : Custom \n");
74 printf(" NAI type : Unknown [%d]\n", NaiIndex);
79 void PrintPinControlInfo(TelDataPinControlInfo_t *pDsPin)
81 printf(" Signal Type : ");
82 switch(pDsPin->signaltype)
84 case TAPI_DATA_SIGNAL_DCD:
88 case TAPI_DATA_SIGNAL_DTR:
92 case TAPI_DATA_SIGNAL_DSR:
96 case TAPI_DATA_SIGNAL_RTS:
100 case TAPI_DATA_SIGNAL_CTS:
104 case TAPI_DATA_SIGNAL_RI:
108 printf("Unknown \n");
112 printf(" Signal Status : ");
113 switch(pDsPin->signalstatus)
115 case TAPI_DATA_SIGNAL_STATUS_OFF:
119 case TAPI_DATA_SIGNAL_STATUS_ON:
124 printf("Unknown \n");
131 void ComposeMobileIPNaiParametr(TelDataMipNaiParam_t *MipNaiParam)
133 MipNaiParam->naiIndex = TAPI_DATA_FACTORY_NAI;
134 MipNaiParam->paramMask = TAPI_DATA_NAI_MIP_MASK_REVERSE_TUNNEL + TAPI_DATA_NAI_MIP_MASK_HOME_ADDRESS + \
135 TAPI_DATA_NAI_MIP_MASK_PRIMARY_HOME_AGENT_IP;
137 MipNaiParam->genericInfo.revTunPreference = 0x3;
138 MipNaiParam->genericInfo.homeAddress = 0xA5D5E3E9;
139 MipNaiParam->genericInfo.primaryHaAddress = 0x5A5D3E9E;
144 void EvtCurrentNaiIndexGetCnfCB(void *pData)
146 TelDataNAIIndex_t *pNaiIndex;
147 pNaiIndex = (TelDataNAIIndex_t *)pData;
149 PrintNaiIndexType(*pNaiIndex);
154 void EvtMipNaiGetCnfCB(void *pData)
156 TelDataMipNaiParam_t *pMipNaiParam;
158 pMipNaiParam = (TelDataMipNaiParam_t *)pData;
160 PrintNaiIndexType(pMipNaiParam->naiIndex);
162 printf(" Mask Value = %x\n", pMipNaiParam->paramMask);
164 if(pMipNaiParam->paramMask & TAPI_DATA_NAI_MIP_MASK_USER_NAI){
165 printf(" : User NAI Value");
166 for(i=0; i< pMipNaiParam->genericInfo.usrNaiLength; i++)
167 printf("[0x%x] ", pMipNaiParam->genericInfo.usrNai[i]);
171 if(pMipNaiParam->paramMask & TAPI_DATA_NAI_MIP_MASK_SPI_MN_HA)
172 printf(" Mobile Node Home Agent Secure Parameter Index = [0x%x]\n", pMipNaiParam->genericInfo.mnHaSpi);
174 if(pMipNaiParam->paramMask & TAPI_DATA_NAI_MIP_MASK_SPI_MN_AAA)
175 printf(" Mobile Node AAA Secure Parameter Index = [0x%x]\n", pMipNaiParam->genericInfo.mnAaaSpi);
177 if(pMipNaiParam->paramMask & TAPI_DATA_NAI_MIP_MASK_REVERSE_TUNNEL)
178 printf(" Reverse Tunneling Preference = [0x%x]\n", pMipNaiParam->genericInfo.revTunPreference);
180 if(pMipNaiParam->paramMask & TAPI_DATA_NAI_MIP_MASK_HOME_ADDRESS)
181 printf(" Home Address = [0x%x]\n", pMipNaiParam->genericInfo.homeAddress);
183 if(pMipNaiParam->paramMask & TAPI_DATA_NAI_MIP_MASK_PRIMARY_HOME_AGENT_IP)
184 printf(" Primary Home Agent IP Address = [0x%x]\n", pMipNaiParam->genericInfo.primaryHaAddress);
186 if(pMipNaiParam->paramMask & TAPI_DATA_NAI_MIP_MASK_SECONDARY_HOME_AGENT_IP)
187 printf(" Secondary Home Agent IP Address = [0x%x]\n", pMipNaiParam->genericInfo.secondaryHaAddr);
189 if(pMipNaiParam->paramMask & TAPI_DATA_NAI_MIP_MASK_MN_AAA_SS){
190 printf(" Mobile Node to AAA Shared Secret\n");
191 for(i=0; i< pMipNaiParam->ssInfo.mnHaSharedSecretLength; i++)
192 printf("[0x%x] ", pMipNaiParam->ssInfo.mnHaSharedSecret[i]);
196 if(pMipNaiParam->paramMask & TAPI_DATA_NAI_MIP_MASK_MN_HA_SS){
197 printf(" Mobile Node to Home Agent Shared Secret\n");
198 for(i=0; i< pMipNaiParam->ssInfo.mnAaaSharedSecretLength; i++)
199 printf("[0x%x] ", pMipNaiParam->ssInfo.mnAaaSharedSecret[i]);
206 void EvtMipNaiChangedNotiCB(void *pData)
208 TelDataNaiChangedItem_t *pChangedItem;
209 pChangedItem = (TelDataNaiChangedItem_t *)pData;
211 if(*pChangedItem == TAPI_DATA_NAI_GENERIC_INFO_CHANGED)
212 printf("[NAI Information]\n");
213 else if(*pChangedItem == TAPI_DATA_SHARED_SECRET_CHANGED)
214 printf("[Shared Screte]\n");
219 void EvtTe2StatusDisplay(void *pData)
221 TelDataTE2Status_t *pTe2Status;
222 pTe2Status= (TelDataTE2Status_t *)pData;
225 if(pTe2Status->type == TAPI_DATA_TE2_TYPE_UART)
227 else if(pTe2Status->type == TAPI_DATA_TE2_TYPE_USB)
229 else if(pTe2Status->type == TAPI_DATA_TE2_TYPE_BLUETOOTH)
230 printf("Bluetooth]\t");
232 printf("Unknown]\t");
236 if(pTe2Status->cable_status == TAPI_DATA_TE2_DETACHED)
237 printf("Detached]\n");
238 else if(pTe2Status->cable_status == TAPI_DATA_TE2_ATTACHED)
239 printf("Atached]\n");
241 printf("Unknown]\n");
246 void EvtBytesCountDisplay(void *pData)
248 TelDataPacketByteCounter_t *pByteCnt = NULL;
249 pByteCnt= (TelDataPacketByteCounter_t *)pData;
251 printf("Received Current Packet Bytes[%u]", pByteCnt->rx_curr_packet_bytes);
252 printf("Transmitted Current Packet Bytes[%u]", pByteCnt->tx_curr_packet_bytes);
253 printf("Received Total Packet Bytes[%llu]", pByteCnt->rx_total_packet_bytes);
254 printf("Transmitted Total Packet Bytes[%llu]", pByteCnt->tx_total_packet_bytes);
259 void EvtIncomingCallTypeDisplay(void *pData)
261 TelDataCallType_t *pCallType = NULL;
262 pCallType= (TelDataCallType_t *)pData;
264 printf("Incoming Call Type :[");
266 case TAPI_DATA_CALL_TYPE_DEFAULT:
269 case TAPI_DATA_CALL_TYPE_FAX_FOR_NEXT_CALL:
270 printf("FAX For Next Call]");
272 case TAPI_DATA_CALL_TYPE_FAX_FOR_ALL_CALLS:
273 printf("FAX For All Calls]");
275 case TAPI_DATA_CALL_TYPE_ASYNC_FOR_NEXT_CALL:
276 printf("Async For Next Call]");
278 case TAPI_DATA_CALL_TYPE_ASYNC_FOR_ALL_CALLS:
279 printf("Async For All Call]");
282 printf("Unknown Incoming Call Type\n");
288 void EvtDataRateInfoDisplay(void*pData)
290 TelDataTE2DataRateInfo_t *pDataRate = NULL;
291 pDataRate= (TelDataTE2DataRateInfo_t *)pData;
293 printf("Transmitted Bytes[%u]", pDataRate->tx_bytes);
294 printf("Received Bytes[%u]", pDataRate->rx_bytes);
295 printf("Report Period [%d]", pDataRate->report_period);
296 printf("Channel Number [%d]", pDataRate->channel_num);
297 printf("Tx Number of Bar Level during the reporting period[%d]", pDataRate->tx_bar_level);
298 printf("Rx Number of Bar Level during the reporting period[%d]", pDataRate->rx_bar_level);
304 void EvtBaudRateDisplay(void*pData)
306 TelDataBaudRate_t *pBaudRate = NULL;
307 pBaudRate= (TelDataBaudRate_t *)pData;
309 printf("Baud Rate :[");
311 case TAPI_DATA_BAUDRATE_19200_BPS:
314 case TAPI_DATA_BAUDRATE_38400_BPS:
317 case TAPI_DATA_BAUDRATE_57600_BPS:
320 case TAPI_DATA_BAUDRATE_115200_BPS:
323 case TAPI_DATA_BAUDRATE_230400_BPS:
327 printf("Unknown Baud Rate\n");
333 void EvtRoamGuardDisplay(void *pData)
335 TelDataRoamGuardMode_t *pMode = NULL;
336 pMode= (TelDataRoamGuardMode_t *)pData;
338 printf("Roam Guard Mode:[");
340 case TAPI_DATA_ROAM_GUARD_DEFAULT:
343 case TAPI_DATA_ROAM_GUARD_ALWAYS_ASK:
344 printf("Always ASK]");
346 case TAPI_DATA_ROAM_ROAM_GUARD_NEVER_ASK:
347 printf("Never ASK]");
349 case TAPI_DATA_ROAM_ROAM_GUARD_OFF:
352 case TAPI_DATA_ROAM_ROAM_GUARD_ON:
356 printf("Unknown Roam Guard\n");
363 void EvtModemNaiDisplay(void *pData)
365 TelDataModemNAIMode_t *pMode = NULL;
366 pMode= (TelDataModemNAIMode_t *)pData;
368 printf("Modem NAI Mode:[");
370 case TAPI_DATA_MODEM_NAI_OFF:
373 case TAPI_DATA_MODEM_NAI_ON:
377 printf("Unknown Modem NAI Mode\n");
384 void EvtModemBtModeDisplay(void *pData)
386 TelDataDSType_t *pType = NULL;
387 pType= (TelDataDSType_t *)pData;
389 printf("Data Service Type :");
391 case TAPI_DATA_DS_TYPE_NORMAL:
392 printf("DS TYPE : NORMAL");
394 case TAPI_DATA_DS_TYPE_DUN:
395 printf("DS TYPE : DUN");
397 case TAPI_DATA_DS_TYPE_BTDUN:
398 printf("DS TYPE : BTDUN");
400 case TAPI_DATA_DS_TYPE_IS:
401 printf("DS TYPE : IS");
403 case TAPI_DATA_DS_TYPE_MMS:
404 printf("DS TYPE : MMS");
407 printf("Unknown DS Type\n");
413 void EvtForceRevAModeDisplay(void *pData)
415 TelDataRevConfig_t *pMode = NULL;
416 pMode= (TelDataRevConfig_t *)pData;
418 printf("Forced RevA Mode :[");
427 printf("Unknown Forced Rev Mode\n");
433 void EvtPacketDataCallConfigDisplay(void *pData)
435 TelDataPacketDataCallConfig_t *pPacketData = NULL;
436 TelDataPacketConfigType_t type;
437 TelDataPacketParam_t param;
438 pPacketData= (TelDataPacketDataCallConfig_t *)pData;
440 type = pPacketData->type;
441 memcpy(¶m, &pPacketData->param, sizeof(TelDataPacketParam_t));
443 printf("Packet Data Call Type :");
445 case TAPI_DATA_PACKET_DATA_TYPE_QNC:
448 case TAPI_DATA_PACKET_DATA_TYPE_MIP:
451 case TAPI_DATA_PACKET_DATA_TYPE_CALL_TYPE:
454 case TAPI_DATA_PACKET_DATA_TYPE_PKT_ORIGIN_STRING:
455 printf("ORG STRING");
457 case TAPI_DATA_PACKET_DATA_TYPE_PAP_USER_ID:
460 case TAPI_DATA_PACKET_DATA_TYPE_PAP_USER_PASSWORD:
461 printf("USER PASSWORD");
464 printf("\nUnknown Type\n");
471 void cdma_data_async_event_callback(TelTapiEvent_t* event)
473 printf("\n data_async_event_callback enter\n");
475 printf("Request ID : [0x%x]\n", event->RequestId);
477 printf("Status : [");
478 switch(event->Status)
480 case TAPI_DATA_NO_ERR:
484 case TAPI_DATA_PARAMETER_ERR:
485 printf("Parameter Err]\n");
488 case TAPI_DATA_OFFLINE_ERR:
489 printf("Phone Off]\n");
492 case TAPI_DATA_OTHER_ERR:
494 printf("Unknown Err]\n");
498 printf("event->EventType : %d\n", event->EventType);
499 printf("event->EventType : %d\n", TAPI_EVENT_DATA_PACKET_DATA_CALL_CONFIGURATION_GET_CNF);
501 switch(event->EventType)
503 case TAPI_EVENT_DATA_MIP_NAI_GET_CNF:
505 printf("Event Type: [TAPI_EVENT_DATA_MIP_NAI_GET_CNF]\n");
506 if(event->Status ==TAPI_DATA_NO_ERR)
507 EvtMipNaiGetCnfCB(event->pData);
511 case TAPI_EVENT_DATA_CURRENT_NAI_INDEX_GET_CNF:
513 printf("Event Type: [TAPI_EVENT_DATA_CURRENT_NAI_INDEX_GET_CNF]\n");
514 if(event->Status ==TAPI_DATA_NO_ERR)
515 EvtCurrentNaiIndexGetCnfCB(event->pData);
519 case TAPI_EVENT_DATA_TE2_STATUS_GET_CNF:
521 printf("Event Type: [TAPI_EVENT_DATA_TE2_STATUS_GET_CNF]\n");
522 if(event->Status ==TAPI_DATA_NO_ERR)
523 EvtTe2StatusDisplay(event->pData);
527 case TAPI_EVENT_DATA_TE2_STATUS_NOTI:
529 printf("Event Type: [TAPI_EVENT_DATA_TE2_STATUS_NOTI]\n");
530 EvtTe2StatusDisplay(event->pData);
534 case TAPI_EVENT_DATA_BYTES_COUNTER_GET_CNF:
536 printf("Event Type: [TAPI_EVENT_DATA_BYTES_COUNTER_GET_CNF]\n");
537 if(event->Status ==TAPI_DATA_NO_ERR)
538 EvtBytesCountDisplay(event->pData);
542 case TAPI_EVENT_DATA_DS_TE2_DATA_RATE_INFO_NOTI:
544 printf("Event Type: [TAPI_EVENT_DATA_DS_TE2_DATA_RATE_INFO_NOTI]\n");
545 EvtDataRateInfoDisplay(event->pData);
549 case TAPI_EVENT_DATA_ROAM_GUARD_GET_CNF:
551 printf("Event Type: [TAPI_EVENT_DATA_ROAM_GUARD_GET_CNF]\n");
552 if(event->Status ==TAPI_DATA_NO_ERR)
553 EvtRoamGuardDisplay(event->pData);
556 case TAPI_EVENT_DATA_MODEM_NAI_GET_CNF:
558 printf("Event Type: [TAPI_EVENT_DATA_MODEM_NAI_GET_CNF]\n");
559 if(event->Status ==TAPI_DATA_NO_ERR)
560 EvtModemNaiDisplay(event->pData);
564 case TAPI_EVENT_DATA_EVDO_REV_CONFIG_GET_CNF:
566 printf("Event Type: [TAPI_EVENT_DATA_EVDO_REV_CONFIG_GET_CNF]\n");
567 if(event->Status ==TAPI_DATA_NO_ERR)
568 EvtForceRevAModeDisplay(event->pData);
571 case TAPI_EVENT_DATA_DDTM_CONFIGURATION_GET_CNF:
573 printf("Event Type: [TAPI_EVENT_DATA_DDTM_CONFIGURATION_GET_CNF]\n");
576 case TAPI_EVENT_DATA_MIP_NAI_SET_CNF:
578 printf("Event Type: [TAPI_EVENT_DATA_MIP_NAI_SET_CNF]\n");
581 case TAPI_EVENT_DATA_BYTES_COUNTER_RESET_CNF:
583 printf("Event Type: [TAPI_EVENT_DATA_BYTES_COUNTER_RESET_CNF]\n");
587 case TAPI_EVENT_DATA_HDR_SESSION_CLEAR_SET_CNF:
589 printf("Event Type: [TAPI_EVENT_DATA_HDR_SESSION_CLEAR_SET_CNF]\n");
592 case TAPI_EVENT_DATA_ROAM_GUARD_SET_CNF:
594 printf("Event Type: [TAPI_EVENT_DATA_ROAM_GUARD_SET_CNF]\n");
598 case TAPI_EVENT_DATA_EVDO_REV_CONFIG_SET_CNF:
600 printf("Event Type: [TAPI_EVENT_DATA_FORCE_REVA_MODE_SET_CNF]\n");
603 case TAPI_EVENT_DATA_DDTM_CONFIGURATION_SET_CNF:
605 printf("Event Type: [TAPI_EVENT_DATA_DDTM_CONFIGURATION_SET_CNF]\n");
608 case TAPI_EVENT_DATA_RESTORE_NAI_SET_CNF:
610 printf("Event Type: [TAPI_EVENT_DATA_RESTORE_NAI_SET_CNF]\n");
613 case TAPI_EVENT_DATA_PACKET_DATA_CALL_CONFIGURATION_GET_CNF:
615 printf("Event Type: [TAPI_EVENT_DATA_PACKET_DATA_CALL_CONFIGURATION_GET_CNF]");
616 EvtPacketDataCallConfigDisplay(event->pData);
621 printf("Event Type: unknown event:[%d]\n", event->EventType);
629 int cdma_data_read_key_input(void)
632 char buf[512] = {0, };
634 TapiResult_t ret_val = TAPI_API_SUCCESS;
637 memset(buf,0, sizeof(buf));
638 memset(msg,0,sizeof(msg));
640 printf("*************** CDMA DATA TEST MENU ******************\n");
641 printf("0. DSPin Control \n");
642 printf("3. Get Mobile IP NAI \n");
643 printf("4. Set Mobile IP NAI \n");
644 printf("5. Get Current NAI Index \n");
645 printf("6. Get TE2 Status \n");
646 //printf("7. Reset Data bytes counter \n");
647 //printf("8. Get Data bytes counter \n");
648 //printf("9. Get Incoming Call Type \n");
649 //printf("10. Set Incoming Call Type \n");
650 printf("11. Get Data Service Baud Rate\n");
651 printf("12. Set Data Service Baud Rate\n");
652 //printf("13. Set HDR Session Clear\n");
653 printf("14. Get Roam Guard Mode\n");
654 printf("15. Set Roam Guard Mode\n");
655 printf("16. Get Modem NAI\n");
656 printf("17. Set Modem NAI\n");
657 printf("18. Get DS Type\n");
658 printf("19. Set DS Type\n");
659 printf("20. Get EVDO Rev Config\n");
660 printf("21. Set EVDO Rev Config(Rev-A or Rev-0)\n");
661 printf("22. Get Singed In State Mode\n");
662 printf("23. Set Singed In State Mode\n");
663 printf("24. Set the NAI value to factory setting\n");
664 printf("25. Get Dedicated Data Transmission Mode\n");
665 printf("26. Set Dedicated Data Transmission Mode\n");
666 printf("27. Get DSWorking Mode\n");
667 printf("28. Set DSWorking Mode\n");
668 printf("\n BONUS!! ^^;;\n");
669 printf("29. Get Packet Data Call Configuration\n");
670 printf("29. Set Packet Data Call Configuration\n");
673 ret = read(0, buf, sizeof(buf));
685 if( memcmp(buf,"3",sizeof("3")-1) == 0 )
687 TelDataNAIIndex_t MipNaiIdx = TAPI_DATA_FACTORY_NAI;
688 unsigned short ParamMask = TAPI_DATA_NAI_MIP_MASK_REVERSE_TUNNEL + TAPI_DATA_NAI_MIP_MASK_HOME_ADDRESS + \
689 TAPI_DATA_NAI_MIP_MASK_PRIMARY_HOME_AGENT_IP;//TAPI_DATA_NAI_MIP_MASK_USER_NAI + TAPI_DATA_NAI_MIP_MASK_SPI_MN_HA + TAPI_DATA_NAI_MIP_MASK_SPI_MN_AAA;
690 ret_val = tel_get_data_mobile_ipnai (&MipNaiIdx, &ParamMask, &RequestID);
691 printf(" \n tel_get_data_mobile_ipnai Tapi return returnStatus value is [%x] RequestID : [%d] \n ", ret_val, RequestID);
695 if( memcmp(buf,"4",sizeof("4")-1) == 0 )
697 TelDataMipNaiParam_t MipNaiParam;
698 ComposeMobileIPNaiParametr(&MipNaiParam);
699 ret_val = tel_set_data_mobile_ipnai (&MipNaiParam, &RequestID);
700 printf(" \n tel_set_data_mobile_ipnai Tapi return returnStatus value is [%x] RequestID : [%d] \n ", ret_val, RequestID);
703 // Get Current NAI Index
704 if( memcmp(buf,"5",sizeof("5")-1) == 0 )
706 ret_val = tel_get_data_current_nai_index(&RequestID);
707 printf(" \n tel_get_data_current_nai_index Tapi return returnStatus value is [%x] RequestID : [%d] \n ", ret_val, RequestID);
711 if( memcmp(buf,"6",sizeof("6")-1) == 0 )
713 ret_val = tel_get_data_te2_status(&RequestID);
714 printf(" \n tel_get_data_te2_status Tapi return returnStatus value is [%x] RequestID : [%d] \n ", ret_val, RequestID);
717 // Get Roam Guard Mode
718 if( memcmp(buf,"14",sizeof("14")-1) == 0 )
720 ret_val = tel_get_data_roam_guard(&RequestID);
721 printf(" \n tel_get_data_roam_guard Tapi return returnStatus value is [%x] RequestID : [%d] \n ", ret_val, RequestID);
724 // Set Roam Guard Mode
725 if( memcmp(buf,"15",sizeof("15")-1) == 0 )
727 TelDataRoamGuardMode_t RoamGuard = TAPI_DATA_ROAM_GUARD_DEFAULT;
728 ret_val = tel_set_data_roam_guard(&RoamGuard, &RequestID);
729 printf(" \n tel_set_data_roam_guard Tapi return returnStatus value is [%x] RequestID : [%d] \n ", ret_val, RequestID);
733 if( memcmp(buf,"16",sizeof("16")-1) == 0 )
735 ret_val = tel_get_data_nai(&RequestID);
736 printf(" \n tel_get_data_nai Tapi return returnStatus value is [%x] RequestID : [%d] \n ", ret_val, RequestID);
740 if( memcmp(buf,"17",sizeof("17")-1) == 0 )
742 TelDataModemNAIMode_t ModemNai = TAPI_DATA_MODEM_NAI_OFF;
743 ret_val = tel_set_data_nai(&ModemNai, &RequestID);
744 printf(" \n tel_set_data_nai Tapi return returnStatus value is [%x] RequestID : [%d] \n ", ret_val, RequestID);
747 // 20. Get EVDO Rev Config
748 if( memcmp(buf,"20",sizeof("20")-1) == 0 )
750 ret_val = tel_get_data_evdo_rev_config(&RequestID);
751 printf(" \n tel_get_data_evdo_rev_config Tapi return returnStatus value is [%x] RequestID : [%d] \n ", ret_val, RequestID);
754 // Set EVDO Rev Config(Rev-A or Rev-0)
755 if( memcmp(buf,"21",sizeof("21")-1) == 0 )
757 //TelDataRevConfig_t RevConfig = TAPI_DATA_REVA;
758 //ret_val = TelTapiDataSetEVDORevConfig (&RevConfig, &RequestID);
759 //printf(" \n TelTapiDataSetForceRevAMode Tapi return returnStatus value is [%x] RequestID : [%d] \n ", ret_val, RequestID);
762 // Get Singed In State Mode
763 if( memcmp(buf,"22",sizeof("22")-1) == 0 )
765 //ret_val = tel_get_data_signed_in_sate (&RequestID);
766 printf(" \n tel_get_data_signed_in_sate Tapi return returnStatus value is [%x] RequestID : [%d] \n ", ret_val, RequestID);
769 // Set Singed In State Mode
770 if( memcmp(buf,"23",sizeof("23")-1) == 0 )
772 //TelDataSignStatus_t SignStatus = TAPI_DATA_PACKET_NAI_SIGNIN_OUT;
773 //ret_val = tel_set_data_signed_in_sate (&SignStatus, &RequestID);
774 //printf(" \n tel_set_data_signed_in_sate Tapi return returnStatus value is [%x] RequestID : [%d] \n ", ret_val, RequestID);
777 // Set the NAI value to factory setting
778 if( memcmp(buf,"24",sizeof("24")-1) == 0 )
780 ret_val = tel_restore_data_nai(&RequestID);
781 printf(" \n tel_restore_data_nai Tapi return returnStatus value is [%x] RequestID : [%d] \n ", ret_val, RequestID);
784 // Get Dedicated Data Transmission Mode
785 if( memcmp(buf,"25",sizeof("25")-1) == 0 )
787 ret_val = tel_get_data_ddtm_config(&RequestID);
788 printf(" \n tel_get_data_ddtm_cofig Tapi return returnStatus value is [%x] RequestID : [%d] \n ", ret_val, RequestID);
791 // Set Dedicated Data Transmission Mode
792 if( memcmp(buf,"26",sizeof("26")-1) == 0 )
794 TelDataDDTMStatus_t DDTMStatus= TAPI_DATA_DDTM_MODE_OFF;
795 ret_val = tel_set_data_ddtm_config (&DDTMStatus, &RequestID);
796 printf(" \n tel_set_data_ddtm_cofig Tapi return returnStatus value is [%x] RequestID : [%d] \n ", ret_val, RequestID);
799 // Set DSWorking Mode
800 if( memcmp(buf,"28",sizeof("28")-1) == 0 )
802 //TelDataDSWorkingMode_t DSWorkingMode = TAPI_DATA_DSWORKING_MODE_OFF;
803 //ret_val = tel_set_data_ds_working_mode (&DSWorkingMode, &RequestID);
804 //printf(" \n tel_set_data_ds_working_mode Tapi return returnStatus value is [%x] RequestID : [%d] \n ", ret_val, RequestID);
807 // Get Packet Data Call Config
808 if( memcmp(buf,"29",sizeof("29")-1) == 0 )
810 TelDataPacketConfigType_t Type;
813 printf("Select Config Type\n");
815 printf("1. Mobile IP\n");
816 printf("2. Packet Data Call Type\n");
817 printf("3. Packet Orig Str\n");
818 printf("4. Pap User ID\n");
819 printf("5. Pap Password\n");
825 //ret_val = TelTapiDataGetPacketDataCallConfiguration(&Type, &RequestID);
826 printf(" \n TelTapiDataGetPacketDataCallConfiguration Tapi return returnStatus value is [%x] RequestID : [%d] \n ", ret_val, RequestID);
829 // Set Packet Data Call Config
830 if( memcmp(buf,"30",sizeof("28")-1) == 0 )
835 if( memcmp(buf,"q",sizeof("q")-1) == 0)
844 void cdma_data_select_loop(void)
854 ret = select(0 + 1, &readfds, NULL, NULL, NULL);
857 if (FD_ISSET(0, &readfds))
859 if(cdma_data_read_key_input() < 0)
866 void cdma_data_test_unsubscribe_tapi_event(void)
869 TapiResult_t api_err = TAPI_API_SUCCESS;
871 for(i=0;i<NUM_OF_CDMA_DATA_EVENT; i++){
872 api_err = tel_deregister_event(cdma_data_subscription_id[i]);
873 if(api_err != TAPI_API_SUCCESS){
874 TEST_DEBUG("tel_deregister_event isn't unsubscribed. sub id is %d api_err is %d\n",cdma_data_subscription_id[i],api_err);
883 void cdma_data_test_subscribe_tapi_events (void)
886 TapiResult_t api_err = TAPI_API_SUCCESS;
888 int CdmaDataEvt[NUM_OF_CDMA_DATA_EVENT] = { TAPI_EVENT_DATA_MIP_NAI_GET_CNF,
889 TAPI_EVENT_DATA_MIP_NAI_SET_CNF,
890 TAPI_EVENT_DATA_CURRENT_NAI_INDEX_GET_CNF,
891 TAPI_EVENT_DATA_TE2_STATUS_GET_CNF,
892 TAPI_EVENT_DATA_TE2_STATUS_NOTI,
893 TAPI_EVENT_DATA_BYTES_COUNTER_RESET_CNF,
894 TAPI_EVENT_DATA_BYTES_COUNTER_GET_CNF,
895 TAPI_EVENT_DATA_DS_TE2_DATA_RATE_INFO_NOTI,
896 TAPI_EVENT_DATA_HDR_SESSION_CLEAR_SET_CNF,
897 TAPI_EVENT_DATA_ROAM_GUARD_GET_CNF,
898 TAPI_EVENT_DATA_ROAM_GUARD_SET_CNF,
899 TAPI_EVENT_DATA_MODEM_NAI_GET_CNF,
900 TAPI_EVENT_DATA_EVDO_REV_CONFIG_GET_CNF,
901 TAPI_EVENT_DATA_EVDO_REV_CONFIG_SET_CNF,
902 TAPI_EVENT_DATA_RESTORE_NAI_SET_CNF,
903 TAPI_EVENT_DATA_DDTM_CONFIGURATION_GET_CNF,
904 TAPI_EVENT_DATA_DDTM_CONFIGURATION_SET_CNF,
905 TAPI_EVENT_DATA_PACKET_DATA_CALL_CONFIGURATION_GET_CNF,
909 //TEST_DEBUG("########### CDMA DATA TEST #############\n");
910 if(tel_init() == TAPI_API_SUCCESS)
912 for(i=0;i<NUM_OF_CDMA_DATA_EVENT; i++){
913 api_err = tel_register_event(CdmaDataEvt[i], &cdma_data_subscription_id[i],(TelAppCallback)&cdma_data_async_event_callback, NULL);
915 if(api_err != TAPI_API_SUCCESS){
916 TEST_DEBUG("tel_register_event isn't subscribed. sub id is %d api_err is %d\n",cdma_data_subscription_id[i],api_err);
923 TEST_DEBUG("tel_init() failed");