faith's blog

気まぐれ日記

u-bootを使ってみた

 Jetson TK1のブートローダ、カーネルの記事で、ブートローダカーネルがSPIフラッシュに書かれている?と書きましたが、eMMCかもしれません。

flashのscript実行時のログとかを調べているうちに、eMMCにブートローダdtbカーネルが格納されているパーティションをみつけたので。

 

どちらにせよ、書き換え限度があるところに、そんなものを置いてしまうのはいただけないですね。

 

というわけで、以下のツールを使って、flashに書き込まず、USB経由でu-bootを起動してみました。

https://github.com/NVIDIA/tegra-uboot-flasher-scripts

 

しかし、結果はまともに動かず。

一応、u-boot自体はそれなりに動いているんですが、カーネルが正常に起動せず、途中でエラーを吐いて止まりました。

 

kernel commandlineを調べてみたところ、device treeでは↓こんな感じですが、

tegraid=40.0.0.00.00 vmalloc=256M video=tegrafb console=ttyS0,115200n8 earlyprintk

 

nVidiaプロプライエタリブートローダから起動した場合は、かなり増えてます。

 

u-bootの環境変数を設定して、kernel commandlineをあわせてみると、それまで出ていたエラーは消えましたが、結局起動途中でとまりました。

 

nVidiaのローダで実行している、何らかのレジスタ初期設定?がu-bootには無いので、起動しないんじゃないかと思っています。

 

http://elinux.org/Tegra/Boards/NVIDIA_Jetson_TK1

によると、u-bootはetherとか未対応のものがあるとのことで、

もうちょっと待たないと、使えそうにないですね。

 

ネットを調べても、Jetson TK1でu-bootを使ってLinuxを起動したという話は聞かないですし。

 

ちなみに、u-bootのJetson TK1対応は、以下にもはいってましたが、駄目でした。

http://git.denx.de/?p=u-boot/u-boot-arm.git;a=summary
https://github.com/swarren/u-boot