MT6735 EMI 定製

一:MTK 平臺查看eMMC和DDR的工作頻率
    eMMC:
     adb shell cat /sys/kernel/debug/mmc0/clock
    DDR:
     adb shell cat /sys/bus/platform/drivers/emi_clk_test/read_dram_data_rate
1. 獲取 flash id:
    cat /sys/block/mmcblk0/device/cid
    
    kernel-3.18\drivers\mmc\core\Mmc.c
    MMC_DEV_ATTR(cid, "%08x%08x%08x%08x\n", card->raw_cid[0], card->raw_cid[1]

    通過Flash Tool讀去機器上的flash ID,進而判斷機器上貼的是哪顆flash
    關閉Flash Tool, 重新打開
        download
            菜單中“Help” -> open logs folder - "SP_FT_Dump_01-21-2019-13-34-04" -> BROM_DLL_V5.log
               搜索“ID” -> "DEBUG: EMMCDeviceCheck::Dump(): [MVG INFO]: ID(0x13014E51324A39365210030A8085A3B3)"
二:增加 flash.步驟
    1:判斷 MCU 型號 在個文件添加
         ls vendor/mediatek/proprietary/bootable/bootloader/preloader/tools/emigen/MT6735/
            emigen.pl  MemoryDeviceList_MT6735M.xls  MemoryDeviceList_MT6735.xls  MemoryDeviceList_MT6737M.xls  MemoryDeviceList_MT6737T.xls
            我通過./vendor/mediatek/proprietary/bootable/bootloader/preloader/custom/hys6737m_35_m0/hys6737m_35_m0.mk
            4:MACH_TYPE=mt6737m
            在 MemoryDeviceList_MT6737M 中添加時序
    2:ddr時序
        ddr認證列表和時序集成(mtk或者ddr原廠提供)
        調試flash首先是id,mtk的規則是id匹配才能下載,id是可以通過datasheet或者工具來讀出。
        然後是時序,這一部分得有專門的工具和儀器。
    3: 添加 flash
        MemoryDeviceList_MT6737M.xls
        vendor/mediatek/proprietary/bootable/bootloader/preloader/custom/hys6737m_35_m0/inc/custom_MemoryDevice.h 
         #define BOARD_ID                MT6735_EVB             // 兼容了 8種
         //1+8
         #define CS_PART_NUMBER[0]       08EMCP08_NL2DT227
         #define CS_PART_NUMBER[1]       H9TP64A8JDMCPR_KGM
         #define CS_PART_NUMBER[2]       TYC0FH121638RA
         #define CS_PART_NUMBER[3]       08EMCP08_NL2CV100
         #define CS_PART_NUMBER[4]       KMK7X000VM_B314
         #define CS_PART_NUMBER[5]       SD7DP28C_8G
         #define CS_PART_NUMBER[6]       H9TP65A8JDACPR_KGM
         #define CS_PART_NUMBER[7]       KMK7U000VM_B309                 4:查看out目錄查看編譯的flash型號,及DDR時序
        ./out/target/product/hys6737m_35_m0/obj/PRELOADER_OBJ/inc/custom_emi.h         
          EMI_SETTINGS emi_settings[] =
          {      
              //08EMCP08_NL2DT227
              {
                  0x0,        /* sub_version */
                  0x0202,     /* TYPE */
                  9,      /* EMMC ID/FW ID checking length */
                  0,      /* FW length */
                  {0x70,0x01,0x00,0x45,0x48,0x38,0x45,0x42,0x38,0x0,0x0,0x0,0x0,0x0,0x0,0x0},     /* NAND_EMMC_ID */
                  {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0},      /* FW_ID */
                  0x00025052,     /* EMI_CONA_VAL */
                  0xAA00AA00,     /* DRAMC_DRVCTL0_VAL */
                  0xAA00AA00,     /* DRAMC_DRVCTL1_VAL */
                  0x44584493,     /* DRAMC_ACTIM_VAL */
                  0x01000000,     /* DRAMC_GDDR3CTL1_VAL */
                  0xF0048483,     /* DRAMC_CONF1_VAL */
                  0xA00632D1,     /* DRAMC_DDR2CTL_VAL */
                  0xBF080401,     /* DRAMC_TEST2_3_VAL */
        到這flash 就添加好了 

    

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章