2010年6月20日日曜日

MicroBlaze上でFreeRTOSを動作させるための作業7

ペリフェラルのベースアドレスや割り込みマスクの定義を今回のハードウェア用に書き直しました。
結果的にコンパイルは通るようになりましたが、幾つかのAPIは名称変更や機能変更があるようです。

./src/port.o: In function `prvSetupTimerInterrupt':
../src/port.c:278: undefined reference to `XTmrCtr_mDisable'
../src/port.c:280: undefined reference to `XTmrCtr_mSetLoadReg'
../src/port.c:281: undefined reference to `XTmrCtr_mSetControlStatusReg'
../src/port.c:290: undefined reference to `XTmrCtr_mSetControlStatusReg'
../src/port.c:291: undefined reference to `XIntc_mAckIntr'

./src/port.o: In function `vTaskISRHandler':
../src/port.c:322: undefined reference to `XIntc_mAckIntr'
../src/port.c:328: undefined reference to `XIntc_mAckIntr'

./src/port.o: In function `vTickISR':
../src/port.c:345: undefined reference to `XTmrCtr_mGetControlStatusReg'
../src/port.c:346: undefined reference to `XTmrCtr_mSetControlStatusReg'

./src/serial.o: In function `xSerialPortInitMinimal':
../src/serial.c:96: undefined reference to `XUartLite_mDisableIntr'
../src/serial.c:99: undefined reference to `XIo_In32'
../src/serial.c:100: undefined reference to `XIo_Out32'
../src/serial.c:105: undefined reference to `XUartLite_mEnableIntr'
../src/serial.c:112: undefined reference to `XIntc_mAckIntr'

./src/serial.o: In function `xSerialPutChar':
../src/serial.c:145: undefined reference to `XUartLite_mIsTransmitFull'
../src/serial.c:167: undefined reference to `XIo_Out32'

./src/serial.o: In function `vSerialISR':
../src/serial.c:190: undefined reference to `XIo_In32'
../src/serial.c:197: undefined reference to `XIo_In32'
../src/serial.c:208: undefined reference to `XIo_Out32'

それだけではなく「.textと.bssが一杯だ」と警告も出ています。
「あれ?リンカスクリプトなんてどこで作ったっけ?」という感じです。

ポーティングもその辺のケアが必要な段階まで進んできたということですね。

0 件のコメント:

コメントを投稿