お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2011-10-22 19:37:27

u_hiro
新しいメンバ
登録日: 2010-05-26

rt2870 ドライバのmake (ubuntu 11.10 Buffalo WLI-UC-G300HP)

rt2870のドライバをmake使用としているんですが、Makefileに記述すべきパスがわかりません。
2.1ではどこのパスを指定したらよろしいのでしょうか?

1.ベンダーのページからrt2870のドライバをDL

2.参考ページを踏まえて、作業を実施

 2-1 Makefileの編集作業でLinux3.0系の設定パスがわかりません。

  >ifeq ($(PLATFORM),PC)
  ># Linux 2.6
  >LINUX_SRC = /lib/modules/$(shell uname -r)/build
  ># Linux 2.4 Change to your local setting
  >#LINUX_SRC = /usr/src/linux-2.4
  >LINUX_SRC_MODULE = /lib/modules/$(shell uname -r)/kernel/drivers/net/wireless/
  >CROSS_COMPILE =
  >endif
  
■参考ページ
http://cmasa.blog101.fc2.com/blog-entry-3.html

以上

オフライン

 

#2 2011-10-23 11:33:35

jackalope
メンバ
登録日: 2009-01-01

Re: rt2870 ドライバのmake (ubuntu 11.10 Buffalo WLI-UC-G300HP)

パスを変更する必要はないです。

オフライン

 

#3 2011-10-23 21:30:26

u_hiro
新しいメンバ
登録日: 2010-05-26

Re: rt2870 ドライバのmake (ubuntu 11.10 Buffalo WLI-UC-G300HP)

次の作業は変更を実施しています。

rtusb_dev_id.c  ⇛ USB子機のIDを追加
config.mk   ⇛ 該当の2箇所を「y」に変更

しかし、makeを実行すると以下のようなエラーが出力されます。
これは、何がいけないんでしょうか。(てっきり、初投稿部分が原因かと思っていたんですが。。。)

make -C tools
make[1]: ディレクトリ `/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/tools' に入ります
gcc -g bin2h.c -o bin2h
make[1]: ディレクトリ `/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/tools' から出ます
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/tools/bin2h
cp -f os/linux/Makefile.6 /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/Makefile
make -C /lib/modules/3.0.0-12-generic-pae/build SUBDIRS=/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux modules
make: *** /lib/modules/3.0.0-12-generic-pae/build: そのようなファイルやディレクトリはありません.  中止.
make: *** [LINUX] エラー 2

オフライン

 

#4 2011-10-24 10:57:50

jackalope
メンバ
登録日: 2009-01-01

Re: rt2870 ドライバのmake (ubuntu 11.10 Buffalo WLI-UC-G300HP)

開発環境とかカーネルヘッダーパッケージはインストールされていますか?

オフライン

 

#5 2011-10-24 22:37:05

u_hiro
新しいメンバ
登録日: 2010-05-26

Re: rt2870 ドライバのmake (ubuntu 11.10 Buffalo WLI-UC-G300HP)

linux-headerを導入しましたら、少し進みました。しかし、sudo make後に以下でmakeが完了してないような状態です。(build-essentialは導入済みです。)

ご助言いたけると助かります。

