0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

干货分享 | Debian系统移植USBWiFi RTL8192EU驱动并设置开机自启

飞凌嵌入式 2022-05-21 09:24 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

作者:donatello1996

来源:电子发烧友

题图:飞凌嵌入式

原文标题:

【飞凌嵌入式OKMX8MP-C 开发板试用体验】移植USBWIFI RTL8192EU驱动并设置开机自启动


我(笔者)在飞凌OKMX8MP-C开发板上移植了自行搭建的Debian系统之后,发现板卡原有的WiFi模块无法使用,在内核里面添加了支持项也没用,后面跟飞凌的技术支持工程师王工沟通,了解到需要将/lib/modules整个驱动文件夹复制并替换才可以,所以我就暂时搁置了。

c9720324-d20e-11ec-8521-dac502259ad0.png

WiFi方案可以用市面上已经非常成熟的RTL8192EU方案,一个USB WiFi模块,几十块钱就能买到,网上也可以下载各种Linux内核版本适配的源码。


下载RTL8192EU源码,打开Makefile文件:

c98ee890-d20e-11ec-8521-dac502259ad0.jpg

c9be4e82-d20e-11ec-8521-dac502259ad0.jpg


修改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

CROSS_COMPILE ?=

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,必须要有这个文件,不然的话驱动是无法正常加载的:

c9e72618-d20e-11ec-8521-dac502259ad0.jpg


加载成功之后,使用ifconfig命令可以查看正确加载的网卡设备:

c9f85780-d20e-11ec-8521-dac502259ad0.jpg


然后使用networkmanager软件可以管理连接WiFi热点:

nmcli dev wifi connect "xxx" password "xxx"


在xxx处填入热点名称和密码即可。然后是开机自启动加载WiFi驱动,这个也很简单,在/etc/下新建一个名为autorun.sh的shell脚本:

ca434cae-d20e-11ec-8521-dac502259ad0.jpg

ca6d1278-d20e-11ec-8521-dac502259ad0.jpg

#!/bin/sh

insmod /home/rtl8192eu-linux-driver-realtek-4.4.x/8192eu.ko


然后在/usr/lib/systemd/system/目录下新建autorun.service文件:

ca93e042-d20e-11ec-8521-dac502259ad0.jpg

