2016-10-25 4 views
3

私は最近found out U-BootのためのFITイメージを作成する方法。U-Boot FITイメージをそのコンポーネントにパーティション分割できますか?

作成に必要なファイル*.itsによれば、イメージにはカーネル、ルートファイルシステム、およびデバイスツリーのBlobが含まれます。

私の質問は、組み込みのFITイメージをコンポーネントに戻す方法があるかどうかです(*itsファイルを取得することもできます)。

答えて

2

device-tree-compiler(apt-get install)をインストールし、split_bootimg.pl(github)スクリプトをダウンロードします。スクリプトを実行して、カーネルイメージ、ramdisk、およびdtbファイルを抽出します。それからあなたはすべてのコンポーネントを持っています。また、デバイスツリーコンパイラを使用してdtbからデバイスツリーファイルを抽出することもできます。

「Androidマジックが画像に見つかりませんでした。お寄せください」問題は、その後:split_bootimg.plから

、FIT画像のフォーマットがあるべき:

=(bootimg.hから)フォーマット

** + -------- --------- +

** |ブートヘッダー| 1ページ

** + ----------------- +

** |カーネル| nページ

** + ----------------- +

** |ラムディスク| mページ

** + ----------------- +

** |第二段階| Oページ

** + ----------------- +

ブートヘッダはマジック・ナンバーのフィールドが含まれ、スクリプトがいるかどうかを確認するためにフィールドをチェックしますイメージはアンドロイドかどうかです。

# Read the Magic 
read(INF, $buf, BOOT_MAGIC_SIZE); 
unless ($buf eq BOOT_MAGIC) { 
die "Android Magic not found in $fn. Giving up.\n"; 
} 

だから、多分あなたは、コードをコメントアウト、またはマジックナンバーは、あなたのイメージであるかどうか確認し、スクリプトを変更することができますコードの下にはマジックナンバーを確認してください。

+0

私はこのperlスクリプトhttps://gist.github.com/jberkel/1087743を見つけ、 'split_bootimg.pl image'のように使いました。この出力は生成されました: 'Android Magicは画像に見つかりませんでした。あなたは私をさらに助けることができますか?私のプラットフォームはAndroid btwではありません。私は裸のLinuxです。 – h0ch5tr4355

+0

split_bootimg.plから、FITイメージの形式は、 –

+0

** + ----------------- + **です。ブートヘッダー| 1ページ ** + ----------------- + ** |カーネル| nページ ** + ----------------- + ** |ラムディスク| mページ ** + ----------------- + ** |第二段階| oページ ** + ----------------- + –

関連する問題