移植作業メモ
bfin-elf-gccによるビルドの目処が付いたので、すこしずつ作業を進めることにしました。いまのところ、ソースコードの管理を一元化する方向で作業しています。つまり、同じソースでVisualDSP++にもgnuツールチェーンにも対応することが目標です。以下、作業記録と作業予定をふくみます。
アセンブル時のコマンドラインオプション
TOPPERS/JSPでは、アセンブリファイルの拡張子は.Sを使うことになっています。しかし、この拡張子はVisualDSP++の場合、コンパイラの中間ファイル名として使われています。そこで混乱をふせぐため、.asmをアセンブリ言語ファイルの名前とします。gccのオプションは以下の通り
$bfin-elf-gcc -x assembler-with-cpp
cdef_lpblkfn.h
cpu_config.hでVisualDSP++のcdef_lpblackfin.hを読みこんでいますが、もちろんこれはgccでは使えません。gccの場合は別に定義したファイルを読むように変更しました。
offset.h
未作業ですが、VisualDSP++用のファイル名は変更しなければなりません。gccでのビルド時にオーバーライトされてしまいます。
sys_support.h
初期化フック関数です。おそらくはSDRAMコントローラの初期化などに使えるでしょう。未実装。
スタート開始番地
最初の実装ではExecute In Placeになると思われますので、0x20000000がスタート番地です。非同期メモリバンク0の最初のアドレスです。