固件和内核驱动

驱动折腾小记

很多人更新了内核,但是自己的外设依然没有驱动,是因为仅仅更新内核是不够的,还需要更新固件

什么是固件?

在许多设备能够与操作系统通信之前,它们必须首先使用设备制造商提供的“固件”进行初始化。这个固件不是Linux的一部分,也不是由内核“执行”的,它只是在驱动程序初始化阶段被上传到设备。

虽然有些固件映像是由自由软件构建的,但其中很大一部分只能以二进制形式重新分发。为了避免任何许可混淆,固件从主Linux树移动到一个名为 linux-firmware 的单独存储库中。

在没有任何非自由固件二进制文件的情况下使用Linux是可能的,但代价是很多硬件无法操作使用。此外,也有很多设备预装了闭源(也称不自由)的固件。如果你的目标是运行一个100%免费的自由设备,你通常需要做的不仅仅是避免只使用二进制的固件。

如何下载和安装固件?

检测固件

那怎样知道自己缺少哪些固件呢?可以在终端里执行下面命令。

sudo update-initramfs -u

如果缺少固件命令会输出“W: Possible missing firmware /lib/firmware/xxx/xxx.bin for module XXX

下载固件

国内下载地址:https://mirrors.tuna.tsinghua.edu.cn/kernel/firmware/

官方地址:https://mirrors.edge.kernel.org/pub/linux/kernel/firmware/

固件地址是按照 日期排序的,尽量选择一个最新的。

替换固件

系统的固件地址在**/lib/firmware/**,将下载的固件解压,然后把要用的驱动XXX的固件.bin复制过去就可以了。

也可以直接将全部的固件直接复制到 /lib/firmware/ 下面替换就行了,由于是根目录下,需要管理员权限。

更新完成后执行, 然后重启电脑。

sudo update-initramfs -u

内核收集

内核里面包含着开源驱动,对,只有开源驱动,像是英伟达的N卡驱动是闭源驱动,是不可能包含到内核中的。如果你所用的设备的驱动没有开源,并且没有提供相应的闭源驱动,那是无法驱动的,例如 汇顶科技的很多指纹识别设备(不是全部),是无解的。

一般去两个作者主页翻一下,基本能找到比较新的内核,下载下来是deb包,双击安装即可。

作者论坛主页🔗
fslonghttps://bbs.deepin.org/user/120814
青稚°https://bbs.deepin.org/user/292516

高质量内核相关文章

分享一下论坛高质量文章:

  1. 关于源内可用内核的查看、安装与本地内核的卸载:https://bbs.deepin.org/post/254997

  2. 给坛里的朋友介绍一种安装最新内核的方法:https://bbs.deepin.org/post/172006

  3. 写给Surface用户的Linux入坑指南:https://bbs.deepin.org/post/195290

  4. [新手教程] deepin20.5+Linux内核5.18稳定版:https://bbs.deepin.org/post/237619

  5. reltek8188GU无线网卡安装:https://bbs.deepin.org/post/211026

  6. deepin 平台电源策略 :https://bbs.deepin.org/post/260831

  7. [经验分享] 编译打包deb内核:https://bbs.deepin.org/post/256149

  8. 编译内核的教程,手动编译 kernel 的命令行教程 :https://bbs.deepin.org/post/247599

  9. 编译deepin主线内核:https://bbs.deepin.org/post/262451

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/719085.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

实施工程师常遇技术问题

文章目录 一、对与一个项目,你认为项目的里程碑有哪几个?二、Tomcat服务器与Resin服务器的区别2.1、开发商和许可证:2.2、部署和配置:2.3、功能和扩展性:2.4、社区和生态系统: 三、版本控制工具SVN与Git的区…

升级openssl

openssl版本一键升级(需要修改tar包名称和路径) --- - name: Install OpenSSLhosts: openssltasks:- name: Copy OpenSSL tar.gz to /tmpcopy:src: /root/shl/soft/openssl-1.1.1v.tar.gzdest: /tmp # remote_src: yes # 如果源文件在控制主机上…

吴恩达《机器学习》学习笔记

本笔记资料来源于 http://www.ai-start.com/ml2014/,该笔记来自于https://blog.csdn.net/dadapongi6/article/details/105668394,看了忘,忘了看,再看一遍。 时间统计:2024.2.29 5个番茄钟,从week1开始&…

【PyTorch][chapter 19][李宏毅深度学习]【无监督学习][ GAN]【理论】

前言: 生成对抗网络(Generative Adversarial Nets,GAN)是一种基于对抗学习的深度生成模型。 2014年,蒙特利尔博士 lan Goodfellow 发表了论文《Generative Adaversarial Networks》, 一经提出便成为了学术…

Python CGI编程

文章目录 什么是CGICGI架构Web服务器支持及配置CGI程序示例CGI环境变量GET和POST方法GET方法POST方法区别注意事项 使用POST方法传递数据1. 创建HTML表单2. 编写CGI脚本3. 配置服务器4. 提交表单5. 服务器处理请求注意事项 通过CGI程序传递checkbox数据创建HTML表单编写CGI脚本…

二维码门楼牌管理系统技术服务:门牌编设规则详解

文章目录 前言一、门牌编设规则解读二、区间编号与分段编号策略三、多出入口建筑物的门牌编设 前言 随着城市化的快速推进,门楼牌管理成为城市管理中不可或缺的一环。二维码门楼牌管理系统的引入,不仅提升了管理的效率,也为市民提供了更为便…

波奇学Liunx:信号的产生,保存,处理

信号的产生,信号的保存,信号的处理 在操作系统中进程接受到信号会保存,产生 进程必须识别和能够处理信号,处理信号是进程的内置功能 进程收到信号时不一定会立即执行,所以进程必然有一套识别,保存&#xff…

Leetcode 3066. Minimum Operations to Exceed Threshold Value II

Leetcode 3066. Minimum Operations to Exceed Threshold Value II 1. 解题思路2. 代码实现 题目链接:Leetcode 3066. Minimum Operations to Exceed Threshold Value II 1. 解题思路 这一题的话只需要排序之后按照题目条件逐一进行执行直至满足条件即可。 唯一…

Pytorch中,dim形象化的确切意义是什么?

在Pytorch中涉及张量的操作都会涉及“dim”的设置,虽然也理解个大差不差,但是偶尔还是有点犯迷糊,究其原因还是没有形象化的理解。 首先,张量的维度排序是有固定顺序的,0,1,2,.....…

(1)预处理

我们需要的文件结构如上 main.cpp add.h add.cpp add.h 这里使用riscv的工具链编译为.i文件,需要使用-E,就是只进行预处理,我们可以得到两个.i文件即main.i和add.i main.i 这里看到main.i里头文件全部替换,然后多了三万多行 所以…

Leetcode 3068. Find the Maximum Sum of Node Values

Leetcode 3068. Find the Maximum Sum of Node Values 1. 解题思路2. 代码实现 题目链接:3068. Find the Maximum Sum of Node Values 1. 解题思路 这一题虽然标记为一道hard的题目,但其实就是一个脑筋急转弯的题目。 我们只需要想明白一点即可&…

4G/5G执法记录仪、智能安全帽走国标GB28181接入海康、宇视等大平台,也可走平台与平台对接,以下级平台级联到上级大平台

AIoT万物智联,智能安全帽生产厂家,执法记录仪生产厂家,智能安全帽、智能头盔、头盔记录仪、执法记录仪、智能视频分析/边缘计算AI盒子、车载DVR/NVR、布控球、智能眼镜、智能手电、无人机4G补传系统等统一接入大型融合通信可视指挥调度平台VM…

Vue3和ElementPlus封装table组件

最近学习vue3.2并自己在写一个项目,然后发现好几个页面都是列表页,重复写table和column也是觉得累,学习的项目列表页不算多,要是公司项目就不一样了,所以就想着自己封装一个table组件,免去大量重复工作和co…

滑动窗口

题目 思路 对于一个数组区间的最值,可以开辟一个队列记录(当然这里不能叫队列只是和队列相似,习惯性叫法)。 每个区间的最值等于队首元素。扫描数组时,如果该元素大于队尾元素(取最大值时)将该队尾元素出队…

Effective C++ 学习笔记 条款07 为多态基类声明virtual析构函数

有许多种做法可以记录时间,因此,设计一个TimeKeeper base class和一些derived classes作为不同的计时方法很合理: class TimeKeeper { public:TimeKeeper();~TimeKeeper();// ... };class AtomicClock : public TimeKeeper { /* ... */ }; …