make -C tools
make[1]: ディレクトリ `/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/tools' に入ります
gcc -g bin2h.c -o bin2h
make[1]: ディレクトリ `/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/tools' から出ます
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/tools/bin2h
cp -f os/linux/Makefile.6 /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/Makefile
make -C /lib/modules/3.0.0-12-generic-pae/build SUBDIRS=/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux modules
make[1]: ディレクトリ `/usr/src/linux-headers-3.0.0-12-generic-pae' に入ります
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/crypt_md5.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/crypt_sha2.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/crypt_hmac.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/crypt_aes.o
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/crypt_aes.c: 関数 ‘WscEncryptData’ 内:
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/crypt_aes.c:1522:1: 警告: フレームサイズ (1360 バイト) が 1024 バイトより大きいです [-Wframe-larger-than=]
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/crypt_aes.c: 関数 ‘WscDecryptData’ 内:
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/crypt_aes.c:1592:1: 警告: フレームサイズ (1360 バイト) が 1024 バイトより大きいです [-Wframe-larger-than=]
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/crypt_aes.c: 関数 ‘AES_GTK_KEY_WRAP’ 内:
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/crypt_aes.c:2265:1: 警告: フレームサイズ (1096 バイト) が 1024 バイトより大きいです [-Wframe-larger-than=]
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/crypt_arc4.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/mlme.o
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/mlme.c: 関数 ‘BssTableSetEntry’ 内:
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/mlme.c:5739:39: 警告: ‘Tab->BssOverlapNr’ に関する演算は定義されていません [-Wsequence-point]
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/mlme.c: 関数 ‘BssTableSortByRssi’ 内:
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/mlme.c:6100:1: 警告: フレームサイズ (1720 バイト) が 1024 バイトより大きいです [-Wframe-larger-than=]
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_wep.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/action.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_data.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/rtmp_init.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_tkip.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_aes.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_sync.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/eeprom.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_sanity.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_info.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_cfg.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_wpa.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/dfs.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/spectrum.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/rtmp_timer.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/rt_channel.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_profile.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_asic.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_cmd.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../sta/assoc.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../sta/auth.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../sta/auth_rsp.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../sta/sync.o
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../sta/sync.c: 関数 ‘PeerBeaconAtJoinAction’ 内:
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../sta/sync.c:1094:1: 警告: フレームサイズ (1296 バイト) が 1024 バイトより大きいです [-Wframe-larger-than=]
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../sta/sync.c: 関数 ‘PeerBeaconAtScanAction’ 内:
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../sta/sync.c:764:1: 警告: フレームサイズ (1260 バイト) が 1024 バイトより大きいです [-Wframe-larger-than=]
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../sta/sync.c: 関数 ‘PeerBeacon’ 内:
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../sta/sync.c:1764:1: 警告: フレームサイズ (1300 バイト) が 1024 バイトより大きいです [-Wframe-larger-than=]
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../sta/sanity.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../sta/rtmp_data.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../sta/connect.o
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../sta/connect.c: 関数 ‘CntlOidScanProc’ 内:
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../sta/connect.c:355:1: 警告: フレームサイズ (1744 バイト) が 1024 バイトより大きいです [-Wframe-larger-than=]
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../sta/wpa.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../sta/ags.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../sta/sta_cfg.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/rtmp_init_inf.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/ba_action.o
  CC [M]  /home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_mac_usb.o
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_mac_usb.c: 関数 ‘RTMPAllocUsbBulkBufStruct’ 内:
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_mac_usb.c:52:2: エラー: 関数 ‘usb_buffer_alloc’ の暗黙的な宣言です [-Werror=implicit-function-declaration]
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_mac_usb.c:52:13: 警告: 代入で整数からキャスト無しにポインタを作成しています [デフォルトで有効]
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_mac_usb.c: 関数 ‘RTMPFreeUsbBulkBufStruct’ 内:
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_mac_usb.c:78:3: エラー: 関数 ‘usb_buffer_free’ の暗黙的な宣言です [-Werror=implicit-function-declaration]
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_mac_usb.c: 関数 ‘RTMPFreeTxRxRingMemory’ 内:
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_mac_usb.c:234:9: 警告: 互換性のないポインタ型から 3 番目の ‘RTMPFreeUsbBulkBufStruct’ の引数に渡しています [デフォルトで有効]
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_mac_usb.c:62:20: 備考: expected ‘UCHAR **’ but argument is of type ‘struct __TX_BUFFER **’
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_mac_usb.c:241:9: 警告: 互換性のないポインタ型から 3 番目の ‘RTMPFreeUsbBulkBufStruct’ の引数に渡しています [デフォルトで有効]
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_mac_usb.c:62:20: 備考: expected ‘UCHAR **’ but argument is of type ‘struct __TX_BUFFER **’
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_mac_usb.c:278:11: 警告: 互換性のないポインタ型から 3 番目の ‘RTMPFreeUsbBulkBufStruct’ の引数に渡しています [デフォルトで有効]
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_mac_usb.c:62:20: 備考: expected ‘UCHAR **’ but argument is of type ‘struct __HTTX_BUFFER **’
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_mac_usb.c: 関数 ‘NICInitTransmit’ 内:
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_mac_usb.c:507:12: 警告: 互換性のないポインタ型から 3 番目の ‘RTMPFreeUsbBulkBufStruct’ の引数に渡しています [デフォルトで有効]
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_mac_usb.c:62:20: 備考: expected ‘UCHAR **’ but argument is of type ‘struct __TX_BUFFER **’
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_mac_usb.c: 関数 ‘RTMPAllocTxRxRingMemory’ 内:
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_mac_usb.c:566:13: 警告: 互換性のないポインタ型から 3 番目の ‘RTMPAllocUsbBulkBufStruct’ の引数に渡しています [デフォルトで有効]
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_mac_usb.c:34:20: 備考: expected ‘VOID **’ but argument is of type ‘struct __HTTX_BUFFER **’
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_mac_usb.c:596:12: 警告: 互換性のないポインタ型から 3 番目の ‘RTMPAllocUsbBulkBufStruct’ の引数に渡しています [デフォルトで有効]
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_mac_usb.c:34:20: 備考: expected ‘VOID **’ but argument is of type ‘struct __TX_BUFFER **’
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_mac_usb.c:610:12: 警告: 互換性のないポインタ型から 3 番目の ‘RTMPAllocUsbBulkBufStruct’ の引数に渡しています [デフォルトで有効]
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_mac_usb.c:34:20: 備考: expected ‘VOID **’ but argument is of type ‘struct __TX_BUFFER **’
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_mac_usb.c:628:13: 警告: 互換性のないポインタ型から 3 番目の ‘RTMPAllocUsbBulkBufStruct’ の引数に渡しています [デフォルトで有効]
/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_mac_usb.c:34:20: 備考: expected ‘VOID **’ but argument is of type ‘UCHAR **’
cc1: いくつかの警告はエラーとして取り扱われます

make[2]: *** [/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux/../../common/cmm_mac_usb.o] エラー 1
make[1]: *** [_module_/home/hiro/2010_0709_RT2870_Linux_STA_v2.4.0.1/os/linux] エラー 2
make[1]: ディレクトリ `/usr/src/linux-headers-3.0.0-12-generic-pae' から出ます
make: *** [LINUX] エラー 2

