Workbench から PXE ブート可能な VxWorks ブート ローダーをビルドしようとしていますが、うまくいきません。私の環境の概要は次のとおりです。
- VxWorks 6.6 + 最新のパッチ
- Workbench 3.0 + 最新のパッチ
- モンテビーナ BSP リリース 2.0/1
ターゲットは Dell Precision M4400 ラップトップです。成功せずに私がやっていることは次のとおりです。
- プロファイル
VxWorks Image Projectを使用して、Montevina BSP に基づいて Workbenchで新規作成します。PROFILE_BOOTAPP - 次のコンポーネントをカーネル構成に追加します (それ以外の場合、ビルドは失敗します):
-INCLUDE_TIMER_SYS
-INCLUDE_PCI_BUS
-INCLUDE_PCI_OLD_CONFIG_ROUTINES
-INCLUDE_PENTIUM_PCI - コンソール表示用のカーネル構成にコンポーネントを追加し
INCLUDE_PC_CONSOLEます (ターゲットにシリアル ポートはありません)。 - ビルド仕様を に設定し、次の
default_romCompress名前の新しいビルド ターゲットを追加します。vxWorks_romCompress.bin vxWorks_romCompress.binターゲットをビルドすると、対応するファイルが作成されます。- ファイルに PXE パディングを追加します。
cat $WIND_BASE/vxworks-6.6/target/config/montevina/pxeBoot.bin vxWorks_romCompress.bin > vxWorks_romCompress.pxe - TFTP サーバーの適切な場所にコピー
vxWorks_romCompress.pxeし、ターゲットから PXE ブートを実行します。
この時点で、ターゲットは TFTP サーバーからファイルを正常にダウンロードしますが、そこで停止し、何も出力されません。コンソールには何も表示されません。
およびは、Workbench プロジェクトで正しく設定されているように見えます (これらは、それぞれ および の従来の config.h ファイルの設定と一致しRAM_HIGH_ADRSます) 。RAM_LOW_ADRS0x001080000x003080000
bootrom.pxe(Montevina BSP にはビルド済みのブート ローダーが同梱されていることに注意してください。これにより、私は PXE ブートに成功しました。ただし、ブート ローダーにいくつかのコンポーネントを追加する必要があります。従来の config.h メソッドではなく、Workbench 環境です。)
Workbench プロジェクトのカーネル構成に含まれるコンポーネントをミラーリングして、従来の config.h 設定に可能な限り一致させることも試みましたが、成功しませんでした。これらは追加されたコンポーネントです (これらの依存関係に加えて):
INCLUDE_PLB_BUSDRV_NVRAM_FILEINCLUDE_GENERICPHYDRV_INTCTLR_IOAPICINCLUDE_GEI825XX_VXB_ENDDRV_TIMER_IA_TIMESTAMPINCLUDE_MII_BUSDRV_INTCTLR_MPAPICDRV_SIO_NS16550INCLUDE_FEI8255X_VXB_ENDDRV_TIMER_LOAPICINCLUDE_SIO_UTILSVXBUS_TABLE_CONFIGINCLUDE_INTCTLR_LIBINCLUDE_DMA_SYSINCLUDE_PARAM_SYSINCLUDE_SW_FPP
だから、それが私が今いるところです。問題は上記の手順 4 ~ 6 にあると思いますが、ワークベンチ内からブート ローダーを PXE ブート可能にする適切な方法について、ドキュメントには何も記載されていません。