2013-10-09 27 views
0

我有一個armv7板,我看到一個差異。CONFIG_SYS_TEXT_BASE和_start之間的差異

在我的船上文件我已經定義:

#define CONFIG_SYS_TEXT_BASE 0x67000004 

我建的u-boot二進制後,我跑了

nm u-boot | grep -w _start 

它返回以下:

67000020 T _start

有誰知道爲什麼_startCONFIG_SYS_TEXT_BASE的值有差異?我以爲他們是一樣的,請 糾正我,如果錯了。

回答

1

相關來源是start.Su-boot.lds linker腳本。假設將CONFIG_SYS_TEXT_BASE作爲開始地址傳遞給鏈接器,則可能會出現各種片段。例如,許多Rom裝載機需要標題來描述或認證圖像。 Ref1這可能在_start符號之前(或之後)出現。

我以爲他們是一樣的,請糾正我,如果錯了。

你錯了。他們不是總是一樣。鑑於特定的SOCu-boot版本,它們可能是相同。

Ref1:這將是引用鏈接描述文件中的部分.__image_copy_start

+0

但是,_start如何獲得一個如此接近CONFIG_SYS_TEXT_BASE的值?我已經通過源代碼搜索,但沒有找到_start被賦值的位置。 – TheLoneJoker

+0

我基本上遇到了類似這樣的問題。但是這個帖子變冷了,沒有提供任何有用的理由:u-boot.10912.n7.nabble.com/U-Boot-ARM-gap-between-start-and-CONFIG-SYS-TEXT-BASE-td4134.html – TheLoneJoker

+0

它取決於通過** u-boot **版本的鏈接器腳本。你在使用哪一個。一個來自git和哪個平臺? –

相關問題