USB WiFiドングルをホットプラグ対応にして自動でWiFiにつなげるようにしたのでLANケーブルを取り外してしまったんだけど、たまーに有線LANが欲しくなるのでUSBで接続できるようにしてみた。
ピンヘッダを付けてもいいんだけど端面スルーホールに端子をつけるのは折れそうで怖いし…
USBドングルはだいぶ前に購入したUSB208B NO.:8150ってやつがあったのでとりあえずこれを動かせるようにしてみようかなと。
見るからに怪しいし、8150って書いてあるのにVID PIDは0bda:8050で中身のチップはRTL8152Bという。とりあえずチップに合わせてrtl8152のカーネルモジュールをビルドしてみる。
Ubuntu上のLuckfoxのSDKで
cd $HOME/luckfox-pico/sysdrv/source/kernel cp ./arch/arm/configs/luckfox_rv1106_linux_defconfig .config make ARCH=arm menuconfig
RTL8152/RTL8153を選択してSave
make ARCH=arm savedefconfig cp defconfig ./arch/arm/configs/luckfox_rv1106_linux_defconfig cd $HOME/luckfox-pico ./build.sh driver
そんでもって、ドライバだけをビルドする。
cd $HOME/luckfox-pico/sysdrv/out/kernel_drv_ko
の中にカーネルモジュールが出来上がるのでこの中のrtl8150.koを保存しておく。
これでUbuntu上の作業は終了。
次にLuckfox Pico Mini Bを起動して今回はWinSCPでファイルを転送することにした。
/oem/usr/ko
の中に先ほど保存したrtl8150.koを転送する。
次に
/lib/udev/rules.d
の中にある61-usbdevice.rulesを開いて下の2行を追加。
ACTION=="add", ATTR{idVendor}=="0bda", ATTR{idProduct}=="8050", RUN+="/sbin/insmod /oem/usr/ko/r8152.ko" SUBSYSTEM=="net", ACTION=="add", ENV{INTERFACE}=="eth*", RUN+="/sbin/udhcpc -i %E{INTERFACE}"
あとは
udevadm control --reload-rules
すれば完了。
自動でeth1が上がってくるためにこうしたけどなにか間違ってるかもしれない?
たまに繋がらないことがあるのはアダプタが悪いのか設定が悪いのか…
これでWiFi関連をいじくるときにしくじってログオンできないことが無くなりそうなのでとりあえずいいかな。
0 件のコメント:
コメントを投稿