From a9cbacb0d68440d4be7ccfed61f321224026bf5c Mon Sep 17 00:00:00 2001 From: "Michael S. Tsirkin" Date: Thu, 10 Dec 2009 15:23:59 +0200 Subject: e1000: switch to symbolic names for pci registers No functional changes. I verified that the generated object binary does not change. Signed-off-by: Michael S. Tsirkin Acked-by: Juan Quintela Acked-by: Glauber Costa --- hw/e1000.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'hw/e1000.c') diff --git a/hw/e1000.c b/hw/e1000.c index a0faf5e..51c9d7d 100644 --- a/hw/e1000.c +++ b/hw/e1000.c @@ -1089,12 +1089,15 @@ static int pci_e1000_init(PCIDevice *pci_dev) pci_config_set_vendor_id(pci_conf, PCI_VENDOR_ID_INTEL); pci_config_set_device_id(pci_conf, E1000_DEVID); - *(uint16_t *)(pci_conf+0x06) = cpu_to_le16(0x0010); - pci_conf[0x08] = 0x03; + /* TODO: we have no capabilities, so why is this bit set? */ + pci_set_word(pci_conf + PCI_STATUS, PCI_STATUS_CAP_LIST); + pci_conf[PCI_REVISION_ID] = 0x03; pci_config_set_class(pci_conf, PCI_CLASS_NETWORK_ETHERNET); - pci_conf[0x0c] = 0x10; + /* TODO: RST# value should be 0, PCI spec 6.2.4 */ + pci_conf[PCI_CACHE_LINE_SIZE] = 0x10; - pci_conf[0x3d] = 1; // interrupt pin 0 + /* TODO: RST# value should be 0 if programmable, PCI spec 6.2.4 */ + pci_conf[PCI_INTERRUPT_PIN] = 1; // interrupt pin 0 d->mmio_index = cpu_register_io_memory(e1000_mmio_read, e1000_mmio_write, d); -- cgit v1.1