错误 #4205
cpri pma初始化失败,导致tfu 挂死/CPU锁死
由 高 峰 在 7 天 之前添加.
更新于 7 天 之前.
历史记录
CP端:
CPRI PMA初始化成功后,stc_pclk_init 中有轮询一个判断标致,如果没有初始化成功时会一直锁死在这个位置:
while (1 != (do_read_volatile(SERDES_INIT_FLAG_ADDR)));
会导致AP端读取CP的寄存器异常,比如:TFU中读取STC CLK频率寄存器;
进而会导致操作系统异常(RCU)
此问题一般发生在以下几种情况下:
1. PHY 没有启动,L2或TFU就启动了
2. PHY的版本文件损坏,无法正常初始化
3. PHY的版本不正确,无法正常初始化
目前的猜测是:
CP面的寄存器空间,mmap 内核底层逻辑和DDR是不一样的;驱动重构了CP寄存器访问的mmap
有可能内核态访问CP寄存器空间时,会一直等待对方的类似反馈标志之类的;
由于CP没有初始化成功,AP访问CP寄存器的总线不可用,导致操作系统一直阻塞在读取CP寄存器位置。
以上逻辑是我们自己的猜测,需要和思朗确认
导出 Atom
PDF