pcie的quirk函数的执行优先级
来源:互联网 发布:日本轴承知乎 编辑:程序博客网 时间:2024/05/22 01:38
在drivers/pci/quirks.c 中可以注册函数修复pcie的bug。例如static void quirk_mellanox_tavor(struct pci_dev *dev){dev->broken_parity_status = 1;/* This device gives false positives */}DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_MELLANOX, PCI_DEVICE_ID_MELLANOX_TAVOR_BRIDGE, quirk_mellanox_tavor);当在scan root port的时候发现vendor id是PCI_VENDOR_ID_MELLANOX的话,就会调用quirk_mellanox_tavor。从这里可以通过DECLARE_PCI_FIXUP_FINAL 来注册回调函数来修复硬件bug与之类似的函数还有很多,这些函数都定义在drivers/pci/pci.h 中#define DECLARE_PCI_FIXUP_CLASS_EARLY(vendor, device, class,\ class_shift, hook)\DECLARE_PCI_FIXUP_SECTION(.pci_fixup_early,\hook, vendor, device, class, class_shift, hook)#define DECLARE_PCI_FIXUP_CLASS_HEADER(vendor, device, class,\ class_shift, hook)\DECLARE_PCI_FIXUP_SECTION(.pci_fixup_header,\hook, vendor, device, class, class_shift, hook)#define DECLARE_PCI_FIXUP_CLASS_FINAL(vendor, device, class,\ class_shift, hook)\DECLARE_PCI_FIXUP_SECTION(.pci_fixup_final,\hook, vendor, device, class, class_shift, hook)这些回调函数会在pcie 初始化的不同阶段执行,可以从下面看到,总共可以在pcie运行过程中总共有8个点可以执行quirk的回调函数enum pci_fixup_pass {pci_fixup_early,/* Before probing BARs */pci_fixup_header,/* After reading configuration header */pci_fixup_final,/* Final phase of device fixups */pci_fixup_enable,/* pci_enable_device() time */pci_fixup_resume,/* pci_device_resume() */pci_fixup_suspend,/* pci_device_suspend() */pci_fixup_resume_early, /* pci_device_resume_early() */pci_fixup_suspend_late,/* pci_device_suspend_late() */};
阅读全文
0 0
- pcie的quirk函数的执行优先级
- IE的quirk模式
- .NET Framework 的 Quirk Version
- 关于join函数执行的优先级问题
- ++ -- 的执行优先级
- 坑爹的IE quirk模式
- 修改ie9默认的quirk模式
- Strict和Quirk模式下的差异
- Java 代码执行的优先级
- 线程函数的优先级
- PCIE 1: PCIE 配置空间的存取
- JavaScript quirk 3: 标准的等号(==)
- 怎样书写Quirk Mode模式下的CSS
- pcie dma的玩法
- pcie的hotplug概念
- PCIe总线的基础知识
- pcie的带宽峰值
- PCIe总线的基础知识
- SQL Server中insert/update的高性能写法
- mysql授予用户权限
- Android 模拟器启动失败 解决方案
- git安装
- 汇编test和cmp区别
- pcie的quirk函数的执行优先级
- 【NOIP2017提高A组集训10.25】凤凰院凶真(dp)
- 大数据集群修机器名
- 每日一练10.19
- 信号量
- 04-树6 Complete Binary Search Tree(30 point(s))
- 存储过程调用
- 微信小程序实现自动定位
- 索引