Hack BBS
[全部のスレッド一覧][新規投稿][記事の削除・変更]
[Home Page]
返信投稿はタイトルのリンクをクリックして下さい
スレッド【No.2890】の中の記事をすべて表示しています
【No.2890】のスレッド
05/08/22(月) 14:26:50 投稿者[YAHOO] [No.2890]のスレッド内
- 【No.2890】 タイトル[玄箱/HGでloader.oによるkernel起動]
この記事がスレッドの最初です
- こんにちは。YAHOOと申します。
初めての投稿ですが、宜しくお願い致します。
状況説明のため、長文となっております。申し訳ありません。
現在、玄箱/HGを購入して、山下さんやたつやさんのホームページを参考に
させて頂き、debian 3.1(sarge)化して、media server( wizrd, mt-daapd )
を導入して使用しております。このdebian 3.1(sarge)化に際しては、特に
問題もなく、ここまでこれたのも山下さん、たつやさんなどの先人のご苦労
があってのことと深く感謝しております。
今後は、kernel moduleの追加やkernelのバージョンアップが必要となるので
この作業を進めております。
H/Wについては、シリアルコンソールの改造はしておりません。
S/Wについては、debian 3.1(sarge)をベースになっており、kernelは
$uname -r
2.4.17_mvl21
$ dpkg -l | grep gcc
ii gcc 3.3.5-3 The GNU C compiler
ii gcc-2.95 2.95.4-22 The GNU C compiler
ii gcc-3.3 3.3.5-13 The GNU C compiler
ii gcc-3.3-base 3.3.5-13 The GNU Compiler Collection (base package)
ii libgcc1 3.4.3-13 GCC support library
# cd /usr/bin
# ln -sf gcc-2.95 gcc
また、たつやさんのホームページから
linux-2.4.17_mvl21-sandpoint_040729.tar.gz
toolchain-powerpc-linux_040728.tar.gz
更に、
http://jan.csie.ntu.edu.tw/~jo/kuro/loader/loader.tar.gz
をダウンロードさせて頂きました。
たつやさんのホームページに従って、
$ cd /mnt/kernel
$ tar -zxvf linux-2.4.17_mvl21-sandpoint_040729.tar.gz
$ cd linux-2.4.17_mvl21-sandpoint
## 現在使用しているkernelのバージョンに合ったloader.oを作成するため
$ vi include/linux/version.hで修正
- #define UTS_RELEASE "2.4.17_mvl21-sandpoint"
+ #define UTS_RELEASE "2.4.17_mvl21"
$ mv .hhl_cross_compile .hhl_cross_compile.org
$ mv .hhl_target_lspname .hhl_target_lspname.org
$ make modproper
$ make hdhglan_config
$ make dep zImage
$ objcopy -O binary vmlinux vmlinux.bin
# cp -p vmlinux.bin /boot/
$ cd /mnt/kernel
$ tar -zxvf loader.tzr.gz
$ cd loader
$ make clean
$ make
# chown root:root loader.o
# cp -p loader.o /lib/modules/2.4.17_mvl21/kernel/
# cd /usr/local/sbin
# vi loader.sh を作成
#!/bin/bash
sync
sync
speep 30
insmod /lib/modules/2.4.17_mvl21/kernel//loader.o kernel=/boot/vmlinux.bin
# chown root:root loader.sh
# ./usr/local/sbin/loader.sh&
# exit( suをexit)
$ exit( telnet session closed)
3〜5分経過後、telnet,pingを打っても、なにも応答なし。
更に、山下さんのLink Station/玄箱 Hack BBS内の
記事番号【No.2554】
投稿者:oyajingさん
タイトル:Re: loader.oでのカーネル入れ換え
を参考にして、
$ make kurobox_config
$ make menuconfig
Network device support ---> Ethernet (1000 Mbit) --->
<*> Realtek R8110S/R8169S support
[*] Support RTL8169 Jumbo Frame
$ make dep zImage
$ objcopy -O binary vmlinux vmlinux.bin
$ su
# cp -p vmlinux.bin /boot
# /usr/local/sbin/loader.sh&
# exit
$ exit
3〜5分経過後、telnet,pingを打っても、なにも応答なし。
更に、
# cd /etc
# cp -p kuro_load_param kuro_load_param.org
# vi kuro_load_paramを修正
- LOADER="/lib/modules/2.4.17_kuro-box/kernel/loader.o"
+ LOADER="/lib/modules/2.4.17_mvl21/kernel/loader.o"
# sync;sync;sleep 30;init 3&
を実行しても、3〜5分経過後、telnet,pingを打っても、なにも応答なし。
以上の結果となっております。debian 3.1(sarge)の場合、
どのようにしたら、loader.oを使ってkernelを起動できてtelnetで
loginできるようになるのでしょうか?
#山下さんのハックの記録では、linux-2.4.20ベースのカーネルでは
#ちゃんと起動しているようですが、HD-HGLANは購入していないので
#ソースCDを購入できないし...(^_^;;
05/08/24(水) 22:03:15 投稿者[TACOS] [No.2890]のスレッド内
- 【No.2905】 タイトル[Re: 玄箱/HGでloader.oによるkernel起動]
【No.2890】に対する返信
- はじめまして。
うちもHGですがたつやさんのサイトの手順で起動はできました。
ちゃんと設定していないのでAVRが勝手に電源をきってしまいますが・・・
手順も忘れてしまいました。
>$ make hdhglan_config
のあとに meke oldconfig が無いの気になりますが
関係ないですかね?
05/08/24(水) 22:58:06 投稿者[YAHOO] [No.2890]のスレッド内
- 【No.2906】 タイトル[Re: 玄箱/HGでloader.oによるkernel起動]
【No.2905】に対する返信
- >はじめまして。
はじめましてTACOSさん、宜しくお願い致します。
>うちもHGですがたつやさんのサイトの手順で起動はできました。
そうですか、うまく起動できている方もいらっしゃるんですね。
ちょっと、環境を確認させて下さい。私は、debian 3.1(sarge)を
ベースにgccは2.95、ldは2.15でコンパイルとリンケージを実施して
います。どちらも、apt-getでインストールしております。
gccの3.3.5ではコンパイルできませんでした。
TACOSさんの環境はどのような環境でしょうか?
更に、toolchain-powerpc-linux_040728.tar.gzをx85のLinux(debian 3.1)
のPCに展開してcross compileしたものを玄箱/HGにftpして
objcopy -O binary vmlinux vmlinux.bin
で作成したvmlinux.binもうまくloader.oで起動出来ませんでした。
>ちゃんと設定していないのでAVRが勝手に電源をきってしまいますが・・・
そうですか、こちらは事前に調査してみます。貴重な情報ありがとう
ございました。
>>$ make hdhglan_config
>
>のあとに meke oldconfig が無いの気になりますが
TACOSさんはやはり、make hdhglan_configで.configを作成された
んでしょうか?
いえ、今は自分としては煮詰まった状態ですのでありがたいです。
で、早速試してみました。しかし、相変わらず3〜5分経過後も、
telnet,pingを打っても、なにも応答なしの状態でした。残念。
山下さんのハックの記録の
2005/05/14 玄箱/HG のカーネル入れ換え
2005/05/30 玄箱/HG のカーネル入れ換え(2)
2005/05/31 loader による玄箱の別カーネル起動
2005/06/03 loader による玄箱の別カーネル起動(2)
などの記録を拝見させて頂くとkernelのversion、libraryのversion、
.configのパラメータなども関係しているようで確認する組み合わせ数
が多くてどうしたら良いのかわからず、投稿させて頂きました。
皆様の情報を集めさせて頂き、どのような条件が必要かをまとめさせて
頂きたいと思いますので宜しくお願い致します。
05/08/25(木) 00:02:05 投稿者[TACOS] [No.2890]のスレッド内
- 【No.2908】 タイトル[Re: 玄箱/HGでloader.oによるkernel起動]
【No.2906】に対する返信
- >TACOSさんの環境はどのような環境でしょうか?
うちは、なんちゃって Gentoo Linux を利用しています。
matsuuさん、らっしーさんのサイトを参考に構築しました。
gcc は 3.4.4 、2.95.3 の両方が入っています。
3.4.4ではカーネルコンパイル時に怒られてしまうので
2.95.3でセルフコンパイルしました。(loaderも)
カーネルのコンパイル方法は、たつやさんのサイトを参考に
loader.o のコンパイル使用方法は、 n0nt!tl3さんのサイト
を参考に行いました。
カーネルソースはたつやさんのサイトから
linux-2.4.17_mvl21-sandpoint_050131.tar.gz
をftpでゲットし利用しました。YAHOOさんの利用されている
バージョンでは試していません。
hdhglan_config は利用せず、kurobox_defconfig をベースに
NICドライバ選択だけ変更したものを利用しました。
これも失敗でメインメモリが64MBの認識になってしまいました。
ここも何とかしないとな〜と思いながら早1ヶ月。
自分のスキルではつらいものがあります。
世の中には、2.6系カーネルを起動させている方も
NetBSDを起動されている方もいらっしゃるのに・・・
あまりお力にはなれませんが、頑張って下さい。
05/08/25(木) 21:51:19 投稿者[YAHOO] [No.2890]のスレッド内
- 【No.2910】 タイトル[ビンゴ!!玄箱/HGでloader.oでkernelが起動できました]
【No.2908】に対する返信
- こんばんは、TACOSさん。
#他の方の参考になればと思い、長文となってしまいました。
>うちは、なんちゃって Gentoo Linux を利用しています。
そうですか、私の環境debian 3.1( sarge )とはベースが違うようですね。
>gcc は 3.4.4 、2.95.3 の両方が入っています。
>3.4.4ではカーネルコンパイル時に怒られてしまうので
>2.95.3でセルフコンパイルしました。(loaderも)
私の場合も、3.3.5、2.95.4の両方が入っており、3.3.5では同様にカーネル
コンパイル時に怒られてしまうので、2.95.4でセルフコンパイルしています。
gccのrevisionが若干私の方が新しいようですが、kernelとloaderをコンパイル
しているのはほぼ同じ(?)条件のようですね。一安心しました。
>カーネルのコンパイル方法は、たつやさんのサイトを参考に
>loader.o のコンパイル使用方法は、 n0nt!tl3さんのサイト
>を参考に行いました。
私も、お二方のサイトを参考にさせて頂きました。助かっております。
>カーネルソースはたつやさんのサイトから
>linux-2.4.17_mvl21-sandpoint_050131.tar.gz
>をftpでゲットし利用しました。YAHOOさんの利用されている
>バージョンでは試していません。
http://linkstation.yi.org/index.php?cmd=read&page=Kernel_source%2FDownload
からでは、linux-2.4.17_mvl21-sandpoint_040729.tar.gzしかdownload
できないようですね。internetを検索してみたら、なんと
ftp://linkstation.yi.org/pub/linkstation/kernel/
のdirectory list上に
linux-2.4.17_mvl21-sandpoint_050131.patch.gz
linux-2.4.17_mvl21-sandpoint_050131.tar.gz
というファイルがありました。こちらを使われたんですね。
では、早速試してみます。
$ cd /usr/src
$ wget ftp://linkstation.yi.org/pub/linkstation/kernel/linux-2.4.17_mvl21-sandpoint_050131.patch.gz
$ zgip -d linux-2.4.17_mvl21-sandpoint_050131.patch.gz
$ cd linux-2.4.17_mvl21-sandpoint
$ patch -p1 < ../linux-2.4.17_mvl21-sandpoint_050131.patch
!!! patchがはじかれていないかを確認
$ find ./ -name "*.rej" -print
!!! *.rejファイルは発生していないので全てのpatchがあたったようです。
$ make mrproper
$ make kurobox_config
$ make menuconfig
!!! Network device support ---> Ethernet (1000 Mbit) --->
!!! <*> Realtek R8110S/R8169S support をselectして
!!! .configを確認
$ grep 8169 .config
CONFIG_R8169=y
# RTL8169_JUMBO_FRAME_SUPPORT is not set
$ make dep kernimg.bin
$ objcopy -O binary vmlinux vmlinux.bin
# cp -p vmlinux.bin /boot/
!!! いざ、reboot...の前に、他のpcからpingを打っておいて
!!! 今度こそreboot。うまくいくかな?
# sync; insmod loader.o kernel=/boot/vmlinux.bin
私の環境だと、40秒位でLINK/ACTがいったん消灯して
pingに応答がなくなって、そのまま...、うぉぉぉ再度pingに応答している。
もうしばらくシステムが準備完了になるまでじっと1分ほど待ってtelnetして
みると
Debian GNU/Linux 3.1 KURO-BOX
KURO-BOX login:
ちゃんどloginプロンプトが出た〜〜〜ぁ。感激!!
でも、本当に今回コンパイルしたkernelがbootしたか確認、確認。
今までは、
Memory BAT mapping: BAT2=128Mb, BAT3=0Mb, residual: 0Mb
Linux version 2.4.17_mvl21 (root@toda_dev.melcoinc.co.jp) (gcc version 2.95.3 20010315 (release/MontaVista)) #24 2004年 10月 19日 火曜日 17:17:03 JST
だったけれど
$ dmesg | head -3
Memory BAT mapping: BAT2=64Mb, BAT3=0Mb, residual: 0Mb
Linux version 2.4.17_mvl21 (staffx@KURO-BOX) (gcc version 2.95.4 20011002 (Debian prerelease)) #9 2005年 8月 25日 木曜日 12:42:42 JST
KURO-BOX (C) 2004 KUROUTO-SHIKOU.
確かに、2004年 10月 19日 火曜日 17:17:03 JSTから2005年 8月 25日 木曜日 12:42:42 JSTに変わっています。もちろん、作成者も変わっています。
TACOSさんのアドバイスで大きな一歩が踏み出せました。ありがとう
ございました。
>これも失敗でメインメモリが64MBの認識になってしまいました。
>ここも何とかしないとな〜と思いながら早1ヶ月。
確かに、
make kurobox_config+Realtek R8110S/R8169S support selectでkernelを
buildすると
Memory BAT mapping: BAT2=64Mb, BAT3=0Mb, residual: 0Mb
となってしまい、64Mbしか認識してくれませんね。
loaderについては、REAEME内に記述されているcmdlineを入力可能にする
patchを適用しているので、memoryに関しては、mem=128Mを指定してみました。
# sync;insmod loader.o kernel=/boot/vmlinux.bin cmdline="mem=128M"
として,kernel bootしましたが、memoryは相変わらず
$ dmesg | head -1
Memory BAT mapping: BAT2=64Mb, BAT3=0Mb, residual: 0Mb
となってしまい、64MBのままでした。この件は、決めうちのpatchですが
--- ./arch/ppc/platforms/sandpoint_setup.c.org 2005-08-25 18:52:34.000000000 +0900
+++ ./arch/ppc/platforms/sandpoint_setup.c 2005-08-25 19:26:01.000000000 +0900
@@ -406,6 +406,8 @@
#else /* CONFIG_LINKSTATION_HGLAN */
size = 64*1024*1024;
#endif /* CONFIG_LINKSTATION_HGLAN */
+/* added YAHOO 2005.08.25 KURO-BOX/HG momory size=128MB */
+ size = 128*1024*1024;
return size;
}
#でもなんでCONFIG_LINKSTATION_HGLAN=yが効かないのかな?
上記のpatchを適用してからkernelをbuildしてloare.oでbootすれば
$ dmesg | head -1
Memory BAT mapping: BAT2=128Mb, BAT3=0Mb, residual: 0Mb
のように128Mbを認識してくれました。
因みに、
$ cat /proc/meminfo
total: used: free: shared: buffers: cached:
Mem: 130301952 55025664 75276288 0 14966784 24203264
Swap: 263200768 0 263200768
MemTotal: 127248 kB
MemFree: 73512 kB
MemShared: 0 kB
Buffers: 14616 kB
Cached: 23636 kB
SwapCached: 0 kB
Active: 12236 kB
Inactive: 36684 kB
HighTotal: 0 kB
HighFree: 0 kB
LowTotal: 127248 kB
LowFree: 73512 kB
SwapTotal: 257032 kB
SwapFree: 257032 kB
本当に、適切なアドバイスありがとうございました。
>世の中には、2.6系カーネルを起動させている方も
>NetBSDを起動されている方もいらっしゃるのに・・・
早く。2.6系のkernelを起動させたいな〜ぁ。
#でも、玄箱/HGで動く2.6系のkernel sourceはどこにあるのかな?
最後に、TACOSさん本当にありがとうございました。
05/08/25(木) 22:48:49 投稿者[TACOS] [No.2890]のスレッド内
- 【No.2911】 タイトル[起動おめでとうございます。]
【No.2910】に対する返信
- こんばんは。
カーネル起動おめでとうございます。YAHOOさん。
2.6は、虹野 彼方さんが起動させているようです。
素人よけなのか?ダウンロードは出来ずCD−Rでの配布を
行っていたようです。
ローダ部分のファームの書き換えが必要なようで
自分には怖くて手出しが出来ませんでした。
NetBSDの起動も出来ているのだから適当なパッチを当てれは
loader.oからの起動も出来るのではないかな〜と思っています。
他力本願で誰か作ってくれる人を待ちたいと思っています。
05/08/25(木) 23:16:36 投稿者[YAHOO] [No.2890]のスレッド内
- 【No.2912】 タイトル[的確なアドバイスをありがとうございました]
【No.2911】に対する返信
- >こんばんは。
こんばんは。
>カーネル起動おめでとうございます。YAHOOさん。
ありがとうございます。TACOSさんのご助言がなかったら、解決が
いつになったかわかりません。本当にありがとうございました。
>2.6は、虹野 彼方さんが起動させているようです。
>素人よけなのか?ダウンロードは出来ずCD−Rでの配布を
>行っていたようです。
>ローダ部分のファームの書き換えが必要なようで
>自分には怖くて手出しが出来ませんでした。
H/Wの変更は、技術も工具もなくなかなか手がでません。しかし、
今後のことを考えると先ずは、シリアルコンソールの引き出し、
更には、ファームウェアの書き換えも検討が必要かと思います。
#でも、難しそうだし、FLASHが飛ぶなどのリスクはちょっと
#きついかな?
虹野 彼方さんのCD-Rは、今後ご厄介になるとは思いますが、
もう少し修行が必要かなと思っています。
>NetBSDの起動も出来ているのだから適当なパッチを当てれは
>loader.oからの起動も出来るのではないかな〜と思っています。
そうですね、素人にはこちらからの方が敷居が低そうに思えます。
今後、もう少し情報を集めて行きたいと思っています。
>他力本願で誰か作ってくれる人を待ちたいと思っています。
そういわずに、お互いに頑張りましょう!!
余りきれいな対応ではありませんが、memoryも128MBを認識しましたので
お土産に使って見て下さいませ。
それでは、今回は本当に的確なアドバイスをありがとうございました。
05/08/28(日) 00:22:03 投稿者[fさf] [No.2890]のスレッド内
- 【No.2914】 タイトル[マルチ野郎が]
【No.2912】に対する返信
なにちょうしのってんだか
05/08/24(水) 10:57:36 投稿者[ぽんこつ] [No.2890]のスレッド内
- 【No.2898】 タイトル[Re: 玄箱/HGでloader.oによるkernel起動]
【No.2890】に対する返信
- 最新の玄箱うぉううぉう♪さんのDebianイメージなら、/bootにカーネル入れるだけなんで、詳しくは分かりません。
なんか、bootにイメージがあるかないかチェックして、あればそのイメージを起動してくれます。
05/08/24(水) 13:49:10 投稿者[YAHOO] [No.2890]のスレッド内
- 【No.2900】 タイトル[Re: 玄箱/HGでloader.oによるkernel起動]
【No.2898】に対する返信
- ぽんこつさん、返信ありがとうございます。
>最新の玄箱うぉううぉう♪さんのDebianイメージなら、/bootにカーネル入れるだけなんで、詳しくは分かりません。
>なんか、bootにイメージがあるかないかチェックして、あればそのイメージを起動してくれます。
>
長文にもかかわらず、debian化の際の手順の記述を漏らしておりました。
debian化の際には、ご指摘の玄箱うぉううぉう♪さんのDebianイメージ
debian_2005_04_09_dist.tgzを使わして頂きました。
#現在は、更新されていてdebian_2005_08_21_dist.tgzがdownload
#できるようです。
#UNIX USER 2005.9月号読ませて頂きました。
このため、
1)/bootにvmlinux.binをコピー
2)/lib/modules/2.4.17_mvl21/kernelにloader.oをコピー
した後、/etc/kuro_load_paramを
LOADER="/lib/modules/2.4.17_mvl21/kernel/loader.o"
に修正してから、runlevel 3に切り替えました。
しかし、【No.2890】に記述しましたが、
>> sync;sync;sleep 30;init 3&
>>を実行しても、3〜5分経過後、telnet,pingを打っても、なにも応答なし。
となってしまい、うまく新しいkernelが起動してくれません。