
Ubuntu日本語フォーラム
ログインしていません。
jacklope さん ありがとうございます。
grepの入力を色々試していましたが、どうにか追加することが出来ませんでした。また、フォルダ内に RT3070STA.datもコピーし、どうにか最後までたどり着くことが出来ました。 #16 の最後は insmod ですよね。
オフライン
はじめまして。
こちらで紹介されている方法を試みてみたのですが、最後の $ sudo insmod rt3070sta.ko を実行すると、
insmod: error inserting 'rt3070sta.ko': -1 File exists
というエラーが出ます。
ご助言、よろしくお願いします。
オフライン
#27のBuddyさんへ
既に追加されているモジュールを、再度追加しようとすると、そういうエラーになるっぽいです。
そのエラーは気にしなくてよいはずです。
その状態で、
lsmod | grep rt3070sta
を実行して、
rt3070sta 517068 0
usbcore 146412 3 rt3070sta,uhci_hcd
などが出力されれば、OKでしょう。
#28 STGSAGWANさん
お返事、ありがとうございます。
教えていただいたコードを入力したところ、『rt3070sta 522316 0』と出力されましたが、『usbcore』は出力されませんでした。
ひょっとしたら、usb_main_dev.cの設定で失敗しているんですかね?
オフライン
#29のBuddyさんへ
Buddy による投稿:
教えていただいたコードを入力したところ、『rt3070sta 522316 0』と出力されましたが、『usbcore』は出力されませんでした。
ひょっとしたら、usb_main_dev.cの設定で失敗しているんですかね?
残念ですが、実際の無線機器も持っていない上、USB周りの知識も全くないので、私にはさっぱりです・・・。
環境によって変わりうると思ったので、「などが出力されれば、OKでしょう。」と断定を避けてお伝えしたつもりでした。
私には、どういう出力がされると正常なのか分からない上、その状態で実際の機器が動くかもどうかもわからないのです。
カーネルモジュールを追加できるか否かの確認までが、私のできる範囲だったりします。
#30 STGSAGWANさん
いえいえ、ご助言は大いに助かりました。
ちゃんと追加されていたことだけでもわかって良かったですよ。
もうちょっと踏ん張ってみます。
ありがとうございます。
オフライン
初歩的な躓きで申し訳ないのですが
{USB_DEVICE(0x0411,0x015d)},\
の追加をどこにすればよいか分かりません・・・
ドライバは
RT3070_LinuxSTA_V2.3.0.1_20100208
をダウンロードしております。
オフライン
ファイル、common/rtusb_dev_id.cのUSB_DEVICE_ID rtusb_dev_id[] = {と}の間です。
オフライン
kirarionさん、いまさらの確認ですがインストールされているubuntuは 8.04 ですよね?
ubuntu 9.10では標準でLiveCDに最新のドライバが登録されています。
ソースからドライバを作る必要はありません。
バージョンを確認してください!!!
オフライン
のんきさん による投稿:
ubuntu 9.10では標準でLiveCDに最新のドライバが登録されています。
ソースからドライバを作る必要はありません。
最新のドライバがrt3070sta.ko、rt2870sta.koの事であれば実機がないのでドライバの情報だけでの判断ですが、このドライバではWLI-UC-GNは認識しないと思うのですが動作は実機で確認済みですか?
オフライン
う~ん、申し訳ないです。
色々と説明不足でしたね。
無線LANアダプタのテストとして、実機(WLI-UC-GN)を利用するというのが目的です。
但し、私のPC(eeePC701SD-X)にはRTL8187Seが内臓されており、
当然ながら、ubunntu9.10 Netbook Remixはそのチップ用のドライバを
選んでくれて、ネット自体には無事繋がっています。
なので、BIOSでワイヤレスLANを切り実機を挿した状態で起動したところ
ネットに繋がりませんでした。
この時点でiwconfigなどで、デバイスの状態を確認すればよかったのですが、
前質問を投稿する時は状況がテンパってて藁にもすがる想いで投稿してしまいました。
ご教示いただいた事、その他の情報もとに再度テストしてみます。
すぐに解決できるとは思うのですが、解決しましたら、再度投稿します。
ありがとうございました。
オフライン
はじめまして。
ubuntu 9.10でWLI-UC-GNが認識しないので、
RT3070_LinuxSTA_V2.3.0.1_20100208
のドライバをダウンロードして、
こちらで紹介されている方法を試みてみたのですが、
$ sudo insmod rt3070sta.ko
を実行すると、
insmod: error inserting 'rt3070sta.ko': -1 Unknown symbol in module
というエラーが出ます。
ご助言いただけませんでしょうか。
よろしくお願いします。
オフライン
はじめまして。
スペックの関係でDebianを使用して初心者ですが、私も上の方と同じところで困っています。
dmesg を実行すると以下のようになっていて、少し調べて見たところどうやらUSBモジュールの組み込みとやらをしなければならないようなのですが、その意味とやり方が分かりません。ご教示頂けたらと思います。
[ 2168.359026] rt3070sta: module license 'unspecified' taints kernel.
[ 2168.360198] rt3070sta: Unknown symbol usb_alloc_urb
[ 2168.360844] rt3070sta: Unknown symbol usb_free_urb
[ 2168.362216] rt3070sta: Unknown symbol usb_register_driver
[ 2168.363571] rt3070sta: Unknown symbol usb_put_dev
[ 2168.364082] rt3070sta: Unknown symbol usb_get_dev
[ 2168.364911] rt3070sta: Unknown symbol usb_submit_urb
[ 2168.366800] rt3070sta: Unknown symbol usb_control_msg
[ 2168.368169] rt3070sta: Unknown symbol usb_deregister
[ 2168.369858] rt3070sta: Unknown symbol usb_kill_urb
[ 2168.370424] rt3070sta: Unknown symbol usb_buffer_free
[ 2168.371970] rt3070sta: Unknown symbol usb_buffer_alloc
[ 2191.980889] rt3070sta: Unknown symbol usb_alloc_urb
[ 2191.981571] rt3070sta: Unknown symbol usb_free_urb
[ 2191.983012] rt3070sta: Unknown symbol usb_register_driver
[ 2191.984273] rt3070sta: Unknown symbol usb_put_dev
[ 2191.984782] rt3070sta: Unknown symbol usb_get_dev
[ 2191.985610] rt3070sta: Unknown symbol usb_submit_urb
[ 2191.987501] rt3070sta: Unknown symbol usb_control_msg
[ 2191.988872] rt3070sta: Unknown symbol usb_deregister
[ 2191.990630] rt3070sta: Unknown symbol usb_kill_urb
[ 2191.991172] rt3070sta: Unknown symbol usb_buffer_free
[ 2191.992658] rt3070sta: Unknown symbol usb_buffer_alloc
オフライン
以下は、ここhttp://www.ralinktech.com/support.php?s=2のRT3070USB(RT307X)のリンクからダウンロードした、RT3070_LinuxSTA_V2.3.01_20100208.tar.bz2を使ってBUFFALO WLI-UC-GNを認識するであろう(実機が無いので動作確認ができません)カーネルモジュール/lib/modules/$(uname -r)/kernel/drivers/net/wireless/rt3070sta.koのビルドとインストール方法です。
1.カーネルをビルドする環境を整える。
2.RT3070_LinuxSTA_V2.3.01_20100208.tar.bz2を展開する。
3.ディレクトリRT3070_LinuxSTA_V2.3.0.1_20100208へ入る。
4.ファイルRT2870STA.datをファイルRT3070STA.datへコピーする。
5.ディレクトリRT3070_LinuxSTA_V2.3.0.1_20100208/commonへ入る。
6.ファイルrtusb_dev_id.cの42行目に{USB_DEVICE(0x0411,0x015d)}, /* BUFFALO WLI-UC-GN */を追加する。
7.ディレクトリRT3070_LinuxSTA_V2.3.0.1_20100208/os/linuxへ入る。
8.ファイルusb_main_dev.cの35行目にMODULE_LICENSE("GPL");を追加する。
9.コマンドmake cleanが機能しないのでファイルMakefile.6のターゲットclean:部分を修正する。(make cleanを使用しないのであれば修正の必要はありません)
10.ディレクトリRT3070_LinuxSTA_V2.3.0.1_20100208でビルドとインストールをする。
以上でモジュールロード時のエラーは出ません。
Ubuntu 9.10で確認済みです。
オフライン
#39より簡単な方法です。
1.カーネルをビルドする環境を整える。
2.RT3070_LinuxSTA_V2.3.01_20100208.tar.bz2を展開する。
3.---rt3070_patch---以下の枠内をファイル名rt3070_patchでディレクトリRT3070_LinuxSTA_V2.3.0.1_20100208へ保存する。
4.ディレクトリRT3070_LinuxSTA_V2.3.0.1_20100208で、コマンドpatch -p0 < rt3070_patchを実行する。
5.ディレクトリRT3070_LinuxSTA_V2.3.0.1_20100208でビルドとインストールをする。
---rt3070_patch---
--- common/rtusb_dev_id.c 2010-03-06 14:51:54.987442793 +0900
+++ common/rtusb_dev_id.c.modify 2010-03-06 10:26:54.487105999 +0900
@@ -39,6 +39,7 @@
/* module table */
USB_DEVICE_ID rtusb_dev_id[] = {
#ifdef RT3070
+ {USB_DEVICE(0x0411,0x015d)}, /* BUFFALO WLI-UC-GN */
{USB_DEVICE(0x148F,0x3070)}, /* Ralink 3070 */
{USB_DEVICE(0x148F,0x3071)}, /* Ralink 3071 */
{USB_DEVICE(0x148F,0x3072)}, /* Ralink 3072 */
--- os/linux/usb_main_dev.c 2010-03-06 14:50:51.427443314 +0900
+++ os/linux/usb_main_dev.c.modify 2010-03-06 14:50:25.591443077 +0900
@@ -31,7 +31,8 @@
// *** If you have a solution for the bug in current version of driver, please mail to me.
// Otherwise post to forum in ralinktech's web site(www.ralinktech.com) and let all users help you. ***
MODULE_AUTHOR("Paul Lin <paul_lin@ralinktech.com>");
-MODULE_DESCRIPTION("RT2870 Wireless Lan Linux Driver");
+MODULE_DESCRIPTION("RT3070 Wireless Lan Linux Driver");
+MODULE_LICENSE("GPL");
#ifdef CONFIG_STA_SUPPORT
#ifdef MODULE_VERSION
MODULE_VERSION(STA_DRIVER_VERSION);
--- os/linux/Makefile.6 2010-03-06 14:56:40.363443152 +0900
+++ os/linux/Makefile.6.modify 2010-03-06 11:23:15.695105404 +0900
@@ -5,7 +5,7 @@
ifeq ($(RT28xx_MODE), STA)
MOD_NAME = rt$(CHIPSET)sta
DAT_PATH = /etc/Wireless/RT$(CHIPSET)STA
-DAT_FILE_NAME = RT$(CHIPSET)STA.dat
+DAT_FILE_NAME = RT2870STA.dat
endif
#endif // CONFIG_STA_SUPPORT //
@@ -165,42 +165,58 @@
clean:
rm -f ../../common/*.o
- rm -f ../../common/.*.{cmd,flags,d}
- rm -f ../../os/linux/*.{o,ko,mod.{o,c}}
- rm -f ../../os/linux/.*.{cmd,flags,d}
+ rm -f ../../common/.*.cmd
+ rm -f ../../common/.*.flags
+ rm -f ../../common/.*.d
+ rm -f ../../os/linux/*.o
+ rm -f ../../os/linux/*.ko
+ rm -f ../../os/linux/*.mod.o
+ rm -f ../../os/linux/*.mod.c
+ rm -f ../../os/linux/.*.cmd
+ rm -f ../../os/linux/.*.flags
+ rm -f ../../os/linux/.*.d
rm -fr ../../os/linux/.tmp_versions
#Must clean Module.symvers; or you will suffer symbol version not match
#when OS_ABL = YES.
rm -f ../../os/linux/Module.symvers
rm -f ../../chips/*.o
- rm -f ../../chips/.*.{cmd,flags,d}
+ rm -f ../../chips/.*.cmd
+ rm -f ../../chips/.*.flags
+ rm -f ../../chips/.*.d
ifeq ($(RT28xx_MODE),AP)
rm -f ../../ap/*.o
- rm -f ../../ap/.*.{cmd,flags,d}
+ rm -f ../../ap/.*.cmd
+ rm -f ../../ap/.*.flags
+ rm -f ../../ap/.*.d
else
ifeq ($(RT28xx_MODE),STA)
rm -f ../../sta/*.o
- rm -f ../../sta/.*.{cmd,flags,d}
+ rm -f ../../sta/.*.cmd
+ rm -f ../../sta/.*.flags
+ rm -f ../../sta/.*.d
else
ifeq ($(RT28xx_MODE),APSTA)
rm -f ../../ap/*.o
- rm -f ../../ap/.*.{cmd,flags,d}
+ rm -f ../../ap/.*.cmd
+ rm -f ../../ap/.*.flags
+ rm -f ../../ap/.*.d
rm -f ../../sta/*.o
- rm -f ../../sta/.*.{cmd,flags,d}
+ rm -f ../../sta/.*.cmd
+ rm -f ../../sta/.*.flags
+ rm -f ../../sta/.*.d
endif
endif
endif
install:
- rm -rf $(DAT_PATH)
- $(shell [ ! -f /etc/Wireless ] && mkdir /etc/Wireless)
- mkdir $(DAT_PATH)
- cp $(RT28xx_DIR)/$(DAT_FILE_NAME) $(DAT_PATH)/.
+ $(shell [ ! -d /etc/Wireless ] && mkdir /etc/Wireless)
+ $(shell [ ! -d $(DAT_PATH) ] && mkdir $(DAT_PATH))
+ cp $(RT28xx_DIR)/$(DAT_FILE_NAME) $(DAT_PATH)/RT3070STA.dat
install -d $(LINUX_SRC_MODULE)
install -m 644 -c $(addsuffix .ko,$(MOD_NAME)) $(LINUX_SRC_MODULE)
/sbin/depmod -a ${shell uname -r}
uninstall:
-# rm -rf $(DAT_PATH)
+ rm -rf $(DAT_PATH)
rm -rf $(addprefix $(LINUX_SRC_MODULE),$(addsuffix .ko,$(MOD_NAME)))
/sbin/depmod -a ${shell uname -r}
オフライン
Ubuntu9.10で
#40の方法でしたところパッチコマンドで↓となります
<code>RT3070_LinuxSTA_V2.3.0.1_20100208$ patch -p0 <rt3070_patch
can't find file to patch at input line 3
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|--- common/rtusb_dev_id.c 2010-03-06 14:51:54.987442793 +0900
|+++ common/rtusb_dev_id.c.modify 2010-03-06 10:26:54.487105999 +0900
--------------------------
File to patch:
</code>
これはskipしていいのでしょうか?
あと、ビルド、インストールにはinsmodコマンドはふくまれるのでしょうか?
できれば全部コマンドを教えていただきたいのですが・・・
オフライン
#38 の者です。#39 の手順8を実行してからインストールしてみたところ、うまく行きました。ありがとうございました。
実はまだiwconfigなどでessidなどの設定ができないという問題にぶつかっているのですが、それはまた別問題ですね。
オフライン
質問ばかりで本当申し訳ないのですが・・・前にも出ていますが、
`/etc/Wireless' を作成できません: File exists
というのは結局、なんのエラーなのでしょうか?sudo make install ででます。
あともうひとつだけ、#40 の方の方法でパッチ当てると、
RT2870STA.datをコピーしてRT3070STA.datにリネームするという作業はいりませんよね・・・?
オフライン
klushさん による投稿:
#40の方法でしたところパッチコマンドで↓となります
quoteタグを使うとスペース、タブ文字で問題があるようです。
codeタグでrt3070_patchを再投稿しますので試してください。
klushさん による投稿:
これはskipしていいのでしょうか?
いいえ。
ビルド、インストールにはinsmodコマンドはふくまれるのでしょうか?
いいえ。
insmodは必要ありません。
全部コマンドを教えていただきたいのですが・・・
ビルドは sudo make。
インストールは sudo make install。
コマンドは別々に実行してもいいのですが、sudo make && sudo make install がいいでしょう。
klushさん による投稿:
`/etc/Wireless' を作成できません: File exists
というのは結局、なんのエラーなのでしょうか?
メッセージのとおりで/etc/Wirelessが存在している。
2回目からのmake installででますが実害はありません。
原因はos/linux/Makefile.6の196行目です。
rt3070_patchで直ります。
klushさん による投稿:
#40 の方の方法でパッチ当てると、
RT2870STA.datをコピーしてRT3070STA.datにリネームするという作業はいりませんよね・・・?
はい。
rt3070_patchは#39の4から9の作業とほぼ同じです。
pn11 による投稿:
実はまだiwconfigなどでessidなどの設定ができないという問題にぶつかっているのですが、それはまた別問題ですね。
たぶん。
---rt3070_patch---
--- common/rtusb_dev_id.c 2010-03-06 14:51:54.987442793 +0900 +++ common/rtusb_dev_id.c.modify 2010-03-06 10:26:54.487105999 +0900 @@ -39,6 +39,7 @@ /* module table */ USB_DEVICE_ID rtusb_dev_id[] = { #ifdef RT3070 + {USB_DEVICE(0x0411,0x015d)}, /* BUFFALO WLI-UC-GN */ {USB_DEVICE(0x148F,0x3070)}, /* Ralink 3070 */ {USB_DEVICE(0x148F,0x3071)}, /* Ralink 3071 */ {USB_DEVICE(0x148F,0x3072)}, /* Ralink 3072 */ --- os/linux/usb_main_dev.c 2010-03-06 14:50:51.427443314 +0900 +++ os/linux/usb_main_dev.c.modify 2010-03-06 14:50:25.591443077 +0900 @@ -31,7 +31,8 @@ // *** If you have a solution for the bug in current version of driver, please mail to me. // Otherwise post to forum in ralinktech's web site(www.ralinktech.com) and let all users help you. *** MODULE_AUTHOR("Paul Lin <paul_lin@ralinktech.com>"); -MODULE_DESCRIPTION("RT2870 Wireless Lan Linux Driver"); +MODULE_DESCRIPTION("RT3070 Wireless Lan Linux Driver"); +MODULE_LICENSE("GPL"); #ifdef CONFIG_STA_SUPPORT #ifdef MODULE_VERSION MODULE_VERSION(STA_DRIVER_VERSION); --- os/linux/Makefile.6 2010-03-06 14:56:40.363443152 +0900 +++ os/linux/Makefile.6.modify 2010-03-06 11:23:15.695105404 +0900 @@ -5,7 +5,7 @@ ifeq ($(RT28xx_MODE), STA) MOD_NAME = rt$(CHIPSET)sta DAT_PATH = /etc/Wireless/RT$(CHIPSET)STA -DAT_FILE_NAME = RT$(CHIPSET)STA.dat +DAT_FILE_NAME = RT2870STA.dat endif #endif // CONFIG_STA_SUPPORT // @@ -165,42 +165,58 @@ clean: rm -f ../../common/*.o - rm -f ../../common/.*.{cmd,flags,d} - rm -f ../../os/linux/*.{o,ko,mod.{o,c}} - rm -f ../../os/linux/.*.{cmd,flags,d} + rm -f ../../common/.*.cmd + rm -f ../../common/.*.flags + rm -f ../../common/.*.d + rm -f ../../os/linux/*.o + rm -f ../../os/linux/*.ko + rm -f ../../os/linux/*.mod.o + rm -f ../../os/linux/*.mod.c + rm -f ../../os/linux/.*.cmd + rm -f ../../os/linux/.*.flags + rm -f ../../os/linux/.*.d rm -fr ../../os/linux/.tmp_versions #Must clean Module.symvers; or you will suffer symbol version not match #when OS_ABL = YES. rm -f ../../os/linux/Module.symvers rm -f ../../chips/*.o - rm -f ../../chips/.*.{cmd,flags,d} + rm -f ../../chips/.*.cmd + rm -f ../../chips/.*.flags + rm -f ../../chips/.*.d ifeq ($(RT28xx_MODE),AP) rm -f ../../ap/*.o - rm -f ../../ap/.*.{cmd,flags,d} + rm -f ../../ap/.*.cmd + rm -f ../../ap/.*.flags + rm -f ../../ap/.*.d else ifeq ($(RT28xx_MODE),STA) rm -f ../../sta/*.o - rm -f ../../sta/.*.{cmd,flags,d} + rm -f ../../sta/.*.cmd + rm -f ../../sta/.*.flags + rm -f ../../sta/.*.d else ifeq ($(RT28xx_MODE),APSTA) rm -f ../../ap/*.o - rm -f ../../ap/.*.{cmd,flags,d} + rm -f ../../ap/.*.cmd + rm -f ../../ap/.*.flags + rm -f ../../ap/.*.d rm -f ../../sta/*.o - rm -f ../../sta/.*.{cmd,flags,d} + rm -f ../../sta/.*.cmd + rm -f ../../sta/.*.flags + rm -f ../../sta/.*.d endif endif endif install: - rm -rf $(DAT_PATH) - $(shell [ ! -f /etc/Wireless ] && mkdir /etc/Wireless) - mkdir $(DAT_PATH) - cp $(RT28xx_DIR)/$(DAT_FILE_NAME) $(DAT_PATH)/. + $(shell [ ! -d /etc/Wireless ] && mkdir /etc/Wireless) + $(shell [ ! -d $(DAT_PATH) ] && mkdir $(DAT_PATH)) + cp $(RT28xx_DIR)/$(DAT_FILE_NAME) $(DAT_PATH)/RT3070STA.dat install -d $(LINUX_SRC_MODULE) install -m 644 -c $(addsuffix .ko,$(MOD_NAME)) $(LINUX_SRC_MODULE) /sbin/depmod -a ${shell uname -r} uninstall: -# rm -rf $(DAT_PATH) + rm -rf $(DAT_PATH) rm -rf $(addprefix $(LINUX_SRC_MODULE),$(addsuffix .ko,$(MOD_NAME))) /sbin/depmod -a ${shell uname -r}
オフライン
jackalopeさん による投稿:
ビルドは sudo make。
インストールは sudo make install。
コマンドは別々に実行してもいいのですが、sudo make && sudo make install がいいでしょう。
特殊な事情が無い限りビルドに sudo は必要無い,むしろ sudo するべきでは無いと思います.
Makefile 内のビルドターゲットの手順にルート権限が必要なコマンドが含まれているならば,
その作業はインストールターゲットに移すなどしての Makefile を書き直した方が良いと思います.
オフライン
カーネル開発者の一人 Novel の Greg Kroah-Hartman さんの著書「Linux Kernel in a Nutshell」の「はじめに」の Amazon によるサンプルページです.
http://www.amazon.co.jp/gp/reader/487311330X/ref=sib_rdr_next1_S00Q?ie=UTF8&p=S00Q&ns=1#reader-page
オフライン
Makefile を書き直した方が良いと思います
einundzwanzighundertsechsさんご意見ありがとうございます。
書き直しの予定も能力もありません。
オフライン
試しにビルドしたら
cp -f /home/…/sandbox/RT3070_LinuxSTA_V2.3.0.1_20100208/os/linux/rt3070sta.ko /tftpboot cp: 通常のファイル `/tftpboot' を作成できません: Permission denied
のエラーになりましたが,明らかにおかしいですね.
/tftpboot と言うディレクトリが存在することを想定してモジュールをコピーしようとしています.ルート権限でビルドするとルートディレクトリに tftpboot と言うファイル(実体はカーネルモジュール)が作られてしまいます.
似たような cp コマンドが Makefile に
ifeq ($(RT28xx_MODE),APSTA) cp -f $(RT28xx_DIR)/os/linux/rt$(CHIPSET)apsta.ko /tftpboot ifeq ($(OSABL),YES) cp -f $(RT28xx_DIR)/os/linux/rtutil$(CHIPSET)apsta.ko /tftpboot cp -f $(RT28xx_DIR)/os/linux/rtnet$(CHIPSET)apsta.ko /tftpboot endif else #cp -f $(RT28xx_DIR)/os/linux/rt$(CHIPSET)sta.ko /tftpboot <-- コメントアウト !! ifeq ($(OSABL),YES) cp -f $(RT28xx_DIR)/os/linux/rtutil$(CHIPSET)sta.ko /tftpboot cp -f $(RT28xx_DIR)/os/linux/rtnet$(CHIPSET)sta.ko /tftpboot endif endif endif
と並んでますが「通常のビルド」にはどう考えても不要でしょう.
上のコードでは此方での実験で一般ユーザ権限でビルドを通すために1行コメントアウトしてあります.
Makefile のおかしいところを見つけるためにもビルドはルート権限で実行すべきではありません.
オフライン
遅れてすいません・・・。丁寧に回答ありがとうございます。
新しいパッチを当てて見たところ↓のようになり、make&make install してみましたけどダメでした
common/rtusb_dev_id.c を覗いてみたけどもちろん意味不明でまた行き詰ってしまいました。
patch -p0 <rt3070_patch patching file common/rtusb_dev_id.c Hunk #1 FAILED at 39. 1 out of 1 hunk FAILED -- saving rejects to file common/rtusb_dev_id.c.rej patching file os/linux/usb_main_dev.c patching file os/linux/Makefile.6 Hunk #2 FAILED at 165. 1 out of 2 hunks FAILED -- saving rejects to file os/linux/Makefile.6.rej
オフライン
手元のパッチファイルでは問題ないのですが、コピーと貼り付けでのフォーラム経由では問題が起きるようです。
タグを使わなくてもダメなようなので#39の方法かrt3070_patchを参考にしてエディタで変更してください。
変更は行頭に-がある行を削除し、+がある行を追加します。
下記のカーネルソースを使った方法でも使えるようになるかもしれません。
1.作業用ディレクトリlinuxを~/以下に作る。
mkdir ~/linux
2.カーネルソースパッケージをインストールする。
sudo aptitude install linux-source
/usr/src/以下に、linux-source-2.6.31.tar.bz2ができますので、~/linux/以下へ展開する。
cd ~/linux tar jxvf /usr/src/linux-source-2.6.31.tar.bz2
3.ディレクトリlinuxにlinux-source-2.6.31ができますのでカーネルのコンフィグファイルをコピーします。
cp /boot/config-2.6.31-20-generic linux-source-2.6.31/.config
4.WLI-UC-GNが使えるように、linux-source-2.6.31/drivers/staging/rt2870/rt2870.hに{USB_DEVICE(0x0411,0x015d)}, /* BUFFALO WLI-UC-GN */を追加します。
修正箇所は150行目あたりです。
#ifdef RT30xx #define RT2870_USB_DEVICES \ { \ {USB_DEVICE(0x0411,0x015d)}, /* BUFFALO WLI-UC-GN */ \ <--ここに追加 {USB_DEVICE(0x148F,0x2770)}, /* Ralink */ \
元のrt3070sta.koがロードされないようにします。
sudo mv /lib/modules/2.6.31-20-generic/kernel/drivers/staging/rt3070/rt3070.ko /lib/modules/2.6.31-20-generic/kernel/drivers/staging/rt3070/rt3070sta.ko.bak
5.ビルドをします。
make -C /lib/modules/$(uname -r)/build M=$(pwd)/linux-source-2.6.31/drivers/staging/rt3070 modules
6.インストールをします。
sudo make -C /lib/modules/$(uname -r)/build M=$(pwd)/linux-source-2.6.31/drivers/staging/rt3070 modules_install
上記の作業が正確に実行されたか確認する方法。
modinfo rt3070sta | grep filename
の結果は、filename: /lib/modules/2.6.31-20-generic/extra/rt3070sta.ko
modinfo rt3070sta | grep 0411
の結果が、alias: usb:v0411p015Dd*dc*dsc*dp*ic*isc*ip*になります。
--以上--
オフライン