当前位置: 首页 > wzjs >正文

昌平网站建设会计培训班推荐

昌平网站建设,会计培训班推荐,自学做网站可以吗,企业网站搭建基础 硬件基础:随处可以买到的TP-WN722N V1网卡软件基础:linux-source-5.3.0 内核源码源码路径:drivers/net/wireless/ath/ath9k/常见wifi接口协议:包括PCIe、USB、SDIO等。 安装内核源码包 Ubuntu 提供了内核源码包&#xff0…

基础

  • 硬件基础:随处可以买到的TP-WN722N V1网卡
  • 软件基础:linux-source-5.3.0 内核源码
  • 源码路径:drivers/net/wireless/ath/ath9k/
  • 常见wifi接口协议:包括PCIe、USB、SDIO等。

安装内核源码包

Ubuntu 提供了内核源码包,可以通过以下命令安装,源码包会下载到 /usr/src/ 目录,解压后即可查看驱动源码

sudo apt update
sudo apt install linux-source

或者下载固定内核版本

https://kernel.ubuntu.com/mainline/

可以使用git clone来获取:
在这里插入图片描述
直接复制粘贴:

git clone git://git.launchpad.net/~ubuntu-kernel-test/ubuntu/+source/linux/+git/mainline-crack v5.4.5

注意

最好先查看自己的系统支持什么版本:

apt-cache search linux-source

在这里插入图片描述
然后直接安装:

sudo apt install linux-source-5.3.0

源码解压:

sudo tar -xvf linux-source-5.3.0.tar.bz2

编译

make -C /lib/modules/$(uname -r)/build M=$(pwd) modules

在这里插入图片描述

  • 原因: ath9k_ops 结构体中的函数指针类型与 ath9k_cancel_remain_on_channel 和
    ath9k_mgd_prepare_tx 函数的定义不匹配
  • 背景: 内核 API 在不同版本中可能发生变化,导致函数签名不兼容。你使用的内核头文件版本与源码版本不一致
  • 修改方案: ath9k_ops.cancel_remain_on_channel =
    ath9k_cancel_remain_on_channel; ath9k_ops.mgd_prepare_tx =
    ath9k_mgd_prepare_tx;
    修改为: ath9k_ops.cancel_remain_on_channel = (void
    *)ath9k_cancel_remain_on_channel; ath9k_ops.mgd_prepare_tx = (void *)ath9k_mgd_prepare_tx;

等的报错

编译报错,需要耐心纠错,直到编译成功
在这里插入图片描述
编译问题解决后,替换库里的驱动

替换驱动

  1. cd /lib/modules/$(uname -r)/kernel/drivers/net/wireless/ath/ath9k/
    在这里插入图片描述

  2. sudo cp ath9k_htc.ko ath9k_htc.ko.bak (原始驱动备份)

  3. sudo cp drivers/net/wireless/ath/ath9k/ath9k_htc.ko
    /lib/modules/$(uname -r)/kernel/drivers/net/wireless/ath/ath9k/

卸载原有驱动

在这里插入图片描述
在这里插入图片描述

驱动加载

在这里插入图片描述
问题出现
内核为如下打印:
在这里插入图片描述

分析

  • 因为拉取代码和修改编译时一个庞大的工程,所以我并没有拉取对应linux内核版本的驱动源码
    所以我换了三个ubuntu和拉取了五套源码,最终换到了与内核相同版本的源码(这只是其中两份):
    在这里插入图片描述

  • 解决编译报错后,结果都是这个(因为我尝试了相同内核版本的源码):
    在这里插入图片描述

  • 所以定位到应该不是代码问题
    现在注意到这个:
    在这里插入图片描述
    并且在查看模块信息的时候,也相同类似:
    在这里插入图片描述
    所以在驱动硬件加载时,应该将其所依赖的模块一并卸载才可以接口代码匹配:
    在这里插入图片描述

  • 再次驱动加载:
    在这里插入图片描述

报错解决

ath9k_htc驱动可能依赖于ath9k_common和ath9k_hw提供的公共代码或硬件抽象层。如果这些依赖模块没有正确加载或版本不兼容,就会导致主驱动无法正常工作,甚至出现参数无效的错误

内核打印
在这里插入图片描述
一定程度说明驱动加载后的功能没问题,但是还是要做功能性验证

功能性验证

  • 网口已正常启动
    在这里插入图片描述
  • 连接wifi:
    在这里插入图片描述

成功连接并接入网络

编译验证

  • 源码修改
    在这里插入图片描述
  • 编译加载
    在这里插入图片描述
  • 内核日志:
    在这里插入图片描述

验证成功

http://www.dtcms.com/wzjs/488216.html

相关文章:

  • 建设部网站官网aso安卓优化
  • 做网站的视频的软件 cs老铁外链工具
  • 金融网站如何做设计自助友链平台
  • 英文网站策划杭州产品推广服务公司
  • 哪个网站做自行车评测的百度关键词搜索排名多少钱
  • 网站建设图片尺寸太原网站建设
  • 中国住房建设部网站引擎搜索网站
  • php实现网站tag标签域名买卖交易平台
  • 如何设置网站icon最好的免费信息发布平台
  • 手机上什么网站优秀的营销策划案例
  • 网站建设的图片尺寸应该是像素整站排名
  • 做电商网站有什语言好西安发布最新通知
  • 如何将网站指向404宁波网站推广营销
  • 甘肃住房和城乡建设厅网站网站服务器搭建与管理
  • 东营网站建设seo营销 推广
  • 网站建设 经济效益怎么做自媒体
  • 建设网站步骤是站长之家关键词挖掘
  • 怎么做网站平台教程域名停靠网页app推广大全
  • 登陆建设银行官方网站刷推广链接的网站
  • 广州安全教育平台登录入口账号安卓优化大师手机版下载
  • 可以自己做网站吗商城小程序
  • 怎样自己搭建网站合肥网站快速排名提升
  • 手机网站建设和电商最好卖的十大产品
  • 做单位网站百度移动端排名
  • 有什么网站招聘做危险高薪工作的搜索关键词是什么意思
  • 珠海网站公司哪家好青岛关键词排名哪家好
  • 常用的b2b网站有哪些创建网站需要什么条件
  • 陕西省建设厅人力资源网站软文代发平台
  • 网站工信部超链接怎么做营销推广公司
  • wordpress装饰seo怎么做优化