首页
›
Linux内核与驱动
›
029-Linux PCIe设备驱动
›
《Linux PCIe驱动开发:DMA引擎使用与数据传输》
VIP10
本课程属于:029-Linux PCIe设备驱动
Linux内核与驱动 · 共 10 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
Linux PCIe驱动开发:DMA引擎使用与数据传输
共计 30 章节
点击此处阅读海量试读课程:100+行业、1000+细分领域
01
PCIe基础概念
PCIe总线拓扑结构 · PCIe配置空间 · BAR空间
PCIe
基础概念
02
Linux PCI子系统框架
pci_driver结构体 · pci_device_id匹配表 · probe/remove回调机制
Linux
PCI
03
PCIe设备枚举与资源获取
pci_get_device · pci_enable_device · pci_request_region…
PCIe
设备枚举
04
PCIe配置空间访问
pci_read_config_*/… · Capability链表遍历
PCIe
配置空间访问
05
中断机制基础
INTx中断 · MSI/MSI-X中断 · pci_alloc_irq_vect…
断机制基础
INTx
06
DMA引擎概述
DMA控制器角色 · DMA传输类型(内存到内存 · 设备到内存)
DMA
引擎概述
07
Linux DMA Engine子系统
dma_device结构体 · dma_chan通道 · dma_cap_mask_t能力掩码
Linux
DMA
08
DMA通道申请与释放
dma_request_channe… · dma_release_channe… · 过滤函数filter_fn
DMA
通道申请
09
DMA描述符与传输准备
dma_async_tx_descr… · tx_submit回调 · dmaengine_prep_*系列…
DMA
描述符
10
DMA传输提交与完成回调
dmaengine_submit · dma_async_issue_pe… · 异步完成通知机制
DMA
传输提交
11
DMA传输状态查询
dmaengine_tx_statu… · dma_cookie_t · DMA_COMPLETE/DMA_I…
DMA
传输状态查询
12
DMA Scatter-Gather(SG)传输
sg_table结构体 · dmaengine_prep_sla… · 分散聚合原理
DMA
Scatter-Gath…
13
DMA Cyclic模式
dmaengine_prep_dma… · 音频/视频流场景 · 循环缓冲区管理
DMA
Cyclic
14
DMA Interleaved模式
dmaengine_prep_int… · 多通道交错传输 · dma_interleaved_te…
DMA
Interleaved
15
DMA引擎与PCIe设备绑定
dma_slave_config结构… · 设备树或ACPI获取DMA通道 · 方向配置
DMA
PCIe
16
PCIe DMA控制器硬件设计
DMA引擎内部寄存器 · 描述符环(Descriptor Ri… · 门铃寄存器(Doorbell)
PCIe
DMA
17
描述符环管理
环形缓冲区实现 · 生产者/消费者模型 · 描述符提交与硬件获取
描述符环管理
环形缓冲区实现
18
PCIe TLP与DMA数据传输
Memory Read TLP · Memory Write TLP · Completion TLP
PCIe
TLP
19
DMA一致性内存分配
dma_alloc_coherent · dma_pool · 一致性映射与流式映射区别
DMA
一致性内存分配
20
DMA流式映射
dma_map_single/dma… · dma_map_sg/dma_unm… · dma_sync_single_fo…
DMA
流式映射
21
DMA屏障与顺序
dma_wmb/dma_rmb · writeq_relaxed · PCIe ordering模型
DMA
屏障
22
中断与DMA完成处理
中断服务例程(ISR)中检查DMA状… · Tasklet/Workqueue延… · NAPI-like轮询
DMA
完成处理
23
DMA错误处理
超时检测 · 描述符错误 · 总线错误
DMA
错误处理
24
多队列DMA
多个DMA通道并行 · 队列亲和性 · CPU绑定与IRQ affinity
DMA
多队列
25
DMA性能调优
增大描述符环深度 · 调整中断合并(Interrupt C… · 使用写结合(Write Combin…
DMA
性能调优
26
用户态DMA访问
UIO框架 · VFIO框架 · vmafault映射DMA缓冲区
DMA
用户态
27
DMA与IOMMU/SMMU
IOMMU工作原理 · iommu_map/unmap · SVA(Shared Virtual…
DMA
IOMMU/SMMU
28
PCIe ATS与PRI
Address Translatio… · Page Request Inter… · SR-IOV与DMA隔离
PCIe
ATS
29
实战案例1
基于Xilinx QDMA的PCIe… · 描述符环初始化 · 数据传输测试
实战案例1
Xilinx
30
实战案例2
基于Intel DSA(Data S… · 工作队列提交 · 性能对比
实战案例2
Intel
所属VIP或分类
同VIP:Linux-PCIe-DMA驱动开发与传输故障排查
同VIP:Linux-PCIe设备驱动:DMA传输与环形缓冲区设计
同VIP:Linux-PCIe设备驱动:从BAR映射到数据传输全流程