2016-08-26 10 views
1

したがって、hi3520v100チップをベースにした古い(2011年程度)のCCTV/DVRシステムでファームウェアをアップデートする作業を行っています。デバイスツリー。複数の異なるARMコアを使用したSoCのデバイスツリー

このSoCには、2つの異なるコアがあります.1つはarm1176であり、もう1つはarm926です(私はatmの前にコードがないので、100%は確信していません)。

ここで私の質問は、デバイスツリーでこの状況をどのように処理するのでしょうか?私が見たすべてのマルチコアアームdts/iには、複数の同一コアがあります。

+1

かなり広い議論。それは 'SoC 'に依存します。たとえば、非対称デュアルコアである 'i.MX6SX'では、' A9'コアのみがLinuxで動作します。 dtsへの唯一のことは、 'M4'が使用する' A9'側リソースを無効にすることです。 'M4'ファームウェアはu-bootによってロードされ、' M4'コアは 'A9'によってキックされます。 – LPs

+0

興味深い情報。私は両方のコアがLinux互換であると信じています。ベンダsdkには両方のコードがあり、ファームウェアには2つのカーネルがあります – ntzrmtthihu777

+0

奇妙です。初めて私は二重カーネルについて聞いた。 BTWデュアルカーネルとは、RAMと異なるDTBの異なるメモリ領域を意味すると思います。おそらくそれらの2つの腕は共有資源を持っていないでしょう。 – LPs

答えて

1

Linuxのインスタンスが実行されているCPUを、それがどれかのCPUに記述します。これはAMPシステムです。両方のCPUで同じのLinuxインスタンスを実行することはできません。どちらもSMP対応ではなく、いずれにしても異なる互換性のないアーキテクチャのバージョンを実装しています。両方のCPUが同じRAMを共有している場合は、2つのOS間の通信に共有(キャッシュされていない)領域を宣言することもできますが、パーティションを分割してそれぞれを記述する必要があります。

システム設計上、1台のCPUがそれ自身を起動した後にもう1台のCPUを起動させるような場合は、そのためのremoteprocフレームワークを調べることをお勧めします。

+0

情報をありがとう、私はまだハードウェアのこの特定の部分を把握する過程にあるので、グーグルとは別のものを持っていいです。 – ntzrmtthihu777

関連する問題