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# 20784

6.3/6.2 EDK、PowerPC Boot Code - 極小の sbss セクションで、sbss 初期化コードが PPC メモリ空間全体を上書きする

説明

キーワード : boot code

重要度 : 標準

概要 :
PowerPC Boot Code - 極小の sbss セクションで、sbss 初期化コードが PPC メモリ空間全体を上書きしてしまいます。

ソリューション

crt0.s ファイルをアップデートする必要があります。 boot code をアップデートする手順は、次のとおりです。

1. プロジェクト ディレクトリ bsp 内に新しいディレクトリを作成します。

2. 次の EDK インストール ディレクトリから standalone_v1_00_a ディレクトリを bsp ディレクトリ内にコピーします。

c:\EDK\sw\lib\bsp\standalone_v1_00_a\



3. 次のディレクトリにある crt0.S ファイルを開きます。

project_directory\bsp\standalone_v1_00_a\src\ppc405

4. 次のように、ボールドの行を追加します。

subf 8,6,7 /* number of bytes to zero */
srwi. 9,8,2 /* number of words to zero */
beq .Lenclbss /* Check if the number of bytes was less than 4 */
mtctr 9
li 0,0 /* zero to clear memory */
addi 6,6,-4 /* adjust so we can use stwu */
.Lloopsbss:
stwu 0,4(6) /* zero sbss */
bdnz .Lloopsbss
.Lenclsbss:

.Lstclbss:
/* clear bss */
lwz 6,.Lbss_start(5) /* calculate beginning of the BSS */
lwz 7,.Lbss_end(5) /* calculate end of the BSS */

cmplw 1,6,7
bc 4,4,.Lenclbss

subf 8,6,7 /* number of bytes to zero */
srwi. 9,8,2 /* number of words to zero */
beq .Lenclsbss /* Check if the number of bytes was less than 4 */
mtctr 9
li 0,0 /* zero to clear memory */
addi 6,6,-4 /* adjust so we can use stwu */


6. [Tools] -> [Generate Libraries] をクリックして LibGen を再実行します。

この問題は EDK 7.1 で修正されています。
AR# 20784
日付 04/12/2007
ステータス アーカイブ
種類 一般
このページをブックマークに追加