Showing
3 changed files
with
106 additions
and
1 deletions
| ... | ... | @@ -178,7 +178,13 @@ META_RESULT SmartPhoneSN::WriteNvramLoop() |
| 178 | 178 | break; |
| 179 | 179 | |
| 180 | 180 | case SP_CHECK_CAL_FT_FLAG_STAGE: |
| 181 | - if (g_sMetaComm.bCheckCalFlag || g_sMetaComm.bCheckFtFlag) | |
| 181 | + // <<XIEMENG | |
| 182 | + #ifdef __TOPWELL_QCTEST__ | |
| 183 | + if (g_sMetaComm.bCheckCalFlag || g_sMetaComm.bCheckFtFlag || g_sMetaComm.bCheckQCFlag) | |
| 184 | + #else | |
| 185 | + if (g_sMetaComm.bCheckCalFlag || g_sMetaComm.bCheckFtFlag) | |
| 186 | + #endif | |
| 187 | + // >>XIEMENG | |
| 182 | 188 | { |
| 183 | 189 | char tmpBuf[2048] = {0}; |
| 184 | 190 | iRet = REQ_ReadModem_NVRAM_Start(WRITE_BARCODE, tmpBuf, 1); |
| ... | ... | @@ -2468,6 +2474,99 @@ SPMETA_DLL::META_RESULT SmartPhoneSN::REQ_ReadAP_NVRAM_Start(WriteData_Type_e da |
| 2468 | 2474 | return MetaResult; |
| 2469 | 2475 | } |
| 2470 | 2476 | |
| 2477 | + | |
| 2478 | + | |
| 2479 | + // <<XIEMENG | |
| 2480 | +#ifdef __TOPWELL_QCTEST__ | |
| 2481 | +int SmartPhoneSN::REQ_ReadAP_NVRAM_QC(void) | |
| 2482 | +{ | |
| 2483 | + MTRACE (g_hEBOOT_DEBUG, "SmartPhoneSN::REQ_ReadAP_NVRAM_QC()..."); | |
| 2484 | + | |
| 2485 | + SPMETA_DLL::META_RESULT MetaResult = SPMETA_DLL::META_SUCCESS; | |
| 2486 | + int iBufLen = 0; | |
| 2487 | + char *pLID = NULL; | |
| 2488 | + CString mytest,mytesttemp; | |
| 2489 | + pLID = "AP_CFG_REEB_PRODUCT_INFO_LID"; | |
| 2490 | + | |
| 2491 | + // pLID = "AP_CFG_REEB_PRODUCT_INFO_LID"; | |
| 2492 | + SPMETA_DLL::FT_NVRAM_READ_REQ sNVRAM_ReadReq; | |
| 2493 | + SPMETA_DLL::FT_NVRAM_READ_CNF sNVRAM_ReadCnf; | |
| 2494 | + SPMETA_DLL::META_RESULT meta_result; | |
| 2495 | + int iWriteBufSize = 0; | |
| 2496 | + memset(&sNVRAM_ReadReq, 0, sizeof(SPMETA_DLL::FT_NVRAM_READ_REQ)); | |
| 2497 | + memset(&sNVRAM_ReadCnf, 0, sizeof(SPMETA_DLL::FT_NVRAM_READ_CNF)); | |
| 2498 | + | |
| 2499 | + MTRACE (g_hEBOOT_DEBUG, "SmartPhoneSN::SP_META_NVRAM_GetRecLen(): Start to get nvram struct size via LID = \"%s\"...", pLID); | |
| 2500 | + meta_result = SPMETA_DLL::SP_META_NVRAM_GetRecLen(pLID, &iWriteBufSize); | |
| 2501 | + if ( SPMETA_DLL::META_SUCCESS != meta_result) | |
| 2502 | + { | |
| 2503 | + MTRACE_ERR (g_hEBOOT_DEBUG, "SmartPhoneSN::SP_META_NVRAM_GetRecLen(): Get nvram struct size fail, MetaResult = %s", ResultToString_SP(meta_result)); | |
| 2504 | + return 0; | |
| 2505 | + } | |
| 2506 | + else | |
| 2507 | + { | |
| 2508 | + MTRACE (g_hEBOOT_DEBUG, "SmartPhoneSN::SP_META_NVRAM_GetRecLen(): Get nvram struct size = %d successfully!", iWriteBufSize); | |
| 2509 | + if ( NULL != sNVRAM_ReadCnf.buf ) | |
| 2510 | + { | |
| 2511 | + free ( sNVRAM_ReadCnf.buf ); | |
| 2512 | + sNVRAM_ReadCnf.buf = NULL; | |
| 2513 | + } | |
| 2514 | + | |
| 2515 | + sNVRAM_ReadReq.LID = pLID; | |
| 2516 | + sNVRAM_ReadReq.RID = 1; | |
| 2517 | + sNVRAM_ReadCnf.len = iWriteBufSize; | |
| 2518 | + sNVRAM_ReadCnf.buf = (unsigned char*) malloc (iWriteBufSize*sizeof(unsigned char)); | |
| 2519 | + if (NULL == sNVRAM_ReadCnf.buf) | |
| 2520 | + { | |
| 2521 | + MTRACE_ERR (g_hEBOOT_DEBUG, "Malloc heap memory cause fail!"); | |
| 2522 | + return 0; | |
| 2523 | + } | |
| 2524 | + } | |
| 2525 | + | |
| 2526 | + MTRACE (g_hEBOOT_DEBUG, "SmartPhoneSN::REQ_ReadFromAPNVRAM(): Start to read nvram data..."); | |
| 2527 | + meta_result = REQ_ReadFromAPNVRAM (&sNVRAM_ReadReq, &sNVRAM_ReadCnf); | |
| 2528 | + | |
| 2529 | + | |
| 2530 | + if (meta_result != SPMETA_DLL::META_SUCCESS ) | |
| 2531 | + { | |
| 2532 | + | |
| 2533 | + | |
| 2534 | + | |
| 2535 | + MTRACE_ERR (g_hEBOOT_DEBUG, "REQ_ReadFromAPNVRAM: fail! MetaResult = %s", ResultToString_SP(meta_result)); | |
| 2536 | + return 0; | |
| 2537 | + } | |
| 2538 | + | |
| 2539 | + { | |
| 2540 | + int loop = 0; | |
| 2541 | + for (;loop<iWriteBufSize;loop++) | |
| 2542 | + { | |
| 2543 | + if(loop%50 == 0) | |
| 2544 | + mytesttemp.Format(" %d_%x\n",loop,sNVRAM_ReadCnf.buf[loop]); | |
| 2545 | + else | |
| 2546 | + mytesttemp.Format(" %d_%x",loop,sNVRAM_ReadCnf.buf[loop]); | |
| 2547 | + mytest += mytesttemp; | |
| 2548 | + } | |
| 2549 | + } | |
| 2550 | + | |
| 2551 | + if(sNVRAM_ReadCnf.buf[g_sMetaComm.QCFlag_index] == 0) | |
| 2552 | + { | |
| 2553 | + // ::AfxMessageBox("QC test fail"); | |
| 2554 | + return 0; | |
| 2555 | + } | |
| 2556 | + else | |
| 2557 | + { | |
| 2558 | + // ::AfxMessageBox("QC test pass"); | |
| 2559 | + return 1; | |
| 2560 | + } | |
| 2561 | + | |
| 2562 | + | |
| 2563 | + | |
| 2564 | + | |
| 2565 | +} | |
| 2566 | + | |
| 2567 | +#endif | |
| 2568 | + // >>XIEMENG | |
| 2569 | + | |
| 2471 | 2570 | SPMETA_DLL::META_RESULT SmartPhoneSN::REQ_WriteAP_NVRAM_Start(WriteData_Type_e dataType, char *pInData, unsigned short iRID) |
| 2472 | 2571 | { |
| 2473 | 2572 | if (!pInData) | ... | ... |
| ... | ... | @@ -73,6 +73,11 @@ protected: |
| 73 | 73 | virtual SPMETA_DLL::META_RESULT LoadAPDatabase(); |
| 74 | 74 | |
| 75 | 75 | virtual SPMETA_DLL::META_RESULT REQ_ReadAP_NVRAM_Start(WriteData_Type_e dataType, char *pOutData, unsigned short iRID); |
| 76 | + // <<XIEMENG | |
| 77 | + #ifdef __TOPWELL_QCTEST__ | |
| 78 | + virtual int REQ_ReadAP_NVRAM_QC(); | |
| 79 | + #endif | |
| 80 | + // >>XIEMENG | |
| 76 | 81 | virtual SPMETA_DLL::META_RESULT REQ_WriteAP_NVRAM_Start(WriteData_Type_e dataType, char *pInData, unsigned short iRID); |
| 77 | 82 | virtual META_RESULT REQ_ReadModem_NVRAM_Start(WriteData_Type_e dataType, char *pOutData, unsigned short iRID); |
| 78 | 83 | virtual META_RESULT REQ_WriteModem_NVRAM_Start(WriteData_Type_e dataType, char *pInData, unsigned short iRID); | ... | ... |
Please
register
or
login
to post a comment