DM数据库学习之路(二十)DM8基于主备集群技术的两地三中心集群部署及测试(全网最详细)

DM两地三中心介绍 摘要 金融行业对数据的可靠性和连续性有着极其严格的要求,任何数据丢失或服务中断都可能导致严重的经济损失。针对这一问题,基于达梦主备集群技术的两地三中心解决方案能够切实有效解决业务数据的可靠性和连续性需求。该方案通过构建两个数据中心和一个灾备…

MyBatis标签获取数组或者集合长度的方法

1、判断列表长度&#xff1a; <if test"list ! null and list.size() > 0">... </if> 可结合in条件使用&#xff1a;SELECT * FROM users<where><if test"idList ! null and idList.size() > 0">id IN<foreach item"…

leetcode热题100学习计划-链表-相交链表

思路 两条链表长短不一&#xff0c;找公共交点必须先对齐。记录两个链表各自长度&#xff0c;长的向短的看齐&#xff0c;长的先走多出来的那么一截&#xff0c;之后两者一起走&#xff0c;直到相遇或抵达末尾 代码 /*** Definition for singly-linked list.* public class …

解密Lawnchair:打造个性化极致的Android桌面体验

解密Lawnchair&#xff1a;打造个性化极致的Android桌面体验 1. 简介 Lawnchair是一款知名的Android桌面定制工具&#xff0c;旨在为用户提供个性化极致的桌面体验。作为一个开源项目&#xff0c;Lawnchair融合了简洁、灵活和强大的特点&#xff0c;让用户能够自由定制其Andro…

Python | Conda安装包报错:PackagesNotFoundError

Conda在下载安装包时报错&#xff1a; PackagesNotFoundError: The following packages are not available from current channels:- XXXXXX&#xff08;包名&#xff09;有如下两种解决方法&#xff1a; 方法一&#xff1a;将conda-forge添加到搜索路径上 在命令行运行下方指令…