日記/2008-12-11/HDL-GXR 対応 linux カーネルパッチの使い方
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
] [
リンク元
]
開始行:
*HDL-GXR 対応 linux カーネルパッチの使い方 [#dc247f21]
[[先日の日記>日記/2008-12-09/HDL-GXR 対応 linux カーネル...
** 用意するもの [#pf75f239]
:LANTANK 用シリアル接続ケーブル|
今回は必須です.
挑戦者で SERIAL-KIT として売られていたもの.
もしくはその相当品.
:ARM コンパイル環境|
セルフコンパイルでもクロスコンパイルでも可.
:シリアル端末|
LANDISK の接続先
:rootfs|
とりあえずは http://jr0bak.homelinux.net/~imai/linux/HDL-...
debian の lenny-armel (EABI) でも動作しております.
lenny が正式リリースされたらインストールキットにまとめて...
:USB-SATA 変換ケーブル|
HDD にカーネルと rootfs を書き込むのに使います.
:x86 linux マシン|
同上
** mkimage プログラム [#o8d0b852]
u-boot 形式のバイナリを作るプログラムです.
u-boot のソースの中にあります.
ARM コンパイル環境上でビルドしてパスの通った場所に置いて...
** カーネルのコンパイル [#v622d98f]
+ linux-2.6.27.tar.bz2 と patch-2.6.28-rc6.bz2 を kernel....
+ 先日のパッチを当てます.
#ref(日記/2008-12-09/HDL-GXR 対応 linux カーネルパッチ/hd...
+ カーネルをビルドします.linux/.config ファイルをここに...
#ref(dot.config)
設定を変更しない場合は
$ cd linux-2.6.28-rc6
$ cp どこか/dot.config .config
$ ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- make oldconfig
$ ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- make uImage
でコンパイルできます.
CROSS_COMPILE= の部分はクロスコンパイラの名前によって変更...
この例はクロスコンパイラが arm-linux-gnueabi-gcc の場合で...
linux-2.6.28-rc6/arch/arm/boot/uImage が目的のブツです.
** rootfs の作成 [#b4363290]
SATA HDD にパーティションを切って sda2.tar.gz を展開しま...
[[このページ>Linux/embedded/LANDISK/HDL-GXR/debian インス...
** カーネルのコピー [#s99cf9d4]
先ほど作成した uImage を 1 番めのパーティションにコピーし...
名前は何でもいいのですが,説明のためここでは uImage-2.6.2...
** HDD を LANDISK に装着 [#i83997f8]
T/O
** シリアルの接続 [#f91e78c7]
UART0 というシルク(基板上の文字)があるところにシリアル...
文字のあるほうが 1 番ピンです.
向きを間違えないように.
シリアルの通信パラメータは
- 115200 bps
- 8 bit
- パリティなし
- ハードフロー・ソフトフローなし
です.
** 電源投入 [#jd3d7ca0]
=========================================
HDL-GXR series Initial boot loader
Copyright (C) 2006 I-O DATA DEVICE,INC.
========================================= ** LOADER **
** MARVELL BOARD: DB_MV88F5182_HDL_GT LE
...
U-Boot 1.1.1 (Oct 5 2006 - 13:58:33) MV : 1.7.3 (I-O DA...
DRAM CS[0] base 0x00000000 size 128MB
DRAM Total size 128MB
MX AM29LV400B (4 Mbit, bottom boot sect)
Size: 512 kB,Bus Width: 2, device Width: 2.
Flash base: 0xfff80000,Number of Sectors: 11 Type: BOTTOM.
[512kB@fff80000] Flash: 512 kB
Addresses 20M - 0M are saved for the U-Boot usage.
Mem malloc Initialization (20M - 16M): Done
Soc: MV88F5182 Rev 2
CPU: ARM926 (Rev 0) running @ 400Mhz
SysClock = 200Mhz , TClock = 166Mhz
USB 0: host mode
USB 1: host mode
PCI 0: PCI Express Root Complex Interface
Net: egiga0 [PRIME]
Hit any key to stop autoboot: 0
HDL-GXR>>
電源を入れるとシリアル端末上にベロベロっとメッセージが出...
このままだと自動ブートシーケンスに入ってしまうので,何か...
HDL-GXR>> というプロンプトが出てきます.
そこで,以下のように入力します.
ide reset ...
ext2load ide 0:1 0x02000000 /uImage-2.6.28-rc6.gxr ...
setenv bootargs console=ttyS0,115200 root=/dev/sda2 ro m...
bootm ...
linux が起動しましたね.
** tips [#ze550672]
*** 自動起動するようにする [#gbaed998]
下記のようにすればできるはずですが,未確認です.
+ 1 番目のパーティションのカーネルの名前を uImage.gxr に...
-- 別の名前にするとブートシーケンスのほうも書き換えないと...
+ カーネルコマンドラインを上記の値に設定します.
+ u-boot 環境変数を保存します.
saveenv
+ 再起動して,動作を確認してください.
*** tftp でのカーネルのロード [#fcd13ce0]
u-boot 上で以下のようにすれば tftp 経由でカーネルをロード...
set ipaddr 192.168.0.200 ← LAND...
set serverip 192.168.0.1 ← tftp...
tftpboot 0x02000000 どこか/uImage-2.6.28-rc6.gxr ← tftp...
setenv bootargs console=...(略) ← カー...
bootm ← linu...
終了行:
*HDL-GXR 対応 linux カーネルパッチの使い方 [#dc247f21]
[[先日の日記>日記/2008-12-09/HDL-GXR 対応 linux カーネル...
** 用意するもの [#pf75f239]
:LANTANK 用シリアル接続ケーブル|
今回は必須です.
挑戦者で SERIAL-KIT として売られていたもの.
もしくはその相当品.
:ARM コンパイル環境|
セルフコンパイルでもクロスコンパイルでも可.
:シリアル端末|
LANDISK の接続先
:rootfs|
とりあえずは http://jr0bak.homelinux.net/~imai/linux/HDL-...
debian の lenny-armel (EABI) でも動作しております.
lenny が正式リリースされたらインストールキットにまとめて...
:USB-SATA 変換ケーブル|
HDD にカーネルと rootfs を書き込むのに使います.
:x86 linux マシン|
同上
** mkimage プログラム [#o8d0b852]
u-boot 形式のバイナリを作るプログラムです.
u-boot のソースの中にあります.
ARM コンパイル環境上でビルドしてパスの通った場所に置いて...
** カーネルのコンパイル [#v622d98f]
+ linux-2.6.27.tar.bz2 と patch-2.6.28-rc6.bz2 を kernel....
+ 先日のパッチを当てます.
#ref(日記/2008-12-09/HDL-GXR 対応 linux カーネルパッチ/hd...
+ カーネルをビルドします.linux/.config ファイルをここに...
#ref(dot.config)
設定を変更しない場合は
$ cd linux-2.6.28-rc6
$ cp どこか/dot.config .config
$ ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- make oldconfig
$ ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- make uImage
でコンパイルできます.
CROSS_COMPILE= の部分はクロスコンパイラの名前によって変更...
この例はクロスコンパイラが arm-linux-gnueabi-gcc の場合で...
linux-2.6.28-rc6/arch/arm/boot/uImage が目的のブツです.
** rootfs の作成 [#b4363290]
SATA HDD にパーティションを切って sda2.tar.gz を展開しま...
[[このページ>Linux/embedded/LANDISK/HDL-GXR/debian インス...
** カーネルのコピー [#s99cf9d4]
先ほど作成した uImage を 1 番めのパーティションにコピーし...
名前は何でもいいのですが,説明のためここでは uImage-2.6.2...
** HDD を LANDISK に装着 [#i83997f8]
T/O
** シリアルの接続 [#f91e78c7]
UART0 というシルク(基板上の文字)があるところにシリアル...
文字のあるほうが 1 番ピンです.
向きを間違えないように.
シリアルの通信パラメータは
- 115200 bps
- 8 bit
- パリティなし
- ハードフロー・ソフトフローなし
です.
** 電源投入 [#jd3d7ca0]
=========================================
HDL-GXR series Initial boot loader
Copyright (C) 2006 I-O DATA DEVICE,INC.
========================================= ** LOADER **
** MARVELL BOARD: DB_MV88F5182_HDL_GT LE
...
U-Boot 1.1.1 (Oct 5 2006 - 13:58:33) MV : 1.7.3 (I-O DA...
DRAM CS[0] base 0x00000000 size 128MB
DRAM Total size 128MB
MX AM29LV400B (4 Mbit, bottom boot sect)
Size: 512 kB,Bus Width: 2, device Width: 2.
Flash base: 0xfff80000,Number of Sectors: 11 Type: BOTTOM.
[512kB@fff80000] Flash: 512 kB
Addresses 20M - 0M are saved for the U-Boot usage.
Mem malloc Initialization (20M - 16M): Done
Soc: MV88F5182 Rev 2
CPU: ARM926 (Rev 0) running @ 400Mhz
SysClock = 200Mhz , TClock = 166Mhz
USB 0: host mode
USB 1: host mode
PCI 0: PCI Express Root Complex Interface
Net: egiga0 [PRIME]
Hit any key to stop autoboot: 0
HDL-GXR>>
電源を入れるとシリアル端末上にベロベロっとメッセージが出...
このままだと自動ブートシーケンスに入ってしまうので,何か...
HDL-GXR>> というプロンプトが出てきます.
そこで,以下のように入力します.
ide reset ...
ext2load ide 0:1 0x02000000 /uImage-2.6.28-rc6.gxr ...
setenv bootargs console=ttyS0,115200 root=/dev/sda2 ro m...
bootm ...
linux が起動しましたね.
** tips [#ze550672]
*** 自動起動するようにする [#gbaed998]
下記のようにすればできるはずですが,未確認です.
+ 1 番目のパーティションのカーネルの名前を uImage.gxr に...
-- 別の名前にするとブートシーケンスのほうも書き換えないと...
+ カーネルコマンドラインを上記の値に設定します.
+ u-boot 環境変数を保存します.
saveenv
+ 再起動して,動作を確認してください.
*** tftp でのカーネルのロード [#fcd13ce0]
u-boot 上で以下のようにすれば tftp 経由でカーネルをロード...
set ipaddr 192.168.0.200 ← LAND...
set serverip 192.168.0.1 ← tftp...
tftpboot 0x02000000 どこか/uImage-2.6.28-rc6.gxr ← tftp...
setenv bootargs console=...(略) ← カー...
bootm ← linu...
ページ名:
-->