我编写A8裸机程序,为什么像FLASH、PCIe、DDR等这些外部地址一读写就出错?arm就进入abort模式?
Ternence_Hsu:
你好;
你的裸机程序是怎么跑的 ?
Chris Meng:
Han Weikun,
1. 你是否有运行gel初始化DDR?
2. 如果是nor flash,写实需要使用命令的,如果是nand flash,读写都需要命令,要写驱动的。
3. PCIe,你是说pci的寄存器,还是pcie空间? 你是否有开启pcie的时钟,是否有做正确的配置。
waken han:
回复 Chris Meng:
Chris,
我说的这些都是指空间,相应寄存器都能读写;
运行这些必须先运行DDR吗?我DDR还没有调,接法不是按照开发板接的,若用gel文件就得改改,我是接了两片DDR在通道DDR[1]上,我现在开始怀疑这种接法能用吗,是不是要么DDR[0]、DDR[1]都接上,要么只能接DDR[0]上?不用DDR这些空间不能访问吗?
waken han:
回复 Ternence_Hsu:
你好!
我的程序就是在线调试,在OCMC SRAM上运行的,板子是自己画的,跟开发板的不一样,现就调通的串口。
Chris Meng:
回复 waken han:
Han Weikun,
不初始化DDR,是不能否访问DDR空间的。PCIe也是类似的道理。
waken han:
回复 Chris Meng:
初始化了,时钟也打开了,配置也没问题,会不会和MMU有关?
Chris Meng:
回复 waken han:
weikun han
初始化了,时钟也打开了,配置也没问题,会不会和MMU有关?
你说的是DDR么?你之前提到你只是用了EMIF1,请问你是否有正确配置LISA MAP寄存器?
waken han:
回复 Chris Meng:
GPMC和DDR都有这种情况,DDR的LISA MAP寄存器配置了,还是访问不了。
waken han:
回复 Chris Meng:
ARM工程的裸机程序访问这些是不是跟MMU有关?我看到其他地方有说关闭MMU就可以的,可是我试了试还是不行。
Chris Meng:
回复 waken han:
Han Weikun,
GPMC上你接了nor flash?
请问DDR的时序配置你是否有按照你使用的DDR芯片手册调整过?DDR布线请保证严格按照数据手册的要求来做。
你现在LISA MAP的寄存器是如何配置的?