微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 手机设计讨论 > MTK手机平台交流 > eMMC切换成NAND后不开机问题

eMMC切换成NAND后不开机问题

时间:10-02 整理:3721RD 点击:
1、进行EMMC到NAND flash的切换
请首先参考相关文档,不同平台上的参考文档有所差异,具体如下:
MT6575和MT6577平台,请DCC上下载文档:Nand vs EMMC feature switch
MT6572平台,DCCNand vs EMMC feature switch_MT6572
文档中提到需要申请patch,要确认贵司的软件版本来确认coebase中是否已经有patch内容,可以联系mtk确认,patch确认后,按照文档中的要求进行相关改动,主
要包括如下几处的改动:
配置custom_memoryDevice.h,设置要使用的nandflash。
修改ProjectConfig.mk中MTK_NAND_PAGE_SIZE
\mediatek\config\${project}\autoconfig\kconfig\project文件
Cust_nand.h
修改DWS,确认Flash相关的GPIO正确配置
2、编译后下载如果开机异常
请首先使用usrt抓取开机过程的kernel log,
如果log中有看到如下信息:
[ 2.882658] (0)[1:init]BOOTPROF: 2882.630692:INIT:NAND:Mount_START
[ 2.884471] (0)[1:init]BOOTPROF: 2884.451153:INIT:NAND:Mount_END
或者
[ 8.221849] (0)[1:init]BOOTPROF: 8221.845384:INIT:NAND:Mount_START
[ 8.221876] (0)[1:init]init: command 'write /proc/bootprof INIT:NAND:Mount_START' r=0
[ 8.234254] (0)[1:init]init: command 'mount yaffs2 mtd@system /system' r=-1
[ 8.234293] (0)[1:init]init: command 'mkdir /system/secro 0600 system' r=-30
[ 8.234335] (0)[1:init]init: command 'mount yaffs2 mtd@system /system' r=-1
[ 8.236942] (1)[65:bat_thread_kthr][fg_get_data_ready_status] Reg[0x6a]=0x2
[ 8.237888] (1)[1:init]init: command 'mount yaffs2 mtd@userdata /data' r=-1
[ 8.238795] (1)[1:init]init: command 'mount yaffs2 mtd@cache /cache' r=-1
[ 8.239679] (1)[1:init]BOOTPROF: 8239.675231:INIT:NAND:Mount_END
或者
Couldn't find valid filesystem superblock.
e[ 3.031977] (1)[1:init]init: cannot find '/system/bin/xlog', disabling 'xlogboot'
up[ 3.173762] (1)[1:init]init: cannot find '/system/bin/servicemanager', disabling
'servicemanager'
[ 3.174885] (1)[1:init]init: cannot find '/system/bin/vold', disabling 'vold'
则表示nand文件系统没有正确加载,
请检查下面的配置:
\mediatek\config\${project}\autoconfig\kconfig\project中
# CONFIG_MTK_MTD_NAND is not set 去除(保留此句注释依然会编到)
CONFIG_MTK_MTD_NAND=y “=”前后都不能有空格
下面内容需要添加:
CONFIG_YAFFS_FS=y
CONFIG_YAFFS_YAFFS1=y
# CONFIG_YAFFS_9BYTE_TAGS is not set
# CONFIG_YAFFS_DOES_ECC is not set
CONFIG_YAFFS_YAFFS2=y
CONFIG_YAFFS_AUTO_YAFFS2=y
CONFIG_YAFFS_DISABLE_TAGS_ECC=y
# CONFIG_YAFFS_ALWAYS_CHECK_CHUNK_ERASED is not set
# CONFIG_YAFFS_EMPTY_LOST_AND_FOUND is not set
# CONFIG_YAFFS_DISABLE_BLOCK_REFRESHING is not set
# CONFIG_YAFFS_DISABLE_BACKGROUND is not set
CONFIG_YAFFS_XATTR=y
如果确认如上配置没有问题,请提交E-Service,并上传如下文件:kernel log,custom_MemoryDevice.h和MemoryDeviceList_{platform}.xls

学习学习

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top