⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 nvimnv.c

📁 free sources for gsm
💻 C
📖 第 1 页 / 共 5 页
字号:
   nv_write_item(NV_RRC_INTEGRITY_ENABLED_I, &nvi);

DEPENDENCIES
  None.

RETURN VALUE
  Status of write operation.

SIDE EFFECTS
  None.

===========================================================================*/
#ifdef _SAMSUNG_BCOM_BT //sec_layer1_jhlee_050503_1
extern byte* bta_make_bd_addr( void );
#endif
#ifdef _SAMSUNG_MP_IMEI_WRITE
extern int Master_Reset;
#endif

#ifdef _SAMSUNG_BREW_BACKLIGHT  //sec_ui2_kkw_20051030_2
extern uint16 ui_lcd_brightness;   
#endif

nv_stat_enum_type nv_rebuild_defaults(void)
{
  int i;
  const  byte DEFAULT_BD_ADDR[NV_BD_ADDR_SIZE] = {1, 0, 0, 71, 18, 0};
#ifdef _SAMSUNG_BCOM_BT
  byte * default_bda;
#endif // _SAMSUNG_BCOM_BT
  nv_item_type nvi;
  
  /* NV read status */
  nv_stat_enum_type          nv_write_status;

  /* status from writing NV */
  nv_stat_enum_type status = NV_DONE_S;  

  /* loop counter for RF NV item fetches */
  uint8                      nv_item_cnt;

  /* Pointer to the list of RF NV items */
  const rfnv_items_list_type        *nv_item_list;
   
  /* Number of items in RF NV items list */
  uint16                     nv_item_list_siz;  

  /* Pointer to the supported mode info type */
  rfnv_supported_mode_info_type *mode_info_ptr;

  /* index to each mode */
  rfnv_supported_mode_type   mode_idx;

  boolean rfnv_exist_rebuilditem; 

  /*--------------------------------------------------------------*/

  /* NV item's initialization codes followed here.
  */

#ifdef _SAMSUNG_BREW_SIM //sim lock 
  nvi.mem_simlock.simlock_state = FALSE;
  memset((void*)nvi.mem_simlock.simlock_iccid, 0, 10);
  memset((void*)nvi.mem_simlock.simlock_pw, 0, 8);
  memset((void*)nvi.mem_simlock.simchange_iccid, 0xFF, 10);
  nv_write_status = nv_write_item( NV_SIM_ICCID_I, &nvi);
   
  /* if write status is good */
  if (nv_write_status != NV_DONE_S) 
  {
    MSG_HIGH( "SIM Lock NV rebuild failed",0,0,0);
  } 
#endif

#ifdef _SAMSUNG_BREW_BACKLIGHT
  nvi.mem_backlight_nvi.back_light = 15;
  nvi.mem_backlight_nvi.dim = 15;
  nv_write_status = nv_write_item( NV_BACKLIGHT_I, &nvi);
   
  /* if write status is good */
  if (nv_write_status != NV_DONE_S) 
  {
    MSG_HIGH( "Backlight NV rebuild failed",0,0,0);
  } 

  nvi.service_light = FALSE;	//sec_ui2_hangun_20050628_1 : service light dafault 蔼 off
  nv_write_status = nv_write_item( NV_SERVICE_LIGHT_I, &nvi);
   
  /* if write status is good */
  if (nv_write_status != NV_DONE_S) 
  {
    MSG_HIGH( "Service Light NV rebuild failed",0,0,0);
  } 

#endif

// hym_nv_initialization 041205 [
  nvi.cli_mode = 0;   //SET_NETWORK_CID_DEFAULT
  nv_write_status = nv_write_item(NV_SS_CLI_MODE_I, &nvi);
  if (nv_write_status != NV_DONE_S) 
  {
    MSG_HIGH( "CLI MODE rebuild failed",0,0,0);
  } 
// hym_nv_initialization 041205 ]
// hym_nv_initialization [
  nvi.rrc_integrity_enabled = TRUE;
  nv_write_status = nv_write_item(NV_RRC_INTEGRITY_ENABLED_I, &nvi);
  if (nv_write_status != NV_DONE_S) 
  {
    MSG_HIGH( "RRC Integerity enabled  rebuild failed",0,0,0);
  } 

  nvi.rrc_ciphering_enabled = TRUE;
  nv_write_status = nv_write_item(NV_RRC_CIPHERING_ENABLED_I, &nvi);
  if (nv_write_status != NV_DONE_S) 
  {
    MSG_HIGH( "RRC Ciphering enabled  rebuild failed",0,0,0);
  } 
// hym_nv_initialization ]

   //JJURASSICPARK MENU_FORMAT篮 泅犁 荤侩窍绊 乐瘤 臼酒辑 Java Volume 蔼阑 历厘窍扁 困茄 NV item栏肺 荤侩钦聪促.
   //蔼狼 裹困绰 0何磐 100鳖瘤
   nvi.menu_format = 60; //9
   nv_write_status = nv_write_item(NV_MENU_FORMAT_I, &nvi);
   if (nv_write_status != NV_DONE_S) 
   {
      MSG_HIGH( "RRC Ciphering enabled  rebuild failed",0,0,0);
   }
   //JJURASSICPARK

//whlee. 2004_1104. Set Initial condition after EFS rebuild for DRX mode On --------------------------
#ifdef _SAMSUNG_PROT_DRX_OFF
  nvi.ue_drx_mode = TRUE;
  nv_write_status = nv_write_item(NV_UE_DRX_MODE_I, &nvi);
  if (nv_write_status != NV_DONE_S) 
  {
    MSG_HIGH( "UE DRX Mode rebuild failed",0,0,0);
  } 
#endif
//-----------------------------------------------------------------------------end of whlee. 2004_1104
//whlee. 2004_1206. Set default value of C1 threshold.------------------------------------------------
#ifdef _SAMSUNG_PROT_ADJUST_C1_THRESHOLD
  nvi.user_C1_setting = 0;
  nv_write_status = nv_write_item(NV_USER_C1_SETTING_I, &nvi);
  if (nv_write_status != NV_DONE_S) 
  {
    MSG_HIGH( "User C1 setting rebuild failed",0,0,0);
  } 
#endif //_SAMSUNG_PROT_ADJUST_C1_THRESHOLD
//-----------------------------------------------------------------------------end of whlee. 2004_1206

//-----------------> prot_iflwy 20051213 For saving F3 to Trace buffer
#if 0 //sec_ui1_phw_debug - Done in diagdebug.h
#ifdef FEATURE_SAVE_DEBUG_TRACE
#ifdef _SAMSUNG_ADMIN_DEBUG_ITEM_SETTING //sec_ui1_ldh_060131
nvi.diag_debug_control = 0x05;
#else
#ifdef _SAMSUNG_INTERNAL_VER
nvi.diag_debug_control = 0x05;
#else
nvi.diag_debug_control = FALSE;
#endif
#endif
  nv_write_status=nv_write_item(NV_DIAG_DEBUG_CONTROL_I,&nvi);
  if(nv_write_status != NV_DONE_S)
   {
      MSG_HIGH(" diag debug control enabled rebuild failed",0,0,0);
   }
#ifdef _SAMSUNG_ADMIN_DEBUG_ITEM_SETTING //sec_ui1_ldh_060131
nvi.diag_debug_detail = 0xFF;
#else
#ifdef _SAMSUNG_INTERNAL_VER
nvi.diag_debug_detail = 0xFF;
#else
nvi.diag_debug_detail = FALSE;
#endif
#endif
  nv_write_status=nv_write_item(NV_DIAG_DEBUG_DETAIL_I,&nvi);
  if(nv_write_status != NV_DONE_S)
   {
      MSG_HIGH(" diag debug detail enabled rebuild failed",0,0,0);
   }
#endif
#endif //sec_ui1_phw_debug
//<---------------- End point 4 dumping RAM if error occurrs.

// hym_2_mode_perf_for_Tmobile 050124
// Changed all default value as FALSE by prot_whlee. 20051007
#ifdef FEATURE_SAMSUNG_DUALMODE_IMPROVEMENT  
#if defined(_SAMSUNG_VODA)    // sec_ui2_ikyom_20050622  compile error 荐沥 
  nvi.dualModePerfImprove_enabled = FALSE;
#elif defined(_SAMSUNG_TMO)
  nvi.dualModePerfImprove_enabled = FALSE;
#else
  nvi.dualModePerfImprove_enabled = FALSE;
#endif
  nv_write_status = nv_write_item(NV_DUALMODEPERFIMPROVE_VER_I, &nvi);
  if (nv_write_status != NV_DONE_S) 
  {
    MSG_HIGH( "Dual mode pref improve rebuild failed",0,0,0);
  } 
#endif
#ifdef FEATURE_SAMSUNG_CAMERA //jhlee_camif
  nvi.afc_mode_sel = FALSE;  
  nv_write_status = nv_write_item( NV_AFC_MODE_SEL_I, &nvi );

  /* if write status is good */
  if (nv_write_status != NV_DONE_S) 
  {
    MSG_HIGH( "AFC_MODE_SEL NV rebuild failed",0,0,0);
  } 

#ifdef _Z130_HW05
  nvi.hall_sen_sel = 2;
#else
  nvi.hall_sen_sel = 1;
#endif
  nv_write_status = nv_write_item( NV_HALL_SEN_SEL_I, &nvi );

  /* if write status is good */
  if (nv_write_status != NV_DONE_S) 
  {
    MSG_HIGH( "HALL_SEN_SEL NV rebuild failed",0,0,0);
  } 
  
#endif

  /* RF NV items is rebuilded here */
  for (mode_idx = 0; mode_idx < RFNV_SUPPORTED_MODE_NUM; mode_idx++)
  {
     mode_info_ptr = &rfnv_supported_mode_info_table[mode_idx];

     /* get the pointer to NV items list for each mode */
     nv_item_list =  mode_info_ptr->nv_item_list_ptr;

     /* get the list size */
     if( mode_info_ptr->get_nv_item_list_size != NULL)
       nv_item_list_siz = (mode_info_ptr->get_nv_item_list_size)();
     else
       nv_item_list_siz = 0;
     
     if(mode_info_ptr->rebuild_nv_item != NULL)
       /* for each NV item in the list, read from NV and copy into local buffer. */
       /* then copy from local buffer into RF NV table for each mode */
       for (nv_item_cnt = 0; nv_item_cnt < nv_item_list_siz; nv_item_cnt++) 
       {
         /* copy from local buffer into RF NV table */
         rfnv_exist_rebuilditem = mode_info_ptr->rebuild_nv_item( nv_item_list[nv_item_cnt].nv_item_id,&nvi );
         if(rfnv_exist_rebuilditem)
         {
         nv_write_status = nv_write_item( nv_item_list[nv_item_cnt].nv_item_id, &nvi);
            /* if read status is good */
            if (nv_write_status != NV_DONE_S) 
            {
              status = nv_write_status; 
            } /*for (nv_item_cnt = 0; nv_item_cnt < nv_item_list_siz; nv_item_cnt++)*/
         }
     }
  } /*for (mode_idx = 0; mode_idx < RFNV_SUPPORTED_MODE_NUM; mode_idx++)*/

#ifdef _SAMSUNG_CPHS // ALS
  nvi.als_mode = 1;
  nv_write_status = nv_write_item( NV_ALS_MODE_I, &nvi);
   
  /* if write status is good */
  if (nv_write_status != NV_DONE_S) 
  {
    MSG_HIGH( "AlsMode NV rebuild failed",0,0,0);
  } 
#endif

  nvi.mem_dateandtime_nvi.flg = 0x21;
  nv_write_status = nv_write_item( NV_DATEANDTIME_I, &nvi);
   
  /* if write status is good */
  if (nv_write_status != NV_DONE_S) 
  {
    MSG_HIGH( "DateTime NV rebuild failed",0,0,0);
  } 

#if defined(_SAMSUNG_TIM)//sec_ui2_dmk_20050702  
  nvi.mem_language_nvi.kind    = LNG_ITALIAN;
  nvi.mem_language_nvi.t9_kind = LNG_ITALIAN;
#else
  nvi.mem_language_nvi.kind    = LNG_ENGLISH;
  nvi.mem_language_nvi.t9_kind = LNG_ENGLISH;
#endif
  nv_write_status = nv_write_item( NV_LANGUAGE_I, &nvi);
   
  /* if write status is good */
  if (nv_write_status != NV_DONE_S) 
  {
    MSG_HIGH( "Language NV rebuild failed",0,0,0);
  } 
  
/* Bluetooth id default value setting   20040118  ikyom */
#ifndef _SAMSUNG_BCOM_BT //sec_layer1_jhlee_050503_1
  for(i=0; i < 6 ; i++)
  	nvi.bd_addr.bd_addr[i] =  DEFAULT_BD_ADDR[i];
#else
  default_bda = bta_make_bd_addr();
  for(i=0; i < 6 ; i++)
  {
    nvi.bd_addr.bd_addr[i] =  default_bda[i];
  }
#endif
//  nvi.bd_addr.bd_addr = DEFAULT_BD_ADDR;
  nv_write_status = nv_write_item( NV_BD_ADDR_I, &nvi);
  if ( nv_write_status != NV_DONE_S)
  {
    MSG_HIGH( "Bluetooth id NV rebuild failed",0,0,0);
  }

#ifdef _SAMSUNG_MP_PRECONFIG  //sec_ui2_kkw_20050809_1
  nvi.power_on_attach = TRUE;
  status = nv_write_item( NV_POWER_ON_ATTACH_I, &nvi);
  if (status != NV_DONE_S)
  {
    MSG_ERROR("NV_POWER_ON_ATTACH_I rebuild failed!!", 0, 0, 0);
  }
#endif //_SAMSUNG_MP_FACTORY_PRECONFIG

#ifndef _SAMSUNG_HW_RF_CAL_REQUIRED  // sec_sys_hds_050913  temporarily work for calibartion  
  // ATTACH MODE
  nvi.service_domain_pref.nam        = 0;
  nvi.service_domain_pref.srv_domain = NV_SRV_DOMAIN_PREF_CS_PS; //combined
  if (nv_write_item(NV_SERVICE_DOMAIN_PREF_I, &nvi) != NV_DONE_S)
  {
    MSG_ERROR("NV_SERVICE_DOMAIN_PREF_I failed!!", 0, 0, 0);
  }
#endif  

#ifdef _SAMSUNG_BREW_CONTACT
#if defined( _SERVICE_TMOBILE )
    nvi.ct_setting_save_new_ct_to.save_new_ct_to = 3; //SETTING_SNCT_ASK_EACH_TIME
#elif defined( _SERVICE_OPEN )
    nvi.ct_setting_save_new_ct_to.save_new_ct_to = 3; //SETTING_SNCT_ASK_EACH_TIME
#elif defined( _SERVICE_TIM ) //sec_ui2_jwlee_20050929
    nvi.ct_setting_save_new_ct_to.save_new_ct_to = 3; //SETTING_SNCT_ASK_EACH_TIME
#else
    nvi.ct_setting_save_new_ct_to.save_new_ct_to = 1; //SETTING_SNCT_HANDSET_MEMORY
#endif
  status = nv_write_item( NV_SETTING_SAVE_NEW_CT_TO, &nvi);
  if (status != NV_DONE_S)
  {
    MSG_ERROR("NV_SETTING_SAVE_NEW_CT_TO rebuild failed!!", 0, 0, 0);
  }
#endif // _SAMSUNG_BREW_CONTACT
  
#ifdef _SAMSUNG_BREW_SIM // privacylock sec_ui2_mky_20050616 
  nvi.privacylock.msg_privacylock_state = FALSE;
  nvi.privacylock.fm_privacylock_state = FALSE;
  nvi.privacylock.clog_privacylock_state = FALSE;     //sec_ui2_mky_050810
  nvi.privacylock.cont_privacylock_state = FALSE; 
  nv_write_status = nv_write_item( NV_PRIVACY_LOCK_I, &nvi);
   
  /* if write status is good */
  if (nv_write_status != NV_DONE_S) 
  {
    MSG_HIGH( "Privacy Lock NV rebuild failed",0,0,0);
  } 
#endif
//ccy_pwron_attach_mode_realization(
#ifdef _SAMSUNG_PROT_PWR_ON_ATT
  nvi.pwron_att_manual_mode = TRUE;
  status = nv_write_item( NV_PWRON_ATT_MANUAL_MODE_I, &nvi);
  if (status != NV_DONE_S)
  {
    MSG_ERROR("NV_PWRON_ATT_MANUAL_MODE_I rebuild failed!!", 0, 0, 0);
  }
#endif  
//)

#ifdef  _SAMSUNG_MM_PICSELVIEWER  // sec_ui1_hyuk_20050816_1
  nvi.picsel_controller = TRUE;
  status = nv_write_item( NV_PICSEL_CONTROLLER_I, &nvi);
  if (status != NV_DONE_S)
  {
    MSG_ERROR("NV_PICSEL_CONTROLLER_I rebuild failed!!", 0, 0, 0);
  }
#endif

#ifdef  _SAMSUNG_HEAP3X_DEBUG        //sec_ui2_ikyom_20051020_1 
#if defined(_SAMSUNG_INTERNAL_VER) || defined(_SAMSUNG_INSPECT) //sec_ui1_phw_20060118
  nvi.use_mem_check = TRUE;
#else
  nvi.use_mem_check = FALSE;
#endif
  status = nv_write_item( NV_GBUSE_MEM_CHECK_I, &nvi);
  if (status != NV_DONE_S)
  {
    MSG_ERROR("NV_GBUSE_MEM_CHECK_I rebuild failed!!", 0, 0, 0);
  }
#if defined(_SAMSUNG_INTERNAL_VER) || defined(_SAMSUNG_INSPECT) //sec_ui1_phw_20060118
  nvi.free_mem_check = TRUE;
#else
  nvi.free_mem_check = FALSE;
#endif
  status = nv_write_item( NV_GBFREE_MEM_CHECK_I, &nvi);
  if (status != NV_DONE_S)
  {
    MSG_ERROR("NV_GBFREE_MEM_CHECK_I rebuild failed!!", 0, 0, 0);
  }
  nvi.from_idle = FALSE;
  status = nv_write_item( NV_GBFROM_IDLE_I, &nvi);
  if (status != NV_DONE_S)
  {
    MSG_

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -