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

    文章

    9116

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Debian image69 工作,但下次开机时丢失时间日期设置,怎么解决?

    Vulkan 示例从源代码构建成功。 我知道 debian image69 是基于 debian 12 书虫,预计将在下一个版本发布。 这是工程发布。这意味着不稳定的释放。 但是,下次开机启动时,时间日期
    发表于 03-25 07:45

    在图像上,Debian 无法为 wifi 构建驱动程序,怎么解决?

    在图像上,Debian 无法为 wifi 构建驱动程序。缺少一些内核包。是否可以发布它,我们可以通过 apt 安装它?所以我们对系统无能为力 无论我愿意什么,都是不可能的。这让我很生气。 make
    发表于 03-25 06:00

    请问如何在 Debian设置 GUI?

    我已经设置了我的 VisionFive 2,更新了固件和完整的 Debian Image 69。但是,HDMI 输出只是黑屏。如何设置 GUI?
    发表于 03-24 06:35

    请问从哪里获得 Debian 镜像?

    我昨天交付了 VisionFive 2,所以今天我想开始设置它。 在论坛中,我读到这里有 Debian 镜像: https://debian.starfivetech.com 此页面列出了百度云盘
    发表于 03-23 08:16

    揭秘!三步让Debian系统编译速度起飞,告别重复下载资源的烦恼

    Debian 系统编译的过程中,重复构建系统和动态下载相关资源往往会消耗大量时间,拖慢开发和部署进度。今天,我们就通过分析一组代码修改,来探索如何优化 Debian
    的头像 发表于 02-01 16:43 1591次阅读

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

    主频调节等核心内容,还包含 TFTP/NFS 服务搭建与挂载、程序开机自启动等实操指南,为评估板 Debian 系统开发与运维提供完整技术支持。
    的头像 发表于 11-05 14:28 857次阅读
    瑞芯微 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 1511次阅读
    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 5077次阅读
    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

    【米尔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 1413次阅读