オフライン

 

#6 2011-10-25 00:35:09

u_hiro
新しいメンバ
登録日: 2010-05-26

Re: rt2870 ドライバのmake (ubuntu 11.10 Buffalo WLI-UC-G300HP)

恐縮です。上記、以下で解決しました。

ただ、USBのランプがつきません。lsmod | grep rt2870staの結果も以下の通りで、まだダメのようです。何が行けないのでしょうか。

rt2870sta             570803  0


>回避手段として、
>「~/rt2870/include/os/rt_linux.h」をエディットします。
>最初ら辺に
>#define usb_buffer_alloc  usb_alloc_coherent
>#define usb_buffer_free   usb_free_coherent
>の2行を追加するとmakeが通るようになりました。

オフライン

 

#7 2011-10-25 10:29:25

jackalope
メンバ
登録日: 2009-01-01

Re: rt2870 ドライバのmake (ubuntu 11.10 Buffalo WLI-UC-G300HP)

ソースが使っているカーネルに対応していないのでしょう。

オフライン

 

#8 2011-10-26 00:59:58

u_hiro
新しいメンバ
登録日: 2010-05-26

Re: rt2870 ドライバのmake (ubuntu 11.10 Buffalo WLI-UC-G300HP)

ubuntu11.04をクリーンインストールし直して(その後Update)同様の手順でやっても、無線LAN子機の青いランプは点滅しませんでした。

必要な情報があればご指摘ください。

ちなみ、 modprobe rt2870sta を実行すると以下のようになります。

WARNING: All config files need .conf: /etc/modprobe.d/rt2870sta, it will be ignored in a future release.

オフライン

 

#9 2011-10-26 10:21:52

jackalope
メンバ
登録日: 2009-01-01

Re: rt2870 ドライバのmake (ubuntu 11.10 Buffalo WLI-UC-G300HP)

WARNINGはファイル名に.confが付いていない警告ですので特に問題にはなりませんが、元々/etc/modprobe.d/rt2870staは存在しないはずですが。。。

作成したドライバですが、lsusbで子機のIDを確認してmodinfo rt2870staで子機のIDが含まれているか確認し、IDがあれば11.04のカーネルもサポート外なのでしょう。

オフライン

 

Board footer

Powered by FluxBB