android 无法开机的uart log浅析

类似complex R/W mem test fail 在preloader阶段挂掉,请和弊司联系;
[SD0] DAT CRC error,请打patch:ALPS00787669;
NAND项目:
init: command r=-1 ' mount ubifs ubi@system /system wait'
init: command r=-1 ' mount ubifs ubi@userdata /data nosuid nodev wait'
init: command r=-1 ' mount ubifs ubi@cache /cache nosuid nodev wait'
eMMC项目:
init: command r=-1 ' mount ext4 /emmc@android /system noatime ro remount wait'
init: command r=-1 ' mount ext4 /emmc@usrdata /data noatime nosuid nodev wait noauto_da_alloc,discard'
init: command r=-1 ' mount ext4 /emmc@cache /cache noatime nosuid nodev wait noauto_da_alloc,discard'
               出现类似NAND项目或者eMMC项目的任一条错误,请按照[FAQ05169] [Storage]如何从手机上readback任意分区的image回来
               的说明read back对应的分区数据;对于NAND项目,需要page only和page +spare两种方式
 log中出现Exception stack,则请提供对应版本的symbols(须与抓取log的问题机器中版本为同一次编译生成):\kernel\out\vmlinux
        其他说明:


  [SD0] SET_CLK(52000kHz): SCLK(50000kHz)        表示eMMC在preloader阶段工作在52MHZ
   msdc0 -> !!! Set<200000KHz> Source<200000KHz>    表示eMMC在kernel阶段工作在200MHZ
对于log中出现data crc error,time out的情况,时常需要对eMMC的工作频率进行降低,pl、lk和kernel阶段的clk设定分别为
\mediatek\platform\mt6×××\preloader\src\drivers\msdc.c
void msdc_config_clock(struct mmc_host *host, int ddr, u32 hz)
\mediatek\platform\mt6×××\lk\msdc.c
void msdc_config_clock(struct mmc_host *host, int ddr, u32 hz)
\mediatek\platform\mt6×××\kernel\drivers\mmc-host\sd.c
static void msdc_set_mclk(struct msdc_host *host, int ddr, u32 hz)
对应的降频处理修改点为下面三支文件去除MSDC_UHS1,可以查看patch:ALPS00787669的修改来进一步理解:


\mediatek\custom\project\lk\cust_msdc.c


\mediatek\custom\project\preloader\msdc_cust.c


\mediatek\custom\project\kernel\core\src\board.c
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值