无法开机的uart log浅析
时间:10-02
整理:3721RD
点击:
[DESCRIPTION]
浅析不开机的UART log
[SOLUTION]
类似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阶段工作在52MHZmsdc0 -> ! 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
浅析不开机的UART log
[SOLUTION]
类似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阶段工作在52MHZmsdc0 -> ! 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
你好牛比
无法开机,但是还有LOG出来,说明还是可以开机的,只是不能完成整个开机流程而已。