Hack BBS

[全部のスレッド一覧][新規投稿][記事の削除・変更] [Home Page]

返信投稿はタイトルのリンクをクリックして下さい
スレッド【No.3292】の中の記事をすべて表示しています

【No.3292】のスレッド
05/11/17(木) 21:20:04 投稿者[Akira] [No.3292]のスレッド内
【No.3292】 タイトル[玄箱HGにて、loader.oで2.4.17kernelの起動でUSBがおかしい?] この記事がスレッドの最初です
カーネルのコンパイルをしているのですが、USBの認識でフリーズしてしまいます。
hcd.c: ehci-hcd @ 00:0e.2, PCI device 1033:00e0 (NEC Corporation)
USBをサポートしなければいいのですが、フラッシュメモリのほうでは起動していますので、対応策があるのかもしれません。
何かしら情報をお持ちの方はいらっしゃいませんか?

環境
玄箱HG+シリアルコンソール引出し済み。
カーネル:ftp://linkstation.yi.org/pub/linkstation/kernel/linux-2.4.17_mvl21-sandpoint_040729.tar.gz
パッチ:http://client.linux-nfs.org/Linux-2.4.x/2.4.17/linux-2.4.17-NFS_ALL.dif
Makefileの修正。
EXTRAVERSION = _mvl21
INSTALL_MOD_PATH :=
loader.o用にarch/ppc/platforms/sandpoint_setup.cに下記の行を追加。
if ( r6 ) { *(char *)(r7+KERNELBASE) = 0; strcpy(cmd_line, (char *)(r6+KERNELBASE)); }

hdhglan用のconfigをベースに、
firminfo.txt.kuroboxhgを以下のように、
NAME="KURO-BOX/HG(IESHIGE)"
ID ="0x00001002"
Ver ="1.00"
SubVersion ="FLASH 1.0"
BootVer ="1.00"
arch/ppc/configs/kuroboxhg_defconfigを
CONFIG_FILTER=y
としました。
その後

make kuroboxhg_config
make oldconfig
make dep
make kernimg.bin
make modules
objcopy -O binary vmlinux vmlinux.bin
make modules_install
最初からあったものはバックアップを取り削除した後、/lib/modulesにインストール。
insmodでは特にエラー無し。
depmod -aでは未定義エラーが続出。(カーネルをロードする前なので気にしない)

loader.oを作成
ソースの位置を設定
INCLUDE = -isystem /usr/src/linux/include/

ramdisk.image.gzはfl3から取り出し、アドレスとサイズを調べて切り出しました。

insmod /boot/loader.o kernel=/boot/vmlinux.bin initrd=/boot/ramdisk.image.gz

としたところ、

起動してきて、
eth0: Auto-negotiation Enabled.
eth0: 1000Mbps Full-duplex operation.
SCSI subsystem driver Revision: 1.00
request_module[scsi_hostadapter]: Root fs not mounted
usb.c: registered new driver usbdevfs
usb.c: registered new driver hub
hcd.c: ehci-hcd @ 00:0e.2, PCI device 1033:00e0 (NEC Corporation)
ここでフリーズ。
usb2.0がおかしいのかと思い、
make menuconfigにてUSBのサポートを打ち切ったところ、

Checking root filesystem
[/sbin/fsck.ext3 (1) -- /] fsck.ext3 -a /dev/hda1
/dev/hda1 is mounted. e2fsck: Cannot continue, aborting.
先ほどのところは通過し、ここでfsckが掛けれないとでたので、
shellにはいり、fsckをかけ、もう一度insmod loader.oで起動。

今度は最後まで動作し、

ine Linux 3.1 (Pichon Lalande)
Kernel 2.4.17_mvl21 on a ppc

kuro login: root
Password:
Last login: Thu Nov 17 20:59:27 on ttyS0
[root@kuro root]# uname -a
Linux kuro 2.4.17_mvl21 #4 2005年 11月 17日 木曜日 20:22:49 JST ppc unknown

となりました。

また、ブート中で気になる差異としては

作成したカーネル。
CMD680: 100% native mode on irq 17
ide0: BM-DMA at 0xbffed0-0xbffed7, BIOS settings: hda:DMA, hdb:pio
ide1: BM-DMA at 0xbffed8-0xbffedf, BIOS settings: hdc:pio, hdd:pio

デフォルトのカーネル。
CMD680: 100% native mode on irq 17
ide0: BM-DMA at 0xbffed0-0xbffed7, BIOS settings: hda:pio, hdb:pio
ide1: BM-DMA at 0xbffed8-0xbffedf, BIOS settings: hdc:pio, hdd:pio

とでていました。

05/11/18(金) 13:33:06 投稿者[ひろし] [No.3292]のスレッド内
【No.3302】 タイトル[Re: 玄箱HGにて、loader.oで2.4.17kernelの起動でUSBがおかしい?] 【No.3292】に対する返信
loader.oを使ったカーネルの再構築で、hglan_configではだめでkurobox_configで動く原因を探っていったところ、私もUSBに行き当たりました。

