九鼎创展论坛中文版English
登录 | 立即注册 设为首页收藏本站

x3399 uboot出现“mmc: ERROR”错误无法正常启动

查看数: 55662 | 评论数: 4 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
sks
发布时间: 2018-10-11 14:20

正文摘要:

x3399板子,修改了u-boot/include/configs/rk33plat.h,在配置文件的最后增加以下几行:/* modified for Lava Music */ #if defined(CONFIG_RKCHIP_RK3399) #define CONFIG_PREBOOT   #undef CONFIG_DISPL ...

回复

sks 发表于 2018-10-11 16:10:03
补充说明一下,gd成员变量赋值这里眼快没细看说错了,但是这个rkclk_get_pll()关键的CPU、外设时钟设置调用实在不应该在CONFIG_DISPLAY_CPUINFO的作用范围内。
sks 发表于 2018-10-11 15:25:50
可以调试了,查了一下,跟RK的平台架构文件有关,原因在于取消CONFIG_DISPLAY_CPUINFO的定义这里,u-boot/arch/arm/cpu/armv8/rk33xx/cpu.c使用了该宏,本意是不打印CPU信息,但是却意外的把其它的gd成员变量赋值与rkclk_get_pll()调用都注释掉了,emmc数据传输错误跟这时钟设置有关。
#ifdef CONFIG_DISPLAY_CPUINFO
int print_cpuinfo(void)
{
        if (gd->arch.chiptype == RKCHIP_UNKNOWN)
                rk_get_chiptype();

#if defined(CONFIG_RKCHIP_RK3368)
        if (gd->arch.chiptype == CONFIG_RK3368)
        #if defined(CONFIG_RKCHIP_PX5)
                printf("CPU: px5\n");
        #else
                printf("CPU: rk3368\n");
        #endif
#endif

#if defined(CONFIG_RKCHIP_RK3366)
        if (gd->arch.chiptype == CONFIG_RK3366)
                printf("CPU: rk3366\n");
#endif

#if defined(CONFIG_RKCHIP_RK3399)
        if (gd->arch.chiptype == CONFIG_RK3399)
                printf("CPU: rk3399\n");
#endif

        rkclk_get_pll();
        rkclk_dump_pll();

        return 0;
}
#endif
sks 发表于 2018-10-11 15:06:09
通过maskrom模式更新了uboot,但是出现问题的原因待查

QQ|手机版|小黑屋|深圳市九鼎创展科技官方论坛 ( 粤ICP备11028681号-2  

GMT+8, 2024-11-22 15:01 , Processed in 0.021136 second(s), 21 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表