- 浏览: 37019 次
- 性别:
- 来自: 安徽
最新评论
MTK NVRAM
- 博客分类:
- 开发相关
nvram是程序用来搭建FAT文件系统的那一块,是flash后面分出的一块.
“flash后面分出的一块”:
在Build/CUSTOMER/scatCUSTOMER.txt中这样一行(Flash 64+32(Unit:Mbits),即8MB ROM,4MB RAM,(Unit:MBytes) ):
;SCHEME : external 7MB flash memory and 4MB SRAM
(除去文件系统后ROM还有7MB空间,RAM为 4MB).
在NVRAM中存储的数据包括:
1)校准数据
2)用户数据,如Phone book, SMS, to-do list 等
3)协议层数据,IMEI,TCM等
4)MMI设置、control values,wallpaper(墙纸),theme(主题),profiles等
DF: Dedicated File 专用文件
EF: Elementary File 基本文件
MF: Master File 主文件
EF三种类型:
Transparent EF 以Hex Binary形式存储
Linear-Fix EF 如电话号码,短信
Cyclic EF 如通话记录
nvram/src/Nvram_data_items.c中的logical_data_item_table_core中定义了各项存储。
LID Logical Data Item Identifier
Size size of one record
Total_records if = 1,it is transparent,otherwise linear-fixed
Attr attributes(Important/Writeprotect/Multiple/Confidential/
Multirec_Read/OTP/Difference)
Category category(User/System/Composed/Factory/Multi_Default/Custpack/
Branch/Shadow/Shadow_MS)
Size和Total_records定义在custom/common/pluto_mmi/Nvram_common_defs.h
Nvram_drv_type_enum Device type(FDM/EEPROM/MMC)
Fileprefix 文件前缀
File verno Version number of the data item
Description Human-reable description for data item
LIDclass (average LID / important LID)
Record Internally used by NVRAM
Transparent:the record size of this kind of data item is one byte.That is,data item consist of a sequences of bytes.
(Logical) Data Item:The basic management unit of NVRAM
向NVRAM中添加存储项
以存储Mobile ID为例。
① custom/common/Pluto_mmi/Common_nvram_editor_data_item.h
定义结构体
typedef struct
{
kal_uint8 marker[16];
} nvram_ef_mobile_id_struct;
定义LID版本号
#define NVRAM_EF_MOBILE_ID_LID_VERNO "001"
LID与结构体关联
LID_BIT VER_LID(NVRAM_EF_MOBILE_ID_LID)
nvram_ef_mobile_id_struct *NVRAM_EF_MOBILE_ID_TOTAL
{
};
② custom/common/Pluto_mmi/Nvram_common_defs.h
定义结构体对应的大小,总个数
#define NVRAM_EF_MOBILE_ID_SIZE sizeof(nvram_ef_mobile_id_struct)
#define NVRAM_EF_MOBILE_ID_TOTAL 1
定义LID
在结构体nvram_lid_commapp_enum的NVRAM_EF_LAST_LID_COMMAPP之前添加
NVRAM_EF_MOBILE_ID_LID
③ custom/common/Pluto_mmi/Nvram_common_config.c
定义结构体存储的默认值
static nvram_ef_mobile_id_struct const NVRAM_EF_MOBILE_ID_DEFAULT[] =
{
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
};
在结构体logical_data_item_table_comm_app的{ NVRAM_EF_RESERVED_LID }之前添加
{
NVRAM_EF_MOBILE_ID_LID, //LID号
NVRAM_EF_MOBILE_ID_SIZE, //结构体大小
NVRAM_EF_MOBILE_ID_TOTAL, //总个数
NVRAM_NORMAL((kal_uint8 const*)NVRAM_EF_MOBILE_ID_DEFAULT), //默认值
NVRAM_ATTR_AVERAGE,
NVRAM_CATEGORY_USER,
"MP9B", //序号
VER(NVRAM_EF_MOBILE_ID_LID), //LID版本号
"MOBILE ID/0", //该存储结构名称
NVRAM_RESERVED_VALUE
}
在该结构中添加的位置最好与声明的LID号在nvram_lid_commapp_enum中的结构对应。之前有次因为二者添加的位置不对应而导致Socket连接是ABM请求总是失败,无法连接。我想这样有可能是打乱了调用的某些东东,具体原因不详。
如果想在task初始化的时候初始化存储结构中的值可以在
Plutommi/mmi/framework/tasks/TasksSrc/MMITask.c中的InitNvramData函数添加对应的初始化函数。
发表评论
-
PPPD拨号返回结果码
2015-09-18 11:12 68100: pppd已经断开,或者已经成功建立连接后请求方又中 断 ... -
3G相关定时器说明
2014-08-06 10:05 838计时器和计数器RNC 计 ... -
PDP激活被拒绝原因码表
2012-07-19 20:55 2751om: http://wireless.agilent.com ... -
PDP激活被拒绝原因码表
2012-07-19 20:15 0方便查询:这些值是真正的原因,但要注意分析问题时尤其对二次开发 ... -
TCP重传
2012-07-03 20:23 1123为什么TCP存在重传 TCP是 ... -
TBF与PDP激活
2012-06-18 21:28 1153PDP先激活,CCCH上下行TBF建立流程如下:1、下行TBF ... -
C语言中的内存对齐问题
2012-05-29 10:31 753.C语言中的内存对齐 ... -
MTK内存管理
2012-04-20 00:36 4532MTK 内存管理 分类: MTK2011- ... -
MTK Timer
2012-04-18 14:33 40811. GPTI_StartItem 要精准很多,但是只能 ... -
WinSocket编程——原始套接字[转]
2012-03-26 09:23 4848WinSocket编程——原始套接字[转] ... -
TCP三次握手各种异常
2012-03-20 11:04 1362和TCP三次握手有关的面试题 分类: 网络 ... -
Windows API串口编程参考
2012-03-15 14:12 3349Windows API串口编程参 ... -
V.24 & V.35
2012-03-12 20:25 918V.24 & V.35 (2011-08 ... -
【C语言】while与for执行效率对比【转】
2012-03-12 19:00 1588【C语言】while与for执行效率对比【转】 C语言 ... -
[转]ASCII,Unicode,UTF-8,GB2312编码之间的关系
2012-03-12 18:59 902[转]ASCII,Unicode,UTF-8,GB231 ... -
NVRAM的简单添加 【转】
2012-02-29 10:14 815NVRAM的简单添加 MTK 在这里我只 ... -
MTK获取基站的cell_id 【转】
2012-02-29 10:07 1026MTK获取基站的cell_id 博客分类 ... -
MTK的HTTP连接方式
2012-02-29 10:08 843MTK的HTTP连接方式 博客分类: ... -
MTK中怎样创建和使用lib
2012-02-28 17:17 696MTK中怎样创建和使用lib 博客分类: MT ... -
MMI 和L4通信【转】
2012-02-28 17:16 1097MMI 和L4通信 博客分类: MTK ...
相关推荐
MTK NVRAM使用方法,希望对大家有用
NVRAM 的读写方法 NVRAM 的添加方法 以闹钟INLINE 菜单为例 步骤如下: 1.在Nvram_common_defs.h 文件中添加LID 选项到nvram_lid_co mmapp_enum 枚举中 NVRAM_EF_MY_LID, /* Add LID with its compile optoin...
这个是MTK很实用的文档,里面详细描述了NVRAM的设置和参数修改,以及注意事项等。
MTK_NVRAM_Editor的源码,可能对你们有用哦
1.ROM(Read Only Memory\只读存储器):通常用来存储操作系统和内置程序,相当于MTK的Code Region,这部分的内容是写入后不允许修改的; 2.RAM(Random Access Memory\随机访问存储器):相当于电脑内存了,特点是...
MTK平台,使用于读写naram里面值,主要关于nvagent使用
mtk 手机运行环境 nv下如何更改网络参数 铃声等
初学者必备良药,学MTK NVRAM的必看,相当很非常十分好的东西
UEM_NVRAM_Customizable.pdf FS_NVRAM_GSM2003.pdf FS_NVRAM_LID_CHANGE.pdf FS_NVRAM_Oct2004.pdf NVRAM_Configuration_Guide_User.pdf SOP_SRV_NVRAM_Customization_06A.pdf SOP_SRV_NVRAM_Customization_V0.04....
MTK最新资料关于NVRAM操作的介绍MTK最新资料关于NVRAM操作的介绍
MTK平台NVRAM的机制,讲解十分详细,很是有用
MTK 中的NVRAM读写操作指南 有不明白加QQ: 1362193163 QQ:1362193163
NVRAM使用文档
MTK Nvram Tool in QT C++
NVPRAM备份知识
lenovo p1ma40 nvram flash with miracle box infinity cm2 or ultimate multitool mtk modulle
NVRAM_READ&WRITE.doc 关于Draw Manager.doc 20099219112813045—编程规范与原则.pdf BB Tranning.pdf MMI实例培训教程.pdf mtk api函数文档 一个拥有平台所有api函数的说明文档.pdf mtk+训练课程.pdf Nucleus PLUS...
NVRAM_READ&WRITE.doc 关于Draw Manager.doc 20099219112813045—编程规范与原则.pdf BB Tranning.pdf MMI实例培训教程.pdf mtk api函数文档 一个拥有平台所有api函数的说明文档.pdf mtk+训练课程.pdf Nucleus PLUS...
...
。。。