私のほうで確認している事象は、次の通りです。

・フラッシュから抜き出したカーネルも、loader.oでは動かない。
・HD-HGLAN向けアップデータから抜き出した2.4.20カーネルは、loader.oで動く。

これらから、USBドライバ内での初期化処理に問題があり、USBコントローラがリセット直後でないとフリーズするのではないか・・・?と踏んでいます。

2.4.20ベースにするか、カーネルをフラッシュに書き込むか、悩んだまま2ヶ月が過ぎ去りました・・・

05/11/19(土) 00:35:15 投稿者[Akira] [No.3292]のスレッド内
【No.3314】 タイトル[Re: 玄箱HGにて、loader.oで2.4.17kernelの起動でUSBがおかしい?] 【No.3302】に対する返信
情報ありがとうございます。どうもハードがおかしいというわけでもなさそうで安心しました。

カーネルのkuroboxとhglanのconfigを見比べたところ、kuroboxはUSB関連がモジュールになっており、起動時にチェックに行かないみたいです。
そこで、menuconfigにてUSBをモジュールにして、作り直しました。

また、loader.oの起動前に、シングルユーザーモードにして、書込み禁止にしないと、危険みたいです。
一度hda1を吹っ飛ばして、設定が全部飛びました・・・

init 1
/bin/umount -a
/bin/mount -n -o remount,ro /

>・HD-HGLAN向けアップデータから抜き出した2.4.20カーネルは、loader.oで動く。
こうなると、HGLAN用のコンパイルできるソースが欲しくなりますね。
玄人志向からHG用がでてこないかな。

05/12/04(日) 01:41:27 投稿者[なす] [No.3292]のスレッド内
【No.3396】 タイトル[Re: 玄箱HGにて、loader.oで2.4.17kernelの起動でUSBがおかしい?] 【No.3314】に対する返信
>こうなると、HGLAN用のコンパイルできるソースが欲しくなりますね。
>玄人志向からHG用がでてこないかな。

http://linkstationwiki.org/Main/HomePage
http://linkstationwiki.org/downloads/source_code/
にかなりいろいろあるような?
kuro-box/hgがないが、gpl_powerpc-hdhglan.zipでいいんだろうな?

#役立ったらカンパしてあげましょう

05/12/04(日) 07:12:16 投稿者[omoni-] [No.3292]のスレッド内
【No.3397】 タイトル[Re: 玄箱HGにて、loader.oで2.4.17kernelの起動でUSBがおかしい?] 【No.3396】に対する返信
>>こうなると、HGLAN用のコンパイルできるソースが欲しくなりますね。
>>玄人志向からHG用がでてこないかな。
>
>http://linkstationwiki.org/Main/HomePage
>http://linkstationwiki.org/downloads/source_code/
>にかなりいろいろあるような?
>kuro-box/hgがないが、gpl_powerpc-hdhglan.zipでいいんだろうな?
>
>#役立ったらカンパしてあげましょう

企業が汗水垂らして改造したフリーソフトなのに、公開してる人にお金を払わんといかんのですか?
なんか変な宗教みたい。。。

05/12/04(日) 13:15:46 投稿者[なす] [No.3292]のスレッド内
【No.3398】 タイトル[Re: 玄箱HGにて、loader.oで2.4.17kernelの起動でUSBがおかしい?] 【No.3397】に対する返信
>企業が汗水垂らして改造したフリーソフトなのに、公開してる人にお金を払わんといかんのですか?
>なんか変な宗教みたい。。。

そうですね、私は無宗教ですが、宗教的かもしれませんね。
そういう気は無かったですが、押し付けがましく取れたのでしたら、失礼しましたm(__)m

個人的な気持ちとしては、感謝あるのみです。
汗水たらしたのに、無償にしてくれたlinuxおよびGNUプロジェクトの成果物作者の方々や、
GNU/GPLに賛同の元で新機能・コードを開発してくれる企業や、
それらについて新たな分析をしてくれる方や、
サーバーコストや回線コストもかかるはずだし、
downloadソフトやBBSの書き込み1通にもディスクに要すコストがあるはずなのに、
それらの情報が全体としてまとまっているからこそ意味を持つものとして、
これまで環境を無償で提供していただいてきている山下さんや
linkstationwiki.orgなどの方々に感謝するのみです。

感謝の気持ちを寄付という形で表すのも、これまた宗教的と見えるのかもしれませんね。
日本にはあまりない習慣ですし。まあお布施のようなもの?(^^;ヾ
でも義務ではないですよ。宗教は無償の愛ですから。

#そういえば、GPLって、
「これに改宗しなければ、神々の恩恵(過去の成果)にあずかれない。
 神の恩恵にあずかる以上、自分の成果も神と同等にみなに恩恵を与えよ。
 また、次の恩恵を受ける人にはGPLの教えを伝える義務がある」
 っていう宗教のような気がしてくるなぁ...