现象:
断电 --> 上电 --> 系统可正常起来 ---> reboot 系统起不来
断电--> 上电 --> uboot 阶段 reset 可以重启
从这个现象可以看出来,应该是软件的问题,应该是 uboot 和 linux 对 spi-flash 的配置不一样。
这个问题是因为 reboot时,SPI-FLASH没有复位,保留的是linux下的配置(没有配置到4字节地址模式),而ls1046 boot ROM里 默认是4bytes的模式,所以导致reboot起不来, 而断电上电,spi flash 有复位动作,所以默认是4byte地址模式,所以可以正常启动。
reboot 失败
-- flash 配置问题 、flash 复位问题。
-- CPU reset 的寄存器配置 ,函数接口
refer:
mtd: spi-nor: only apply reset hacks to broken hardware - Patchwork