2017-08-11 84 views
0

私は組み込みLinuxの原則を理解しようとしており、u-boot出力でアドレスを把握することはできません。Uブートの開始アドレス?およびu-boot.imxファイルには?

U-bootの開始アドレスはどのようにして見つけることができますか?例えば

、IはMX6-SabreSDボードi.MX6クワッドプロセッサをベースと私はU-ブートからの次の出力持っている:

U-Boot 2015.10-rc3 (Aug 10 2017 - 13:33:34) 

CPU: Freescale i.MX6Q rev1.2 at 792 MHz 
Reset cause: POR 
Board: MX6-SabreSD 
DRAM: 1 GiB 
MMC: FSL_SDHC: 0 
No panel detected: default to LDB-WVGA 
Display: LDB-WVGA (800x480) 
In: serial 
Out: serial 
Err: serial 
Net: using phy at 6 
FEC [PRIME] 
Warning: FEC MAC addresses don't match: 
Address in SROM is   00:c0:08:88:a5:e6 
Address in environment is 00:c0:08:88:9c:ce 

Hit any key to stop autoboot: 0 
Booting from mmc ... 
4788388 bytes read in 303 ms (15.1 MiB/s) 
## Booting kernel from Legacy Image at 12000000 ... 
    Image Name: Linux-3.0.35 
    Image Type: ARM Linux Kernel Image (uncompressed) 
    Data Size: 4788324 Bytes = 4.6 MiB 
    Load Address: 10008000 
    Entry Point: 10008000 
    Verifying Checksum ... OK 
    Loading Kernel Image ... OK 

Starting kernel ... 
+1

ubootの実行アドレスをRAMに入れたいですか? – Rajeshkumar

+0

ええ、私はRAMのu - ブートアドレスの実行を見つける必要があります私を助けることができますか? – Ashokkumar

+0

ubootはどこに保存されていますか?それはフラッシュですか? – Rajeshkumar

答えて

3

U-ブート開始アドレスを?

Uブートの開始アドレスは、すなわち、典型的には、ボードの構成ヘッダーファイルで定義されたシンボルCONFIG_SYS_TEXT_BASEを使用して指定される/コンフィグ/ .Hを含みます。
i.MX6ボードの場合、この値は通常0x17800000です。
しかし、実行可能ファイル自体が上位RAMに再配置されます。
ビルドファイルをお持ちの場合は、System.mapまたはu-boot.mapファイルを確認することで開始アドレスを確認できます。

とu-boot.imxファイルには?

U-boot.imxファイルは、i.MXのSoCのROMブートコードによって使用されるバイナリ画像です。
標準u-boot.bin実行可能ですが、先頭に0xC00バイトのヘッダーが付きます。
U-Bootのドキュメントファイルdoc/README.imximageには、バイナリファイルをビルドしてメディアに書き込む方法が記載されています。

U-bootの開始アドレスはどのようにして見つけることができますか? (私は確認を見つけることができないんですが)

開始アドレスはU-boot.imxファイルのオフセットを0x4(および0x14の時の負荷アドレス)に格納されているように見えます。

u-boot.imxファイルは、セカンドセクタ(バイトオフセット0x400)からSDカードに保存されます。
バイナリをSDカードに書き込むことに関するembedded linux ARM booting addressを参照してください。

関連する問題