FSPを使用して、イーサネットテストプログラムを作成しました。
リンク検出は動作するのですが、送信してもTX_ENピンなどが動作しません。
FAQ 2001354
ja-support.renesas.com/.../20542987
を見つけて、レジスタを調べると記述と同じ問題が起きていました。
ldファイル・cファイルについてはFSP側で対策されているらしく、自動生成されています。
サポート記述に 【ユーザの外部デバッグプローブハードウェアがRA Serial Bootインターフェース接続をサポートしていない場合は、別途シリアル変換ケーブルなどを用意し、RFP(Renesas Flash Programmer)を使用してプログラムすることもできます(図4)。】と書いてあるのですが、
[RA Serial Bootインターフェース接続をサポートしていない]デバッグプローブとはどれのことかわかりますでしょうか?
現状、E2Liteを使用しております。
書き込み方法による 動作不良
上記スレッドと関連する可能性があると思います。
TrustZone対応マイコンは、フラッシュオプションでSRAMのセキュア/非セキュア領域の設定があります。EDMACで使用するメモリ(送受信バッファやディスクリプタ)は「非セキュア」な領域に配置されなれければなりません。
(メモリの配置アドレスと非セキュア領域のBoundary設定が妥当でなければ、Etherが動きません。)
フラッシュオプションの(Boundary領域)変更は、ブートモードで接続して設定する必要があります。E2Liteは、ブートモード接続に対応しています。RFP(RenesasFlashProgrammer)での接続時、「2-wire UART」を選んで接続してください。(SWD接続の場合は、ブートモード接続にならないので、フラッシュオプションの変更が出来ません。)
([RA Serial Bootインターフェース接続をサポートしていない]デバッグプローブが具体的にどの様なデバッガを指してるのかは判りません。E2, E2Lite, J-Linkなどは、ブートモード接続をサポートしています。USB-Serial変換ケーブルなども、ブートモード接続に使えます。)
ありがとうございます。まさしくこれだと思います。
-------------生成されていたrpd--------------
RAM_S_SIZE=0x3e000RAM_C_SIZE=0x0FLASH_S_SIZE=0x100000FLASH_C_SIZE=0x0DATA_FLASH_S_SIZE=0x2000OPTION_SETTING_S_SIZE=0x80OPTION_SETTING_S_S_SIZE=0xd0ID_CODE_S_SIZE=0x0SDRAM_S_SIZE=0x0QSPI_FLASH_S_SIZE=0x0OSPI_DEVICE_0_S_SIZE=0x0OSPI_DEVICE_1_S_SIZE=0x0
--------------読みだしたTrustZone設定--------------
Current TrustZone device status
DLM state : Secure Software Development (SSD)
Debug level : 2
Secure/NSC memory partition size :
- Code Flash Secure (kB) : 16383
- Code Flash NSC (kB) : 0
- Data Flash Secure (kB) : 63
- SRAM Secure (kB) : 2047
- SRAM NSC (kB) : 0
試しにRAM_S_SIZEとRAM_C_SIZEを入れ替えてみましたが、読みだしたTrustZone設定は変わっていませんでした。
現状、rpdファイルをどう設定するのが適切なのかよくわかっていない状態です。
何か参考になる資料をご存知でしょうか
(Ethernet動作させたいだけなのでTrustZone自体を無効化できるとよいのですが)