一: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 就添加好了