工具/软件:
我一直在尝试通过 ZephyrRTOS 中的 PocketBeagle 2 rev A0(处理器 AM6232)上启用两个内核来启用 SMP。 我能明白 PSCI 似乎是用于它,但尝试这似乎导致冻结。
经过进一步的检查,我能够跟踪问题的 ARM SMC 调用. 简而言之、目前任何 SMC 调用似乎都会导致系统冻结。 对于测试、我使用以下 Zephyr 应用程序: test/arch/arm64/arm64_sc_call
我也用 debug=1 和 log_level=50 构建了 TFA、但似乎 SMC 调用从未到达 TFA。 所以不确定会发生什么。
我使用 U-Boot 启动 Zephyr.bin、这与 Linux 内核 (Image.gz) 的启动方式完全相同。
在尝试进行 SMC 调用之前、是否需要执行任何指令? 在`SMC`之前、我确实检查了`CurrentEL`寄存器、并将其设置为 0b100 μ s。