项目

一般

简介

错误 #4205

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

高 峰大约 2 个月 之前添加. 更新于 21 天 之前.

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

0%

预期时间:

历史记录

#1

高 峰 更新于 大约 2 个月 之前

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

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

#2

高 峰 更新于 大约 2 个月 之前

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

#3

高 峰 更新于 大约 2 个月 之前

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

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

#4

杨 晋 更新于 大约一个月 之前

后续遇到类似问题,可以在phy启动后,协议栈启动前,读一下寄存器test_mem 0xb7e060b0 32,看看cpri 初始化函数走到哪里

#5

战 弋戈 更新于 大约一个月 之前

  • 状态新建 变更为 进行中
#6

战 弋戈 更新于 大约一个月 之前

  • 状态进行中 变更为 反馈
#7

战 弋戈 更新于 21 天 之前

经常发生在不读取stc时钟位置。

导出 Atom PDF