关于6573集成MCP nandflash的方法,driver_allinone 和Memory Customer Document pdf的说明里面漏了很多细节.在此补上.

1.首先确认flash型号.如sumsung的KA100O015E_BJTT.

2.查看MTK_MVG_Release的MemoryDeviceList_MT7673.xls,看一看这颗flash是否经过mtk验证.如果有,则把这一行数据copy出来.如果没有,则要提交给mtk来调试.

3.在mediatek\build\tools\emigen\MT6573\MemoryDeviceList_MT6573.xls中添加一行第2步中copy出来的数据.

4.修改\mediatek\custom\ckt73_gb\preloader\inc\custom_MemoryDevice.h

//#define BOARD_ID                 ZTEMT73V2

  1. define BOARD_ID                MT6573_EVB  //修改为MemoryDeviceList_MT7673.xls中的BOARD_ID要与此处一致.

//NAND_ID for MT29C4G96MAZAPCJA_5IT is 0x2CBC

  1. define CS0_PART_NUMBER[0]       MT29C4G96MAZAPCJA_5IT
  2. define CS1_PART_NUMBER[0]       MT29C4G96MAZAPCJA_5IT

//NAND_ID for KA100O015E_BJTT is 0xECBC

  1. define CS0_PART_NUMBER[1]       KA100O015E_BJTT  //问基带工程师我们的MCP的bank分配.一般分为bank0 bank1,对应CS0,CS1.
  2. define CS1_PART_NUMBER[1]       KA100O015E_BJTT  //

5.这时你可以执行./mk ./mk -t projectname emigen 去生成对应的emi参数文件:

mediatek\custom\ckt73_gb\preloader\inc\custom_emi.h

mediatek\custom\ckt73_gb\preloader\custom_emi.c

6.修改\mediatek\build\tools\emigen\MT6573\nandgen.pl

6573平台与6516平台修改nand参数的方式不同. 6573用nandgen.pl生成nand参数文件\mediatek\custom\ckt73_gb\common\nand_device_list.h

修改nandgen.pl:

       $advance_option = 0;
