Uart4(m4デバッグポート)に対する通信方法

SOMはVerdin iMX8M Miniを使用しております。
UARTポートの内、UART4(M4デバッグポート)に対し、
LinuxOSから通信を行いたいと考えておりますが可能でしょうか?

こちらでLinux上からUART4のデバイスファイルを選択し
通信してみたところカーネルパニックが発生しており、
設定方法など注意点があれば教えていただきたいです。

Hi, I’m the Toradex AI Assistant. I’m in early beta, and I would appreciate your feedback.
The Toradex Support team will follow up with you shortly!

Did you like my answer?

:+1: :-1:


Verdin iMX8M MiniのUART4(M4デバッグポート)をLinux OSから使用することは可能ですが、いくつかの注意点があります。

  1. デバイスツリーの設定:
    UART4をLinuxで使用するためには、デバイスツリーの設定が正しく行われている必要があります。デバイスツリーでUART4が有効になっているか確認し、必要に応じて以下のような設定を追加してください。

    &uart4 {
        status = "okay";
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_uart4>;
    };
    
  2. デバイスファイルの確認:
    UART4が正しく設定されている場合、対応するデバイスファイルが/devディレクトリに作成されます。通常、/dev/ttymxc3のような名前になります。/dev/verdin-uart4のシンボリックリンクも確認してください。

  3. カーネルパニックの原因調査:
    カーネルパニックが発生する場合、以下の点を確認してください。

    • デバイスツリーの設定が正しいか。
    • UART4のピン設定が他の機能と競合していないか。
    • カーネルログ(dmesgコマンド)を確認し、エラーメッセージや警告がないか。
  4. 通信設定:
    通信速度やパラメータを設定するために、sttyコマンドを使用します。例えば、115200bpsで通信する場合は以下のように設定します。

    stty -F /dev/ttymxc3 115200
    
  5. RS-485の設定(必要な場合):
    RS-485を使用する場合、デバイスツリーやioctlを使用して設定を行います。詳細はToradexのRS-485サポートドキュメントを参照してください。

これらの手順を確認し、設定を見直すことで、UART4をLinuxから正常に使用できるようになるはずです。もし問題

デバイスツリーの設定を行いましたが、
起動時にエラーとなりKernelパニックの発生となりました。
起動ログをお送りさせていただきます。
(別途メールします)
UARTの初期化にて発生しているようです。
RDC(RDC_PDAP70:UART4)にてDomain0からの
アクセス解放を設定したいと思いますが、
設定方法を教えていただけないでしょうか?

コミュニティサイトで以下の記載を確認しました。

/plat/imx/imx8m/imx8mm/imx8mm_bl31_setup.c

  •   RDC_PDAPn(RDC_PDAP_UART4, D1R | D1W),
    
  •   RDC_PDAPn(RDC_PDAP_UART4, D0R | D0W),
    

上記の設定を行ったところ、カーネルパニックは解消され、
ttymxc3の生成も確認できました。
このデバイスファイルに対してシリアル通信を行ってみましたが、
データの出力を確認できませんでした。
他に必要な設定がございましたら教えていただきたく
よろしくお願いします。

Hi @kentaro

ご確認頂きありがとうございます。
解決が出来て何よりです。

ttymxc3のシリアルコンソールをどのようにテストしているのか、ご共有いただけますか?

よろしくお願いします。
アルバロ

@alvaro.tx
こちらで再度確認しましたところ、LinuxからM4用デバックポートの
制御ができることが確認できました。
ttymxc3の制御はプログラムを作成し、デバイスファイルをオープンし
W/Rする処理を行っています。

VerdinキャリアボードのデバッグポートにUSB接続した場合に、
二つのCOMポートが見えますが、このCOMポートの選択、設定が
間違っていたようです。

お忙しいところ、ご確認いただきましてありがとうございました。

ご確認頂きありがとうございます。
解決が出来て何よりです。

今後ともよろしくお願いいたします。
アルバロ。

1 Like