SPI NORフラッシュからカスタムT2080ボードを起動しようとしています
CW IDEs のフラッシュ プログラマを使用して、カスタム RCW bin ファイルをシリアル NOR フラッシュにロードできましたが、ボードを SPI ブート モードで電源投入した後、CCSR_RCWSR レジスタ内の RCW ワードを読み取ることができませんでした (確認用)。
SPI NOR フラッシュを使用してボードを起動する方法を誰か教えてくれませんか?
ありがとう..
u-boot ソース コードを移植する必要があります。
新しい問題に対処するために新しいThreadを作成してください。
こんにちは、
QorIQ SDKv2.0のカスタムRCWワードでRCWワードを変更して生成されたu-boot-with-spl-pbl.binをロードしました。「ターゲットのリセットに失敗しました(T2080コアが応答していません)」というエラーが発生し、UARTコンソールメッセージが表示されません
SPI NOR フラッシュにファイルをロードするためのオフセット アドレスは何ですか?
T2080RDBのu-boot-with-spl-pbl.binファイルをRCWの変更だけで直接ロードするのは正しい方法でしょうか?もしそうでない場合、SPI NORフラッシュからデバイスを起動するためにu-bootソースで行うべき主な変更点は何でしょうか?ご指導ください。
よろしくお願いいたします。
プリヤ
事前に構築された SPI u-boot イメージからダンプした次の RCW を参照してください。
00000000: aa55 aa55 010e 0100 1207 001b 1500 0000 .UU.......
00000010: 0000 0000 0000 0000 6615 0002 0000 0000 ........f.......
00000020: e810 4000 c100 0000 0080 0000 0000 0000 ..@..
00000030: 0000 0000 0003 07fc 0000 0000 0000 0000 ................
00000040: 0000 0000 0000 0004 0901 0000 0020 0400 ............. ..
「図4-1」を参照してください。T2080RM の「パワーオン リセット シーケンス」の波形がそれと同じかどうかを確認してください。いいえの場合、RCW の内容に問題があることを意味します。おっしゃるとおり、ロードされた RCW ワードに応じて反映される RCW ステータス レジスタを読み取ることがCANからです。
T2080RDB の次の RCW に基づいて RCW を変更してください。
#T2080 v1.1の場合
#SerDes=0x66_0x15、コア:1800MHz、DDR:1600MT/s
#1206001b 15000000 00000000 00000000
#SerDes=0x66_0x15、コア:1800MHz、DDR:1867MT/s
1207001b 15000000 00000000 00000000
66150002 00000000 58104000 c1000000
00800000 00000000 00000000 000307fc
00000000 00000000 00000000 00000004
ハードコードされた RCW モードでは、エラーなしで CCS コマンドを正常に実行できます。
SPIブートモードでは、PORESET_Bのデアサーション、HRESET_Bのデアサーションが発生し、ASLEEP信号も低くなりますが、CCSで「T2080: Core not responding」というエラーが発生します。
その理由は何なのか教えていただけますか?
SPI ブート モードで電源を入れると、RCW (リセット構成ワード) は PBL (プリブート ローダー) によって SPI NOR から自動的に取得されます。CCSR_RCWSR に期待される値が表示されない場合は、いくつかの一般的な問題を確認する価値があります。
RCW アライメントとサイズ– RCW バイナリが SPI NOR 内の正しいオフセット (通常、ブートの場合はアドレス 0x00000000) に配置されていることを確認します。位置がずれると、PBL が後退したりハングしたりします。
SPI 構成ストラップ– ボードのリセット構成ピン/ストラップが実際に SPI NOR ブート用に設定されていることを確認します。デフォルトで別のブート ソースに設定されている場合、RCW は NOR から読み取られません。
RCW の有効性– エンディアンと CRC を再確認します。無効な RCW イメージは無視され、デバイスは CCSR_RCWSR を更新しない可能性があります。
クロック/電圧の安定性– T2080 は、PBL フェッチ中のクロックとリセットのタイミングに敏感です。RCW フェッチの前に発振器または電源レールが安定していない場合は、読み取りが失敗する可能性があります。
実際には、JTAG/CodeWarrior を介して SPI NOR の内容をダンプし、オフセット 0x0 の RCW ワードが期待どおりであることを確認するのがよいテストです。そうなる場合、問題はフラッシュ プログラミング自体ではなく、ブート モード ストラップまたは RCW の有効性にある可能性が高くなります。
カスタム ボードでも非常によく似た問題が発生しましたが、デバッグ手順については、こちらで詳しく説明しています : — 配置、ストラップ チェック、検証について説明します。あなたの設定と比較するのに役立つかもしれません。
カスタム ボードをハードコードされた RCW モードとして構成し、CCS コマンドを正常に実行できるかどうかを確認してください。
はいの場合は、SPI NOR フラッシュからブートするカスタム ボードを構成し、次の点を確認してください。
PORESET_B がデアサートされた後、HRESET_B がデアサートされ (RCW が正常にロードされたことを示します)、ASLEEP 信号はローになります (PBI が正常にロードされたことを示します)。
ターゲットボードをSPIブートモードに設定し、ccsで指定されたコマンドを実行すると、「T2080: コアが応答していません」というエラーが発生します。
これで、ロードされた RCW ワードに応じて反映される RCW ステータス レジスタを読み取ることができるようになりました。
読み込まれたRCWワードは
00000000: aa55aa55 010e0100 0a08000c 0c000000
00000010: 00000000 00000000 1c190000 0053ac00
00000020: 58045000 41000000 00300000 00000000
00000030: 00000000 00000000 00000000 5280000d
00000040: 00000000 00000001 08138040 65e0e49c
エラーを解決するには、RCWワードを確認してください。
ターゲット ボードを SPI NOR フラッシュからブートするように構成してください。
次に、C:\Freescale\CW_PA_v10.5.1\PA\ccs\ccs\bin\ccs.exe から CCS を開き、次のコマンドを入力して検証を行います。
% すべて削除
% config cc cwtap
% ccs::config_chain t2080
% ccs::reset_to_debug
エラーが返された場合は、RCW に問題があることを意味するため、RCW 構成を調整する必要があります。