首页
›
Linux内核与驱动
›
160-内核驱动开发
›
《内核驱动移植适配:从Linux 4 x到6 x内核升级》
VIP10
本课程属于:160-内核驱动开发
Linux内核与驱动 · 共 10 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
内核驱动移植适配:从Linux 4 x到6 x内核升级
共计 30 章节
点击此处阅读海量试读课程:100+行业、1000+细分领域
01
课程导论与背景
Linux 4.x到6.x内核演进概… · 驱动API重大变更概览 · 移植适配的必要性与挑战
课程导论
背景
02
内核编译环境搭建
获取不同版本内核源码 · 配置与编译4.x与6.x内核 · 使用QEMU搭建测试环境
内核编译环境搭建
获取不同版本内核…
03
内核模块基础对比
模块加载/卸载机制变化 · module_init/module… · MODULE_LICENSE与MOD…
内核模块基础对比
模块加载
04
字符设备驱动核心API变迁
register_chrdev_re… · cdev_init/cdev_add… · file_operations结构体…
API
字符设备驱动核心
05
设备号管理
dev_t类型变化 · MAJOR/MINOR宏的兼容性 · 动态与静态设备号分配策略
设备号管理
dev
06
内存分配API迁移
kmalloc/kfree与GFP标… · vmalloc/vfree接口调整 · 内存屏障与DMA一致性API
API
内存分配
07
并发与同步机制
自旋锁(spinlock)与互斥锁(… · 读写锁(rwlock)与RCU机制演… · 原子操作与完成量(completio…
并发
同步机制
08
等待队列与调度
wait_event_interru… · schedule_timeout与m… · 工作队列(workqueue)从旧A…
等待队列
调度
09
定时器与时间管理
timer_list结构体变化 · setup_timer到timer_… · 高精度定时器(HRTIMER)API…
定时器
时间管理
10
中断处理
request_irq/free_i… · 中断线程化(threaded IRQ… · 中断共享与dev_id参数处理
断处理
request
11
IO内存与端口访问
ioremap/iounmap接口变… · readl/writel与iorea… · pci_iomap与devm_ior…
IO
内存
12
PCI/PCIe驱动移植
pci_register_drive… · pci_enable_device与… · MSI/MSI-X中断注册API迁移
PCI/PCIe
驱动移植
13
平台驱动(Platform Driver)
platform_driver结构体… · of_match_table与设备树… · devm_*系列资源管理API
Platform
Driver
14
设备树(DT)支持
设备树API从4.x到6.x的演进 · of_*函数族变化 · 设备树属性读取与解析最佳实践
DT
设备树
15
DMA引擎与API
dma_alloc_coherent… · DMA映射(dma_map_sing… · DMA引擎框架更新
DMA
API
16
时钟框架(CLK)与电源管理
clk_get/clk_enable… · 运行时电源管理(PM Runtime… · 系统休眠与唤醒回调
CLK
时钟框架
17
GPIO子系统
gpio_request/gpio_… · gpiod_*函数族使用 · legacy GPIO接口移除
GPIO
子系统
18
I2C子系统
i2c_driver结构体变化 · i2c_transfer与smbus… · 设备树中I2C设备节点解析
I2C
子系统
19
SPI子系统
spi_driver结构体变化 · spi_transfer与spi_m… · SPI控制器驱动适配要点
SPI
子系统
20
输入子系统
input_dev注册与事件上报AP… · input_set_capabili… · 多点触控协议迁移
输入子系统
input
21
帧缓冲(Framebuffer)与DRM
fb_info结构体变化 · drm_framebuffer与dr… · 从fbdev到DRM/KMS迁移
Framebuffer
DRM
22
网络设备驱动
net_device_ops结构体变… · NAPI接口调整 · ethtool_ops与硬件卸载AP…
网络设备驱动
net
23
块设备驱动
gendisk与request_qu… · blk-mq框架引入 · bio结构体与块I/O路径
块设备驱动
gendisk
24
USB设备驱动
usb_driver结构体变化 · usb_control_msg/us… · USB3.0与xHCI控制器适配
USB
设备驱动
25
文件系统与VFS
file_operations与in… · address_space_oper… · seq_file与procfs/sy…
VFS
文件系统
26
调试与日志
printk与dev_dbg/dev… · 动态调试(dynamic_debug… · ftrace与tracepoints
调试
日志
27
内核错误处理与BUG
WARN_ON/BUG_ON宏变化 · 内核Oops分析与panic处理 · kdump与crash工具使用
BUG
内核错误处理
28
内核安全与权限
capability与LSM接口变化 · SELinux与AppArmor对驱… · 用户空间访问权限检查
内核安全
权限
29
自动化移植工具与脚本
使用coccinelle进行API迁… · sed/awk脚本批量替换 · 内核源码中的Documentatio…
自动化移植工具
脚本
30
综合实战案例
将一个4.x内核的字符设备驱动完整移… · 常见问题排查与解决方案 · 移植后性能验证与回归测试
综合实战案例
将一个4.x内核…
所属VIP或分类
同VIP:Linux设备树开发与pinctrl驱动适配
同VIP:SPI内核驱动开发:消息队列与DMA传输整合
同VIP:USB内核驱动开发:urb与端点通信机制解析