# if ($PROJECT_FIELD[$iter] eq $PROJECT)
{
print "$PAGE_SIZE $PAGESIZE_FIELD[$iter]\n" ;
#if (($PAGE_SIZE eq "4K" && $PAGESIZE_FIELD[$iter] eq 4096) || ($PAGE_SIZE eq "2K" && $PAGESIZE_FIELD[$iter] eq 2048))
if(1)
{
...
}

把上面if条件改为1. 不去判断pagesize.

7.修改ProjectConfig.mk .

有两项CUSTOM_DRAM_SIZE和MTK_NAND_PAGE_SIZE

查看MemoryDeviceList_MT7673.xls中此flash对应TotalSize大小,如512M,则CUSTOM_DRAM_SIZE 为 512M*8 =4G

查看MemoryDeviceList_MT7673.xls中此flash对应的PageSize大小.如4096,则MTK_NAND_PAGE_SIZE 为 4K.

8.修改partition_table.xls

查看MemoryDeviceList_MT7673.xls中此flash对应的BlockSize大小.partition_table中连续partiton的大小都要为BlockSize的整数倍.

修改Size (KB)这一项,其它start addr和end addr都会自动修改.

注意要修改对应的pagesize的页面,如pagesize是4K,则修改mt6573 no 4k这一页.

修改完成后使用./mk ptgen可以产生新的scatfile和parttion table参数文件.

其它:

1.上述中使用emigen和nandgen命令,在new时都会自动执行.

2.关于nandgen这个命令,可以在makeMtk中加入nandgen到actions说明内,就可以用./mk 得到nandgen的说明: @actions =  qw(

  new n bm_new remake r bm_remake clean c listproject listp
drvgen codegen nandgen emigen custgen javaoptgen ptgen
check-modem update-modem sign-image sign-modem check-dep
dump-memusage dump-comp-bld-info gen-relkey
);

3.如果要换的nandflash不是MCP,则第3,4步有不同之处,具体看driver_allinone pdf或者Memory Customer Document pdf.

MTK android flash配置的更多相关文章

  1. MTK平台释疑android M 配置中断相关问题

    1.使用老方法(android L)配置中断,调用request_irq函数时出错,错误代码 -22  Dear Customer: 您好! 如电话沟通,贵司可以在发过来的code基础上做下面的修改再 ...

  2. MTK Android software Tools工具的说明

    MTK发布的Android software Tools工具包,里面包含了很多的MTK工具,如下是简要说明及学习文档 MTK Android software Tools工具的说明如下: 工具 说明 ...

  3. MTK Android Driver :Camera

    MTK Android Driver :camera 1.相关代码位置:mediatek\config\XXXX(红色字为具体的项目名) 文件:ProjectConfig.mk CUSTOM_KERN ...

  4. MTK Android Driver :Lcm

    MTK Android Driver :lcm 1.怎样新建一个LCD驱动 LCD模组主要包括LCD显示屏和驱动IC.比如LF040DNYB16a模组的驱动IC型号为NT35510.要在MTK6577 ...

  5. MTK Android Driver :Key

    MTK Android Driver :Key 1.按键配置(根据原理图):DCT(Driver Customization Tool): ..\mediatek\custom\prj\kernel\ ...

  6. Win10下Android studio配置

    Win10下Android studio配置 一.安装Android Studio的准备工作 1.下载好JDK,去官网上找一个下载下来 2.安装JDK.并配置环境变量.安装过程:本人将使用的是jdk- ...

  7. [Android] 环境配置之正式版Android Studio 1.0

    昨天看见 Android Studio 1.0 正式版本发布了:心里挺高兴的. 算是忠实用户了吧,从去年开发者大会一开始出现 AS 后就开始使用了:也是从那时开始就基本没有用过 Eclipse 了:一 ...

  8. Android studio配置Git

    Android studio配置Git 1.下载window 版git并安装:下载地址 2.Android Studio设置git插件:File->Setting->Version Con ...

  9. [Android] 环境配置之基础开发环境(SDK/Android Studio)(转)

    [Android] 环境配置之基础开发环境(SDK/Android Studio)   博客: blog.csdn.net/qiujuer 网站: www.qiujuer.net 开源库: Geniu ...

随机推荐

  1. 【Python】一个简单的例子

    问题描述:          Python基础篇   参考资料:          (1)http://www.cnblogs.com/octobershiner/archive/2012/12/04 ...

  2. 【BZOJ】【3473】字符串

    后缀数组 Orz zyf 神题不会做啊,先坑着吧……sigh //BZOJ 3473 #include<vector> #include<cstdio> #include< ...

  3. NYOJ-205 求余数 AC 分类: NYOJ 2014-02-02 12:30 201人阅读 评论(0) 收藏

    这题目看一眼以为难度评级出错了,只是一个求余数的题目,,后来才发现,位数小于百万位,,,我还以为是大小小于百万呢,所以借鉴了另一大神的代码, 用大数,重点是同余定理: (a+b)mod m=((a m ...

  4. Uart串口与RS232串口的区别

    Uart指的是TTL电平的串口:RS232指的是RS232电平的串口. TTL电平是3.3V的,而RS232是负逻辑电平,它定义+5~+12V为低电平,而-12~-5V为高电平. Uart串口的RXD ...

  5. 全面认识JVM技术

    本文向大家描述一下JVM的概念,JVM(Java虚拟机)是可运行Java代码的假想计算机.只要根据JVM规格描述将解释器移植到特定的计算机上,就能保证经过编译的任何Java代码能够在该系统上运行. J ...

  6. UML基本表示法(转载)

    UML是流行的图解符号.我们都知道,UML是可视化,说明,构建和记录软件和非软件系统的组成部分.这里的可视化是最重要的部分,需要被理解和记忆. UML符号是最重要的建模元素.适当有效地使用符号是非常重 ...

  7. 获取app版本号

    NSDictionary *infoDictionary = [[NSBundle mainBundle] infoDictionary]; NSString *name = [infoDiction ...

  8. applicationContext.xml xxx-servlet.xml

    applicationContext.xml是随ContextLoaderListener的加载而执行的,而xxx-servlet.xml是随DispatcherServlet的加载而执行的,在web ...

  9. Chapter 5

    1. 2模块导入 3.包导入

  10. 接口、抽象类、方法复写、类Equals方法重写

    接口: /* * Java接口中的數據成員必須初始化,該成員有隱藏的final.satic.常量, * 一次賦值后不可在賦值 * 成員方法訪問修飾符必須是公共修飾符,可以顯示聲明也可以不聲明 * 成員 ...