From dd8e93799f13ef82d83c185b8e71e049452f7d40 Mon Sep 17 00:00:00 2001 From: dann frazier Date: Wed, 21 Sep 2011 14:06:25 -0600 Subject: [PATCH] e1000: Don't set the Capabilities List bit [Originally sent to qemu-kvm list, but I was redirected here] The Capabilities Pointer is NULL, so this bit shouldn't be set. The state of this bit doesn't appear to change any behavior on Linux/Windows versions we've tested, but it does cause Windows' PCI/PCI Express Compliance Test to balk. I happen to have a physical 82540EM controller, and it also sets the Capabilities Bit, but it actually has items on the capabilities list to go with it :) Signed-off-by: dann frazier Signed-off-by: Anthony Liguori --- hw/e1000.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/hw/e1000.c b/hw/e1000.c index 6a3a941488..ce8fc8b510 100644 --- a/hw/e1000.c +++ b/hw/e1000.c @@ -1151,8 +1151,6 @@ static int pci_e1000_init(PCIDevice *pci_dev) pci_conf = d->dev.config; - /* TODO: we have no capabilities, so why is this bit set? */ - pci_set_word(pci_conf + PCI_STATUS, PCI_STATUS_CAP_LIST); /* TODO: RST# value should be 0, PCI spec 6.2.4 */ pci_conf[PCI_CACHE_LINE_SIZE] = 0x10;