过完年就开始调试LS1043的单板。几年前调试过LS1046,NXP一套代码支持多种CPU,所以代码结构,编译环境不需要重新研究。厂家提供两个LS1043的demo板,一个是QDS,一个是RDB,我采用QDS这套,因为里面有QSPI启动的RCW硬件配置字,同时结合RDB的代码,DDR,网口驱动等部分。下面记录一下该单板调试遇到的主要几个问题
1、BL2加载BL3代码,加载完毕后刷新数据cache死机,执行不下去了。打印如下
代码是死在这个位置,flush_dcache_range是汇编指令,把数据cache回写到DDR内存,居然死机了。怀疑与内存有关,对DDR内存进行了读写又正常,折腾了好多遍误打误撞解决了。
2、BL31加载uboot代码,跳转后串口打印乱码。此时已经在uboot代码中执行。找技术支持咨询,是串口时钟配置错了,修改后正常。
3、做了个小工具,将bpl、uboot、ucode三个文件整合成一个烧录文件,一次性烧写到QSPI FLASH
4、烧录器界面,使用MX66U1G45G作为bootrom
目前网口还在调试中,暂时不通。
有需要调板的朋友,私下联系,有偿支持。