|
CAT724_WIFI †作業環境
手っ取り早くROM化作業だけ知りたい方は こちら 開発PCでのドライバビルド作業 †開発PCにてカーネルモジュールをビルドする $ tar xzfv linux-3.0.4_cat724_20140324.tgz (カーネルソースの展開) $ linux-3.0.4_cat724/ $ vi Makefile INSTALL_MOD_PATH= 行を探して1行修正。ドライバモジュールのインストール先を /home/kaihatsu/tmp に変更する INSTALL_MOD_PATH=/home/kaihatsu/tmp $ make menuconfig [*] Networking support ---> -*- Wireless ---> <M> cfg80211 - wireless configuration API <M> Common routines for IEEE802.11 drivers <M> Generic IEEE 802.11 Networking Stack (mac80211) Device Drivers ---> [*] Network device support ---> [*] Wireless LAN ---> <M> Wireless RNDIS USB support <M> Ralink driver support ---> <M> Ralink rt2500 (USB) support <M> Ralink rt2501/rt73 (USB) support <M> Ralink rt27xx/rt28xx/rt30xx (USB) support <M> Realtek RTL8192CU/RTL8188CU USB Wireless Network Adapter $ make $ make modules_install /home/kaihatsu/tmp以下にモジュール (*.koファイル)がコピーされる。 CAT724での作業 †
ここまでの作業で ifconfig -a または iwconfig にて waln0 が発見できればドライバでの認識はok。 wlan0 が表示されなければドライバでの認識ができていない。 wifi認証作業 †# apt-get install wpasupplicant Reading package lists... Done Building dependency tree Reading state information... Done The following extra packages will be installed: dbus libdbus-1-3 libnl1 libpcsclite1 Suggested packages: dbus-x11 pcscd wpagui libengine-pkcs11-openssl The following NEW packages will be installed: dbus libdbus-1-3 libnl1 libpcsclite1 wpasupplicant 0 upgraded, 5 newly installed, 0 to remove and 2 not upgraded. Need to get 955 kB of archives. After this operation, 2404 kB of additional disk space will be used. Do you want to continue [Y/n]? y WARNING: The following packages cannot be authenticated! libdbus-1-3 dbus libnl1 libpcsclite1 wpasupplicant Install these packages without verification [y/N]? y SSID, パスフレーズで conf ファイルを作る。標準出力に出るため /etc/wpa_supplicant/ 以下に保存する 使い方 # wpa_passphrase SSID パスフレーズ # wpa_passphrase SSID パスフレーズ > /etc/wpa_supplicant/my-ssid.conf /etc/network/interfaces に次の行を追加する。eth0 については同一LANへ接続すると混乱するため # でコメントアウトする auto wlan0 iface wlan0 inet dhcp wpa-conf /etc/wpa_supplicant/my-ssid.conf この辺の作業詳しくは
ROM化 †To Be Done ROM化の前に確認 # lsmod Module Size Used by aes_generic 25194 2 arc4 882 2 rt2800usb 8869 0 rt2800lib 28639 1 rt2800usb crc_ccitt 983 1 rt2800lib rt2x00usb 6576 1 rt2800usb rt2x00lib 23731 3 rt2800usb,rt2800lib,rt2x00usb mac80211 138773 3 rt2800lib,rt2x00usb,rt2x00lib cfg80211 110212 2 rt2x00lib,mac80211 # ps ax 1067 ? Ss 0:00 /sbin/wpa_supplicant -s -B -P /var/run/wpa_supplicant 1248 ? Ss 0:00 /usr/bin/dbus-daemon --system # ls /lib/firmware/ rt2561.bin rt2661.bin rt2870.bin rt3071.bin rt73.bin rt2561s.bin rt2860.bin rt3070.bin rt3090.bin /lib/modules/3.0.4/ 以下すべてと、/lib/firmware/ を ROMへコピーし、プロセスとしては /sbin/wpa_supplicant /usr/bin/dbus-daemon が動けば良さそう。 ROM化の準備 †先ほど apt-get でインストールしたパッケージは次の2つ # apt-get install wireless-tools wpasupplicant もう一度クリーンな状態(debian squeeze のbaseを展開した直後)から実行して 依存パッケージを調べると次の通り The following NEW packages will be installed: dbus libdbus-1-3 libiw30 libnl1 libpcsclite1 wireless-tools wpasupplicant 次のような展開スクリプト(extract.sh)を作成して7つのパッケージを /root/work に展開する。 # vi extract.sh (新規作成) #!/bin/sh WORKDIR=/root/work DOWNLOAD=/var/cache/apt/archives mkdir $WORKDIR for A in dbus libdbus-1-3 libiw30 libnl1 libpcsclite1 wireless-tools wpasupplicant do dpkg-deb -x $DOWNLOAD/$A*.deb $WORKDIR done # chmod +x extract.sh (実行属性を付ける) # ./extract.sh work/ に7つのパッケージが展開される。work に移動して不要なファイルを削除する # cd work # rm -rf usr/share/man/ # rm -rf usr/share/doc/ その他必要なファイルを / からコピーする # cp /etc/network/interfaces etc/network/ # cp /etc/wpa_supplicant/my-ssid.conf etc/wpa_supplicant/ # cp -a /lib/modules/ lib/ # cp -a /lib/firmware/ lib/ ディレクトリサイズを調べる # du -hs . 3.6M . tarで固める # tar czvf ../cat724_wifi_squeeze.tgz . 出来上がったものがコレ 内蔵ROMへのファイル展開 †内蔵ROMで立ち上げる bootloaderにて >> admin Password: #> setparam -d #> boot を /tmp に置く CAT724にて # rommode rw # cd / # tar xzvf /tmp/cat724_wifi_squeeze.tgz # cp /tmp/zImage_cat724wifi.bin /dev/mtdblock1 # mount -o remount,rw /var.rom/ # mkdir /var.rom/lib/dbus # sync # reboot wifi認証作業も参照の事 関連 † |