首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用PCI配置空间标识PCIe设备

使用PCI配置空间标识PCIe设备
EN

Stack Overflow用户
提问于 2011-04-26 03:37:30
回答 2查看 2K关注 1票数 0

给定系统中安装的PCI设备的列表,我需要识别PCIe设备。到目前为止,我一直在对功能列表进行迭代,以查看设备是否具有扩展的cap结构(对应于cap ID 0x10)。而且,如果该设备具有扩展的盖子结构,那么它肯定是PCIe设备。然而,这种方法似乎无法识别某些设备。我想知道有没有人知道更好的方法。

谢谢。

EN

回答 2

Stack Overflow用户

发布于 2012-10-31 11:41:41

我使用下面的方法来检索PCIe设备:

  1. 检查PCI设备配置寄存器0x6 bit4 =1(能力列表存在状态)?
  2. 检查PCI设备配置寄存器0x34 != 0(能力指针有效)?
  3. 检查PCIe能力(ID= 0x10)是否存在?

如果以上所有情况属实,则此设备为PCIe设备!

我很好奇“这种方法无法识别某些设备”的情况?

票数 2
EN

Stack Overflow用户

发布于 2011-09-30 14:50:44

PCI/PCIE设备扫描时,capabilities指针中可能存在冗余地址(损坏的PCI配置空间)。

请检查所有B:D:F组合中的功能指针值是否存在冗余,如果发现任何问题,可以直接联系BIOS供应商进行纠正。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5782383

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档