作者:donatello1996
來源:電子發燒友
題圖:飛凌嵌入式
原文標題:
【飛凌嵌入式OKMX8MP-C 開發板試用體驗】移植USBWIFI RTL8192EU驅動并設置開機自啟動
我(筆者)在飛凌OKMX8MP-C開發板上移植了自行搭建的Debian系統之后,發現板卡原有的WiFi模塊無法使用,在內核里面添加了支持項也沒用,后面跟飛凌的技術支持工程師王工溝通,了解到需要將/lib/modules整個驅動文件夾復制并替換才可以,所以我就暫時擱置了。
WiFi方案可以用市面上已經非常成熟的RTL8192EU方案,一個USB WiFi模塊,幾十塊錢就能買到,網上也可以下載各種Linux內核版本適配的源碼。
下載RTL8192EU源碼,打開Makefile文件:
修改I386_PC選項的架構和內核源碼位置:
ifeq ($(CONFIG_PLATFORM_I386_PC), y)
EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 - DRTW_USE_CFG80211_STA_EVENT
SUBARCH := $(shell uname -m | sed -e s/i.86/i386/)
ARCH ?=ARM64
KVER:= $(shell uname -r)
KSRC := /home/OK8MP-linux-kernel/
MODDESTDIR := /home/OK8MP-linux- kernel/drivers/net/wireless/
INSTALL_PREFIX :=
STAGINGMODDIR := /home/OK8MP-linux- kernel/drivers/staging
endif
編譯生成8192eu.ko文件,直接insmod即可。但是只有這個ko文件是不夠的,因為這個ko驅動還會調用/lib/firmware/rtlwifi下的固件文件,名為rtl8192eu_nic.bin,必須要有這個文件,不然的話驅動是無法正常加載的:
加載成功之后,使用ifconfig命令可以查看正確加載的網卡設備:
然后使用networkmanager軟件可以管理連接WiFi熱點:
nmcli dev wifi connect "xxx" password "xxx"
在xxx處填入熱點名稱和密碼即可。然后是開機自啟動加載WiFi驅動,這個也很簡單,在/etc/下新建一個名為autorun.sh的shell腳本:
#!/bin/sh
insmod /home/rtl8192eu-linux-driver-realtek-4.4.x/8192eu.ko
然后在/usr/lib/systemd/system/目錄下新建autorun.service文件:
[Unit]
Description=autorun
After=basic.service X.service thermal-zone-init.service
[Service]
ExecStart=/etc/autorun.sh
[Install]
WantedBy=multi-user.target
輸入命令:
systemctl -f enable /lib/systemd/system/autorun.service
chmod 777 /etc/autorun.sh
這樣就能在開機的時候自動運行insmod命令。
感謝由發燒友[donatello1996]提供的這篇OKMX8MP-C 開發板試用體驗文章,donatello1996,嵌入式軟件工程師,電子發燒友論壇技術大牛,同時也是飛凌鐵粉,曾基于多款飛凌板卡產出優質評測文章及干貨分享,在此對donatello1996表示感謝。
-
驅動器
+關注
關注
53文章
8255瀏覽量
146472
發布評論請先 登錄
相關推薦
評論