项目

一般

简介

错误 #4205

cpri pma初始化失败,导致tfu 挂死/CPU锁死

高 峰7 天 之前添加. 更新于 7 天 之前.

状态:
新建
优先级:
一般
指派给:
开始日期:
2025-09-29
计划完成日期:
% 完成:

0%

预期时间:

历史记录

#1

高 峰 更新于 7 天 之前

CP端:
CPRI PMA初始化成功后,stc_pclk_init 中有轮询一个判断标致,如果没有初始化成功时会一直锁死在这个位置:
while (1 != (do_read_volatile(SERDES_INIT_FLAG_ADDR)));

会导致AP端读取CP的寄存器异常,比如:TFU中读取STC CLK频率寄存器;
进而会导致操作系统异常(RCU)

#2

高 峰 更新于 7 天 之前

此问题一般发生在以下几种情况下:
1. PHY 没有启动,L2或TFU就启动了
2. PHY的版本文件损坏,无法正常初始化
3. PHY的版本不正确,无法正常初始化

#3

高 峰 更新于 7 天 之前

目前的猜测是:
CP面的寄存器空间,mmap 内核底层逻辑和DDR是不一样的;驱动重构了CP寄存器访问的mmap
有可能内核态访问CP寄存器空间时,会一直等待对方的类似反馈标志之类的;
由于CP没有初始化成功,AP访问CP寄存器的总线不可用,导致操作系统一直阻塞在读取CP寄存器位置。

以上逻辑是我们自己的猜测,需要和思朗确认

导出 Atom PDF