【发布时间】:2015-04-21 00:20:37
【问题描述】:
这个问题相当广泛,但我什至在 ARMv7 ARM、MPCore TRM、GIC 架构手册中都找不到起点……所以请原谅含糊不清。
我有一个用于 Raspberry Pi 2 的简单裸机内核,它初始化活动 LED、UART0、MMU 和缓存,一切正常。我可以眨眼,我可以输出文本,我可以将物理页面映射到虚拟地址并访问它们。到目前为止一切顺利。
现在我想启动额外的内核,但我遇到了真空。目前还没有关于如何在没有 linux 内核的情况下执行此操作的示例,这相当复杂,因为它支持这么多板。看着规格,我似乎找不到任何好的起点。所以我没有在黑暗中四处敲打,而是来到了这里。 :)
那么有没有其他人对此进行过调查并弄清楚内核在启动和重置时处于什么状态?使用什么引导协议/机制来启动其他内核?我发现的一个信息是这是相当特定于 SOC 的,所以请不要举例说明如何在 Cortex-A9 或其他不是 RPi 2 的东西上执行此操作。
【问题讨论】:
标签: bare-metal smp raspberry-pi2