DM8168新板从贴片到系统启动折腾了二十多天终于完成,高校里做个东西好累,导师只给机焊10个BGA,别的都是手工。
前段时间启动操作系统时,到了Starting Matrix GUI application。。。
出现了 pgd = c0004000 的毛病,查了很久没找到合适的答案,最后回到log看到一句提示:
Unable to handle kernel paging request at virtual address xxxxxx
last sysfs file: /sys/module/pvrsrvkm/initstate
貌似是内存映射的原因导致报错,就去查内存,以前没有对内存进行全空间的检查,这一检查就出了错,
上次也写过这个问题,八个DDR3,数据出错总是出在同一个DDR3上,数据很不稳定这让我不能再相信
这片颗粒了,吹下来换上去一个,再把数据上的电阻给重新修了修,补了补,终于EMIF0、1的DDR3终于
能hold住数据不让它随便变了。修好内存再去启动,果然没有了内存映射的毛病。回头一想之前DM8168
快速读写DDR3的时候,里面的数据都不能保持住,这系统运行应用程序肯定得出点错。上次做个8168板
被电源完整性给整惨了,内核都跑不起,顶多运行个bootloader就停了。一次有一次的进步,纪念一下。
原文地址:http://blog.csdn.net/wu20093346/article/details/40556033