首页
›
Linux内核与驱动
›
070-PCIe驱动实战进阶
›
《PCIe高位DMA寻址配置与内存映射调试》
VIP10
本课程属于:070-PCIe驱动实战进阶
Linux内核与驱动 · 共 10 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
PCIe高位DMA寻址配置与内存映射调试
共计 30 章节
点击此处阅读海量试读课程:100+行业、1000+细分领域
01
DMA寻址基础
物理地址空间 · 总线地址 · DMA引擎寻址能力概述
DMA
寻址基础
02
32位寻址的局限性
ZONE_DMA · 内存碎片化 · 大容量内存下的瓶颈
32位寻址的局限…
ZONE
03
高位寻址设备定义
64位DMA · 双周期地址周期(DAC) · Address Extension
高位寻址设备定义
DMA
04
pci_dma_set_mask函数原型
参数解析 · 返回值含义 · 内核版本差异
pci
dma
05
dma_set_mask_and_coherent
统一设置流式映射与一致性映射掩码
dma
set
06
dma_set_coherent_mask
一致性DMA内存的地址限制
dma
set
07
dma_set_mask_and_coherent vs 分别调用
最佳实践与性能考量
dma
set
08
设备树与ACPI中的DMA寻址信息
dma-ranges · dma-coherent属性
ACPI
DMA
09
pci_set_dma_mask内部实现
dma_ops · iommu介入 · swiotlb回退
pci
set
10
dma_ops结构体
map_page · unmap_page · alloc
dma
ops
11
IOMMU对高位寻址的影响
IOVA空间 · 页表映射 · SMMU/Intel VT-d
IOMMU
对高位寻址的影响
12
swiotlb与高位寻址
bounce buffer机制 · 性能开销 · 配置参数
swiotlb
高位寻址
13
pci_alloc_consistent与dma_alloc_coherent
一致性内存分配与掩码关系
pci
alloc
14
dma_map_single与dma_map_page
流式映射的地址约束
dma
map
15
dma_unmap_single与dma_unmap_page
正确释放映射资源
dma
unmap
16
dma_sync_single_for_cpu/device
缓存一致性维护与高位地址
dma
sync
17
dma_alloc_attrs与dma_attr
高级分配选项(如DMA_ATTR_N…
dma
alloc
18
pci_dma_supported函数
快速检查设备是否支持给定掩码
pci
dma
19
dma_get_required_mask
查询平台对设备DMA地址的实际限制
dma
get
20
dma_max_pfn与dma_direct_max_pfn
物理内存上限与DMA区域
dma
max
21
ZONE_DMA32与ZONE_DMA
内核内存区域划分对高位寻址的影响
ZONE
DMA32
22
pci_dma_mapping_error
检查映射是否失败的正确方式
pci
dma
23
dma_pool与dma_pool_create
固定大小DMA缓冲区池化管理
dma
pool
24
dma_debug与dma_api_debug
调试DMA API使用错误的工具
dma
debug
25
pci_dma_burst_advice
获取设备建议的突发传输大小
pci
dma
26
多队列设备与per-queue DMA掩码
NVMe · 网卡等复杂场景
per-queue
DMA
27
pci_enable_pcie_cap与DMA寻址
PCIe扩展能力对地址宽度的影响
pci
enable
28
pci_set_mwi与DMA性能
内存写并无效指令与高位寻址协同
pci
set
29
pci_dma_configure与pci_dma_configure_devi
设备初始化流程
pci
dma
30
实战案例
为NVMe SSD驱动配置64位DM…
实战案例
NVMe
所属VIP或分类
同VIP:dma_alloc_coherent一致性内存分配失败定位
同VIP:Linux-PCI-MSI中断状态诊断与故障排查
同VIP:Linux-PCIe中断模式切换与驱动兼容适配