#Toppers/ASPのRenasas RXアーキテクチャ GCC版にtinetライブラリをマージ
色々あって昨年公開して放置していたToppers/ASPのRenasas RXアーキテクチャ GCC版にtinetライブラリを追加しました。
それに合わせてターゲット依存部のみ登録していたgitレポジトリにカーネル本体も追加しました。
実機評価はGR-SAKURA、コンパイルはLinuxで行っています。
なお、手持ちのKPITとe2studioの環境ではリンクに失敗する現象が発生しています。私の環境が壊れているだけかもしれませんが、原因を調査中です
セクションを二重定義している個所がありました。KPITとe2studioで動作確認済みです。
使い方はasp/tinet/docのドキュメントを参照してください。
現状はサンプルアプリケーションのecho4が動作しています。
#登録したソースの内訳
##tinet
公開されているソースコードのASP用 TINET 1.5.4を持ってきました。Perlバージョンが新しいとconfigureでエラーになるため一部修正を行っています。
修正内容はメーリングリストの次のスレッド( https://www.toppers.jp/TOPPERS-USERS/2011-October/003390.html )を参照してください。
##tinet/netdev/if_rx62n
Toppersで公開されているTOPPERS/ECNL ECHONET Lite 通信ミドルウェアに含まれているGR-SAKURA向けのethernetドライバを持ってきました。
GCCでは送受信ディスクリプタ、送受信バッファが要求するアドレスのアライメント調整を行ってくれないため、調整用のコードを追加しています。また、ドライバを使用するためにはユーザがMACアドレスを定義する必要があります。
アプリケーションのどこかで以下のような感じでMACアドレスを定義してください。
uint8_t mac_addr[6] = {0x10, 0x2, 0x3, 0x4, 0x5, 0x6};
ドライバではEthernet PHY(LAN8720)のレジスタアクセスを行っています。 異なるPHYを使用する場合はether_phy.cの修正が必要になります。