硬件平台. am3368 + tps65910a3
UBOOT:SDK6.0自带
启动方式:SPI Norflash(镁光128MB) 或SD卡
复位方式如下:
1. CPU的RTC_PWRONRSTn管脚接了一个RC网络,上电后通过RC电路复位CPU的内部RTC模块
2. 上电后CPU给TPS65910一个PMIC_POWER_EN(PWRHOLD)握手信号,使得TPS65910使能并产生各种电平
3. TPS65910正常工作完成后,输出nRESPWRON信号,nRESPWRON信号通过一个与门求与后输出至CPU的PWRONRSTn管脚,该与门的一个信号是nRESPWRON,另一个信号是按键复位(通过复位芯片TPS3803G33实现)
现在的问题是:拨码开关选择SPI启动,上电时,CPU能从一个128MB的spi接口的NorFlash自动加载uboot并引导镜像执行,当使用按键复位时uboot不能启动,并且调试串口不能打印任何uboot信息(像死机一样),拨码开关选择MMC启动,插上TF卡,此时上电复位和按键复位都是正常的。
在SPI方式下,当我按下复位按键,发现PWRONRSTn有效,WARMRSTn也有效,说明CPU确实是复位了,但为何此方式下按键复位时不能自动加载uboot运行?
Jian Zhou:
这个问题以前碰到过,因为32M以上的SPI FLASH,进入到kernel以后会调整工作方式,每次系统warm reset的时候也要把SPI Flash重启下。