問題タブ [trust-zone]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linux-kernel - IMX53 外部アボート
IMX53 Sabre タブレットで Android を起動しています。Android が正常に起動するときにシリアル ポートに表示される最後の数行は次のとおりです。
これらの外部アボートは起動プロセスを停止せず、Android が正常に起動することに注意してください。ここで、これらの外部アボートを使用して、モニターのアボート ハンドラー コードをテストしたいと考えています。外部アボートをトラップして監視する機能が必要です。
セキュア モニターの初期化では、次のことを行います。
私のモニターベクターテーブルは次のようになります。
例外ハンドラー関数の例は、ステートメントを出力するだけで、次のようになります。
C:
次のように、セキュア モニターの初期化でこのベクター テーブルを追加します。
これらの変更には変更があります。つまり、外部アボートの時点でカーネルがクラッシュします。しかし、モニター ハンドラーで print ステートメントを取得できません。Androidを起動すると、シリアルで次の出力が得られます。
アボートを監視モードにトラップするには、他の設定が必要ですか? 最終的には、CSU を設定して、I2C0/IPU などの周辺機器を保護し、これらの周辺機器のアボートをトラップしてエミュレートします。しかし、モニター・ハンドラー関数にアボートを指示するこの最初のステップを実行する必要があります。誰か助けてくれませんか?
編集
最初に、printf を使用せずにプリフェッチ アボート ハンドラを試してみましょう (エラーの発生源を減らすため)。したがって、目標は、アボートがモニターに来ることです。このアボートは重要ではないため、モニターは再び制御を NW に戻します。
基本的に、SCR にはアボートの発生を指定するビットが 1 つしかありません。しかし、私が興味があるのはデータ アボートだけです (特定の周辺機器へのアクセスが発生した場合も同様です)。したがって、この最初のステップは、プリフェッチの中止が発生したときに制御を NW に戻すことです。
プリフェッチ ハンドラーとしての次のコードには、同じ出力があります: 「プリフェッチ アボート ハンドラーで不正なモードが検出されました」でクラッシュします。
arm - TrustZone 開発環境のセットアップ方法
ARM TrustZoneで遊んでみたいので、開発環境を整えたいのですが、残念ながらまだ何かが足りない気がして、すべてをまとめる方法がわかりません。
これは私の現在の写真です:
- Cortex-A プロセッサを搭載した SoC が必要です
- ボードなしで開発することは可能ですか?つまりエミュレータ?
- TrustZone はハードウェアとソフトウェアのテクノロジーです
- SoC ボードを入手した場合、ハードウェア部分は既にカバーされていますか?
- ソフトウェア(OS/Kernel)部分はGlobalPlatformやOpenTEEなどで解決できるかもしれません。
- TrustedApplication 開発
- どの IDE がありますか?
- それらはどのように取締役会に配置されますか?
これは非常に広範な質問であることは承知しています。喜んでオンライン資料へのリンクを取得します。
編集:
私の質問のいくつかの部分は部分的に回答されましたが、最も重要なことはまだ回答されていません。はい/いいえ、なぜですか?
いいえ、これは「どの ARM ベースの開発ボードを使用する必要がありますか?」の複製ではありません。