6

この質問はx86ですでに回答されていますが、Cortex-A9、Cortex-A15などのARMMPCPUについてはあまり見つかりませんでした...

さらに重要なのは、設定などを行わなくても、プライマリ以外のCPUで割り込みが発生する可能性があるかどうかを知りたいことです。

プライマリCPUのみを処理するソフトウェアに取り組んでいるため、残りをWFI状態にしますが、MPアームCPUで割り込みがどのように機能するかはわかりません。メインCPUがコードとセカンダリCPUの1つを実行し続ける可能性はありますか。 cpuはそれを取得し、ベクトルテーブルの命令にジャンプして、そのコードを実行しますか?

ところで、これは私がそれらを低電力モードにするために使用しているコードです

    uint32_t reg;

    __asm__ volatile("mrc p15, 0, %0, c0, c0, 5" : "=r" (reg));
    reg &= 0xF;

    if(reg > 0)
        goto spin;

<code snipped>

spin:
    for(;;)
        cpu_idle(); // cpu_idle -> wfi
4

1 に答える 1