gpt4 book ai didi

pci - pci_enable_device_mem 和 pci_enable_device 有什么区别?

转载 作者:行者123 更新时间:2023-12-04 04:44:21 27 4
gpt4 key购买 nike

pci_enable_device_mem 和 pci_enable_device 有什么区别?

在 ixgbe 中,pf 驱动程序使用 pci_enable_device_mem,而 vf 驱动程序使用 pci_enable_device。

最佳答案

好吧,这两个函数都在内部调用 pci_enable_device_flags()。区别在于 pci_enable_device_mem() 变体仅初始化内存映射 BAR,而 pci_enable_device() 将同时初始化内存映射和 IO BAR。

如果您的 PCI 设备没有 IO 空间(很可能确实是这种情况),您可以轻松地使用 pci_enable_device_mem()。

这是来自 drivers/pci/pci.c 的代码:

int pci_enable_device_mem(struct pci_dev *dev)
{
return pci_enable_device_flags(dev, IORESOURCE_MEM);
}

int pci_enable_device(struct pci_dev *dev)
{
return pci_enable_device_flags(dev, IORESOURCE_MEM | IORESOURCE_IO);
}

关于pci - pci_enable_device_mem 和 pci_enable_device 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18416018/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com