メディア

基板にあわせて必要なソフトウェアのカスタマイズ項目マイクロプロセッサQ&Aハンドブック(5)(3/3 ページ)

» 2025年02月11日 12時00分 公開
前のページへ 1|2|3       

デバイスツリーによるブートローダ―のカスタマイズ

 マイコンとプロセッサの開発では、ブートに必要なソフトウェアのカスタマイズ方法が大きく異なります。ボードに依存した部分のカスタマイズをする際には、ROMコードの場合は、OTPの設定を変更する必要があります。ブートローダ―、セキュアモニター、Linuxカーネルのカスタマイズはデバイスツリーと呼ばれる設定ファイルを変更します。

Q1 評価ボードのデバイスツリーはどこにありますか?

A1 デバイスツリーは、SDKのソースコード内に表2の”評価ボード(STM32MP135F-DK)のデバイスツリーのソースコード”の列に記載した通り、それぞれのブート段階に対応したデバイスツリーがあります。

Q2 新規開発した基板でコンソールから何も出力されません。基板が動作可能なように設計/製造できているか調べたいので、CPUが起動可能かどうかだけでも、今すぐに確認したいのですが、どうしたらいいですか?

A2 次の3項目(ROMコードの実行可能、FSBLの読み出しの成否、FSBLのUARTデバイスツリー設定)を確認します。

確認項目1:まずは、ROMコードが実行可能なのかを確認します。

 エンジニアリングモードを使用して、ROMコードのみが実行される状態でデバッグ用LED(PA13)の状態から、CPUがROMコードを実行可能、つまりCPUは起動可能であることを確認できます。

手順:USBOTGケーブルを刺さない状態で、ブートSWを”000”エンジニアリングモードに設定し、RESET後にデバッグ用LEDのLD4(PA13)のLEDが点滅すればROMコードは実行されていることを確認できます。こちらが確認できれば、確認項目2に移ります。

確認項目2:次にSDカードなど起動メディアからファーストステージブートローダ―(FSBL)の読み出しが失敗していないかをデバッグ用LED(PA13)の状態から確認します。

手順:例えば、SDカードからのブートの場合、USBOTGケーブルを刺さない状態で、ブートSWを”101”SDカードブートに設定し、RESET後にデバッグ用LED(PA13)がずっと点滅している場合は、ROMコードは起動していますが、FSBLが読み取れていません。

 SDカードが正常な位置に挿入されているか、SDカードへのアクセス回路の設計に問題がないか等を確認してください。一方、FSBLの読み出しが成功している場合は、デバッグ用LED(PA13)の状態は消灯となります。こちらが確認できれば、確認項目3に移ります。

 デバッグ用LEDの挙動の説明はこちらを参照ください。

確認項目3:FSBLの読み出しが正常に行われた場合は、FSBLのコンソール用UARTのデバイスツリー設定および、ヘッダファイルの設定を確認します。

手順:まず、回路図を確認して、コンソール用UARTのピンアサインが標準設定と同じかどうか、確認します。

 コンソール用UARTのピンアサインの標準設定は次のようになっています。

STM32MP13x:
UART4_TX ->PD6
UART4_RX ->PD8

 標準設定と異なる場合は、デバイスツリーおよびヘッダファイルのカスタマイズを行います。

 デバイスツリーの設定例はこちらを参照ください。

 FSBLの段階でコンソールに何も表示がされない場合、デバイスツリーのカスタマイズに加えて、TF-Aのヘッダファイル中のUART early consoleのポート割り当て設定も変更が必要です。ヘッダファイルの設定例はこちらを参照ください。

Q3 ブートの途中で、ハングアップします。コンソールからのメッセージの出力はされます。何が原因ですか?

A3 まず、コンソールのメッセージを確認して、ハード、ソフトの両面から考える必要がありますが、傾向として多いのは次のようなものです。

  • DDRメモリのサイズを評価ボードに比べて、小さくしているが、対応するデバイスツリーを修正せずに使用している
  • PMICのI2Cのピン割り当てを評価ボードから変更しているが、対応するデバイスツリーを編集せずに使用している。

参考文献

  • https://wiki.st.com/stm32mpu/wiki/STM32_MPU_ROM_code_overview
  • アプリケーションノートAN5474 Getting started with STM32MP13x lines hardware development
  • アプリケーションノートAN5692 DDR memory routing guidelines for STM32MP13x product lines
  • STM32MP13x Series DDR memory routing guidelines examples : https://www.st.com/resource/en/hw_model/stm32mp13x-series-ddr-memory-routing-guidelines-examples.zip
前のページへ 1|2|3       

Copyright © ITmedia, Inc. All Rights Reserved.

RSSフィード

公式SNS

EDN 海外ネットワーク

All material on this site Copyright © ITmedia, Inc. All Rights Reserved.
This site contains articles under license from AspenCore LLC.