补充说明一下,gd成员变量赋值这里眼快没细看说错了,但是这个rkclk_get_pll()关键的CPU、外设时钟设置调用实在不应该在CONFIG_DISPLAY_CPUINFO的作用范围内。 |
可以调试了,查了一下,跟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 |
通过maskrom模式更新了uboot,但是出现问题的原因待查 |
|手机版|小黑屋|深圳市九鼎创展科技官方论坛 ( 粤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.