44 lines
1.5 KiB
Diff
44 lines
1.5 KiB
Diff
|
From fe7f7d7ae7114fb220ed258e249f9a63834f6fa6 Mon Sep 17 00:00:00 2001
|
||
|
From: dann frazier <dann.frazier@canonical.com>
|
||
|
Date: Wed, 21 Sep 2011 14:06:25 -0600
|
||
|
Subject: [PATCH] e1000: Don't set the Capabilities List bit
|
||
|
MIME-Version: 1.0
|
||
|
Content-Type: text/plain; charset=UTF-8
|
||
|
Content-Transfer-Encoding: 8bit
|
||
|
|
||
|
[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 <dann.frazier@canonical.com>
|
||
|
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
|
||
|
(cherry picked from commit dd8e93799f13ef82d83c185b8e71e049452f7d40)
|
||
|
|
||
|
Signed-off-by: Andreas Färber <afaerber@suse.de>
|
||
|
---
|
||
|
hw/e1000.c | 2 --
|
||
|
1 file changed, 2 deletions(-)
|
||
|
|
||
|
diff --git a/hw/e1000.c b/hw/e1000.c
|
||
|
index e4d9ab5..7971457 100644
|
||
|
--- a/hw/e1000.c
|
||
|
+++ b/hw/e1000.c
|
||
|
@@ -1167,8 +1167,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;
|
||
|
|
||
|
--
|
||
|
1.7.11.2
|
||
|
|