0
点赞
收藏
分享

微信扫一扫

如何增加WAP profile到25个或更多


本FAQ适用于10A branch之前版本,10A及之后版本采用全新的smart profile设计。10A之前WAP profile默认设计是一张SIM卡最多支持10个profile,双卡时,两张卡一共可支持20个WAP profile,为满足某些客户的特殊需求,如单张SIM卡需支25个甚至更多wap profile,需参考本FAQ。 
一、目前代码中的限制说明: 
1) 当前,一张卡最多支持10个profile是被下列宏限制(参考注视参考了解限制原因)。 

MAX_GPRS_PROFILE_NUM (10) 

 NVRAM_WAP_PROF_MAX_STATIC_PROFILES 10 

 /* 

  * we only support 10 profiles per bearer due to following reasons 

  * 1) max control buffer size is 2K 

  * 2) default profile name string only define for 1~10. 

  */


 
2)编译阶段会作检查,如果发现profile个数超过25,会直接报错。 
#if NVRAM_WAP_PROF_MAX_SINGLE_SIM_PROFILES > 25 
#error Maximum number of profiles in 1 sim should be less than or equal to 25, Memory limitation. 
个数的限制是由于申请的ctrl_buff 超过了2k导致的,可以增加4k或更大control buffer来解决。 
如需要增加到25个以上的profile,需先对上述定义作相应调整。 
[Solution] 
二、具体的修改如下: 
1)修改Ctrl_buff_pool.h中相对应的NUM_CTRL_BUFF_POOL_SIZEXXXX,增加xxxx(如4K) control buffer pool个数为N 。 
e.g.NUM_CTRL_BUFF_POOL_SIZE4096 = N 
2)同步修改Custom_config.c中的 GLOBAL_MEM_SIZE,增加相应值e.g.GLOBAL_MEM_SIZE=380*1024GLOBAL_MEM_SIZE=380*1024+N*1024。 
3)然后在 custom_nvram_config.h 中, 将 NVRAM_CUSTOM_CFG_MAX_RECORD_SECTOR_NUM 值由4改成8。 
4)加了4k的control buffer 后,profile可以比原来多加2k(多25个)所以 
common_nvram_editor_data_item.h中的值: 
#if NVRAM_WAP_PROF_MAX_SINGLE_SIM_PROFILES > 25 
#error Maximum number of profiles in 1 sim should be less than or equal to 25, Memory limitation. 
#endif  
也要做同步修改,改为修改后的个数。 
5)如果增加的ctrl buffer仍然不够用,请根据增加的profile个数计算实际所需要的control buffer size,继续增大对应的control buffer pool ,如增加8K的ctrl buffer pool 。 
6) 添加成功后,若手动编辑profile时出现assert,可能是因为L4C lib需要update,可以通过提交e-Service 申请patch(MAUI_02349252)解决。 
7)如遇到其它异常,如死机等,请提交e-Service协助(请附上详细修改步骤,以及相应catcher log和memory dump以便作有效分析)。

举报

相关推荐

0 条评论