[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表示感谢。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 驱动器
    +关注

    关注

    54

    文章

    9023

    浏览量

    153392
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    德力西电气零碳工厂开放日EU客户专场圆满举办

    携秋实之丰,冬藏之新。11月14日,德力西电气2025年零碳工厂开放日-EU客户专场在芜湖基地圆满举办。来自全国工业配电相关的客户代表齐聚芜湖,沉浸式解码“绿色制造—零碳价值”全链实景,共绘低碳未来新章。
    的头像 发表于 11-18 10:36 471次阅读

    瑞芯微 RK3588 平台 Debian 系统开发案例与使用说明

    主频调节等核心内容,还包含 TFTP/NFS 服务搭建与挂载、程序开机自启动等实操指南,为评估板 Debian 系统开发与运维提供完整技术支持。
    的头像 发表于 11-05 14:28 298次阅读
    瑞芯微 RK3588 平台 <b class='flag-5'>Debian</b> <b class='flag-5'>系统</b>开发案例与使用说明

    rk3568 debian首次开机进不去桌面

    rk3568 debian首次开机进不去桌面,等大概60s左右自动重启,重启后可以正常进入桌面,使用buildroot则没有出现此问题,有人知道是什么原因吗?*附件:log.zip
    发表于 10-24 15:30

    DC-ROMA RISC-V Laptop II 现已正式支持 Debian 13

    Debian是一款以其稳定性和对自由软件的坚定承诺而闻名的社区驱动操作系统,服务于全球的开发人员、系统管理员和高级用户。作为最具影响力的Linux发行版之一,
    的头像 发表于 09-23 17:23 1093次阅读
    DC-ROMA RISC-V Laptop II 现已正式支持 <b class='flag-5'>Debian</b> 13

    ElfBoard技术贴|如何在【RK3588】ELF 2开发板上实现开机应用

    Systemd作为Linux系统默认的初始化系统和服务管理器,凭借其并行启动、依赖管理及统一配置机制,显著提升了系统启动效率。针对开机自启动需求,Systemd的实现机制如下:1、服务
    的头像 发表于 09-08 14:11 4561次阅读
    ElfBoard技术贴|如何在【RK3588】ELF 2开发板上实现<b class='flag-5'>开机</b><b class='flag-5'>自</b><b class='flag-5'>启</b>应用

    【米尔RK3576开发板免费体验】在Debian装udhcpc 和udhcpd 服务

    : sudo systemctl start udhcpd 设置 udhcpd 服务开机 为了确保 udhcpd 在系统启动时自动启动,
    发表于 08-28 10:26

    【VisionFive 2单板计算机试用体验】6. 日历相册开机自启动设置

    daemon-reload # 设置开机 sudo systemctl enable my.service # 手动测试服务是否正常运行 sudo systemctl s
    发表于 08-14 22:04

    工业电机控制与软详解

    工控领域常见的变频驱动与软有电动起重机、泵机、压缩机、暖通空调系统、风机、传送装置,已经广泛应用比较成熟,工业机器人则需要更高效与高精度的电机控制,涉及伺服
    的头像 发表于 08-13 10:15 1109次阅读
    工业电机控制与软<b class='flag-5'>启</b>详解

    【米尔RK3576开发板免费体验】在Debian装udhcpc 和udhcpd 服务

    udhcpd 设置 udhcpd 服务开机 为了确保 udhcpd 在系统启动时自动启动,你可以使用以下命令来
    发表于 08-05 19:54

    【HZ-RK3568开发板免费体验】03 使用SDK编译Debian系统配置

    的buildroot过于精简,为了方便使用,我们需要Debian系统。 2 编译系统 2.1 安装环境准备 建议先安装必要的依赖包 sudo apt update sudo apt install -y
    发表于 07-01 12:08

    飞凌嵌入式ElfBoard ELF 1板卡-文件系统之应用开机

    在busybox构建文件系统章节我们已经大概了解,文件系统启动后执行的第一个用户进程是init进程,init进程会解析etc/inittab文件,执行inittab中的各个子进程,打开文件系统
    发表于 06-26 13:40

    Debian和Ubuntu哪个好一些?

    兼容性对比Debian和Ubuntu哪个好一些,并为您揭示如何通过RAKsmart服务器释放Linux系统的最大潜能。
    的头像 发表于 05-07 10:58 867次阅读

    如何制作适用于Visionfive 2的Debian + UEFI固件系统

    制作适用于Visionfive 2的Debian + UEFI固件系统
    发表于 03-10 07:51

    技术分享 | RK3568编译第三方驱动

    我司IAC-RK3568-Kit基于Linux4.19.232,搭载BuildRoot或Debian10操作系统。通常我们在使用外围设备模块时需要编译对应的驱动,如USBWIFI、US
    的头像 发表于 03-06 17:25 1839次阅读
    技术分享 | RK3568编译第三方<b class='flag-5'>驱动</b>

    hyper 卸载,Hyper卸载:如何彻底卸载hyper-v恢复系统设置

    卸载hyper-v恢复系统设置。    在某些情况下,用户可能需要卸载Hyper-V,例如为了安装其他虚拟化软件或释放系统资源。彻底卸载Hyper-V不仅需要禁用相关功能,还需要清理
    的头像 发表于 01-24 14:17 1.3w次阅读
    hyper 卸载,Hyper卸载:如何彻底卸载hyper-v<b class='flag-5'>并</b>恢复<b class='flag-5'>系统</b><b class='flag-5'>设置</b>