计划赶不上变化

导航

学习imx6dl遇到的困难总结 持续更新 很痛也很傻

最近进了新公司开始鼓捣imx6,虽然说之前弄过imx8的应用层,但是底层移植完全不一样 简直太无助了。

首先介绍下故事背景,拿到一个imx6dl的板子,是基于飞凌的板子改的。网上资料又少,一无所知的我开始了踩坑之路。拿到板子和一套飞凌板子送的源码,本以为是简单的uboot移植,还是厂家给的代码,那不是嘎嘎简单。搞了2天给我迎头痛击,这什么玩意?我居然连串口头打印都出不来?我开始怀疑板子大改过,但是拿原理图对比了下就几个小引脚改了下,串口1都没动,怎么可能出不了串口打印。我翻出了N年前看过的三星板子视频,重新操作了下,一路下来没什么毛病啊。第二天又去公司摸索,又过去2天还是毫无头绪,这不是逼我买个板子嘛,心想正点原子不是又免费的视频嘛。我看看不就好了,反正有基础的。讲的都差不多,唯独我漏了一个 imx的3K字节头 这个是imx板子的特殊之处。我真该死啊。 又正值五一 官方不发货,就急着某鱼买了个飞凌的板子整整500大洋啊,虽然是二手的 但是心疼啊。吐槽下这家公司,这种开发板的东西还要实名登记,进论坛下载还有权限,买了才给下载 ,格局是真小。麻绳专挑细处断啊,可能是我电脑漏电了吧 ,也不知道这个二手的板子有问题,我下载好了镜像进去 然后就起不来了,什么都看不到,串口也没打印,反正就是坏了。联系官方要修,还要我购买记录。我真是冤种啊 500买来点个亮烧下就废。然后又不能调试了。只能上班继续搞。那种感觉真是抓狂啊,看代码也没问题,也不给编译成功的源码。一个劲的网上找为什么。每晚都是看正点原子的那个视频,好几天都看得昏昏欲睡,直到看到那个ivt和dcd那一章 我整个人都激灵了,老师讲的是真的好啊 真的细。第二天我果断拿hexdump 看了下firmware的uboot.imx的头和我自己编译出来的头对比了下 果然不一样,赶紧手动mx6dlsabresd.cfg 改了下这个里面的寄存器配置。

编译出来后对比了一下头 ,99%一样 good  ,上机   太激动了 ,结果又是一盆冷水。为什么还不行?

我现在突然开始质疑我的才华。无奈问了下领导,要了份可以跑的源码,直接成了卑微仔。他的雀氏可以跑,我赶紧查了下他的mx6dlsabresd.cfg,果然和我的不一样。就几个字节不同,该死啊 就这几个字节让我当了次卑微仔。我二话不说直接拷贝他的这个mx6dlsabresd.cfg,编译一波。在上电的那一瞬间 我泪牛满面 这个串口头终于出来了。我没错,我不该质疑自己的才华。只不过我没用工具处理ddr,没跑测拿到配置数据。然后一个下午就把uboot搞定了99%。

我翻遍了众多博客 都是抄袭模仿,全篇都是抄imx6null的,可能都不知道换了ddr 型号容量会导致板子起不来,也很少讲到问题的根本所在,我反正找了3天 起到帮助的寥寥无几,真的伤心我的500大洋啊。能吃多少份男人的浪漫啊。下次一定要理解启动原理再去玩板子,本能以为这些个ddr初始化都是在uboot的init_sequence_f去初始化的。一次惨痛的教训

 

posted on 2024-05-15 17:02  张培粉  阅读(22)  评论(0编辑  收藏  举报