• MTK android flash配置


    关于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.在mediatekuild oolsemigenMT6573MemoryDeviceList_MT6573.xls中添加一行第2步中copy出来的数据.

    4.修改mediatekcustomckt73_gbpreloaderinccustom_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参数文件:

    mediatekcustomckt73_gbpreloaderinccustom_emi.h

    mediatekcustomckt73_gbpreloadercustom_emi.c

    6.修改mediatekuild oolsemigenMT6573 andgen.pl

    6573平台与6516平台修改nand参数的方式不同. 6573用nandgen.pl生成nand参数文件mediatekcustomckt73_gbcommon and_device_list.h

    修改nandgen.pl:

           $advance_option = 0;
           # if ($PROJECT_FIELD[$iter] eq $PROJECT)
           {
               print "$PAGE_SIZE $PAGESIZE_FIELD[$iter]
    " ;
               #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.


  • 相关阅读:
    activity
    笔记
    创建敌人基类
    让精灵改变方向并前进
    给敌人精灵创建帧动画
    每帧创建一个item
    lua -- 所有UI组件的基类
    lua -- 系统提示框
    lua -- 生成协议
    ES6,数组遍历
  • 原文地址:https://www.cnblogs.com/LoongEmbedded/p/5298444.html
Copyright © 2020-2023  润新知