瑞芯微Rockchip开发者社区
直播中

张建杰

未满1年用户 4经验值
擅长:嵌入式技术 接口/总线/驱动 控制/MCU
私信 关注
[问答]

RK3568 SMP启动不成功,rt-thread已经调用psci成功,但是没有执行到_secondary_cpu_entry

Starting kernel ...

heap: [0x203ce000 - 0x243ce000]

\ | /

  • RT - Thread Operating System
    / | \ 5.1.0 build Nov 21 2024 09:08:37
    2006 - 2024 Copyright by RT-Thread team
    lwIP-2.1.2 initialized!
    [D/drv.emac] emac open
    [D/drv.emac] emac device init success
    [I/sal.skt] Socket Abstraction Layer initialize success.
    try call second cpu up by cpu 0
    psci64_smc_call : FN 0xc4000003
    cpuid: 0x80000100 entry_point :0x000000002000008c
    psci64_smc_call : FN 0xc4000003
    cpuid: 0x80000200 entry_point :0x000000002000008c
    psci64_smc_call : FN 0xc4000003
    cpuid: 0x80000300 entry_point :0x000000002000008c
    Hi, this is RT-Thread!!
    msh />I/TC: Secondary CPU 1 initializing
    I/TC: Secondary CPU 1 switching to normal world boot
    I/TC: Secondary CPU 2 initializing
    I/TC: Secondary CPU 2 switching to normal world boot
    I/TC: Secondary CPU 3 initializing
    I/TC: Secondary CPU 3 switching to normal world boot

msh />[D/drv.emac] link up
[D/drv.emac] speed: 1000M

回帖(1)

李鸿洋

前天 16:37
看起来你在使用Rockchip RK3568处理器进行SMP(对称多处理)启动时遇到了问题。从你提供的日志来看,rt-thread已经成功调用了PSCI(Power State Coordination Interface)来启动第二个CPU,但是似乎没有成功执行到`_secondary_cpu_entry`函数。

以下是一些可能的原因和解决方案:

1. **PSCI调用参数问题**:确保你传递给PSCI的参数是正确的。特别是`entry_point`参数,它应该指向正确的二级CPU启动代码的地址。

2. **二级CPU启动代码问题**:检查`_secondary_cpu_entry`函数是否正确编写,并且确保它能够正确地初始化二级CPU的堆栈和寄存器。

3. **内存分配问题**:确保为二级CPU分配的内存区域是正确的,并且没有被其他进程或数据覆盖。

4. **中断配置问题**:在启动二级CPU之前,确保所有的中断都已经正确配置,特别是与PSCI相关的中断。

5. **硬件问题**:如果软件配置都正确,但问题依旧存在,可能需要检查硬件是否存在问题,比如CPU核心是否有损坏。

6. **调试信息**:增加更多的调试信息输出,可以帮助你定位问题。比如,在调用PSCI前后打印出关键的寄存器值和内存地址。

7. **固件/BIOS问题**:有时候,固件或BIOS的设置可能会影响SMP的启动,确保这些设置是正确的。

8. **操作系统兼容性**:确认rt-thread的版本是否与你的硬件完全兼容,有时候操作系统的某些版本可能存在已知的SMP启动问题。

9. **社区支持**:如果问题依然无法解决,可以考虑在rt-thread社区或者Rockchip的技术支持论坛上寻求帮助,可能有其他开发者遇到过类似的问题。

10. **文档和示例代码**:查看rt-thread的官方文档和Rockchip提供的示例代码,看看是否有关于SMP启动的特定指导或示例。

请根据这些建议逐一排查问题,希望能够帮助到你。如果需要更具体的帮助,提供更多的上下文信息会非常有帮助。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分