UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 53499

PetaLinux v1.1 - U-BOOT から PetaLinux をブートできない

説明

u-boot がカーネルを開始後に PetaLinux イメージをカーネルまたはネットワーク (netboot を使用) からブートしますが、何も起こらず、ボードも起動していなように見えます。

## Booting kernel from Legacy Image at 50002000 ... Image Name: PetaLinux Kernel 2.6-MMU Image Type: MicroBlaze Linux Kernel Image (uncompressed) Data Size: 9481732 Bytes = 9 MB Load Address: 50000000 Entry Point: 50000000 Verifying Checksum ... OK Loading Kernel Image ... OK OK ## Transferring control to Linux (at address 50000000), 0x50000000 ramdisk 0x00000000, FDT 0x00000000...

しかし、Linux カーネル image.elfpetalinux-jtag-boot を使用して直接、問題なくブートできます。

PetaLinux v1.1 を使用しています。

ソリューション

背景

ボードが起動しない原因としては、クロックやリセット信号などハードウェアの不適切な設定や、シリアル ポート インターフェイスの設定の誤りなど、さまざまな要素が考えられます。

ただ PetaLinux SDK 1.1 リリースには、カーネル ブートの初期段階における CPU の初期化に関連して、この問題を引き起こすバグがあります。次の回避策を実行し、それでも問題が発生するかを確認してください。

PetaLinux SDK v1.2 およびそれ以降では、この問題は発生しません。

回避策

この問題を回避するには、次のファイルを修正します。

$PETALINUX/software/linux-2.6.x/arch/microblaze/kernel/setup.c

56 行付近で、次のようにします。

        /* Add this line */ invalidate_dcache(); enable_dcache()

これにより、CPU データ キャッシュが有効になる前に、正しく無効化されます。

この後、カーネルおよびシステム イメージを再構築し、再びブートしてください。

この変更後も問題が発生する場合、その原因はその EDK ハードウェア プロジェクトなど、ほかのところにあると考えられます。

解決策

この問題は、PetaLinux v1.2 およびそれ以降のリリースで修正されています。

AR# 53499
日付 02/05/2014
ステータス アクティブ
種類 一般
デバイス
  • Zynq-7000
  • SoC
  • FPGA Device Families
ツール
  • PetaLinux
IP
  • Microblaze
  • Processing System 7
このページをブックマークに追加