我发现我可以做到
board.mb.socket_pci_conf[0].read 0 2
从 Bus 0、Device 0、Function 0、Offset 0、2 个字节读取。但我一直无法找到编码任意 BDFO 的正确方法。(在偏移量 0x1FFF 之后,它开始说没有任何映射,所以我不能简单地使用 BDF * 0x1000 计算)
我还可以在对象浏览器中看到诸如“board.mb.nb.ioxapic”之类的东西,但是如果我可以完全按照数据表中的描述为寄存器指定地址,而不用弄清楚它们是如何的,那就容易多了翻译成人类命名的设备。