diff options
author | Michael S. Tsirkin | 2010-04-07 09:55:47 +0200 |
---|---|---|
committer | Michael S. Tsirkin | 2010-04-11 18:37:33 +0200 |
commit | 8bbd1ce236130dc92d5d592e76701dd1c740df36 (patch) | |
tree | 28939ae39af3c55de401df1567c2d0f8934b9a81 /hw/eepro100.c | |
parent | pci: add API to add capability at a known offset (diff) | |
download | qemu-8bbd1ce236130dc92d5d592e76701dd1c740df36.tar.gz qemu-8bbd1ce236130dc92d5d592e76701dd1c740df36.tar.xz qemu-8bbd1ce236130dc92d5d592e76701dd1c740df36.zip |
eepro100: convert to new capability API
Using new pci_add_capability_at_offset makes
eepro100 code cleaner.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Acked-by: Stefan Weil <weil@mail.berlios.de>
Diffstat (limited to 'hw/eepro100.c')
-rw-r--r-- | hw/eepro100.c | 22 |
1 files changed, 9 insertions, 13 deletions
diff --git a/hw/eepro100.c b/hw/eepro100.c index 785a7daac8..a74d834811 100644 --- a/hw/eepro100.c +++ b/hw/eepro100.c @@ -539,21 +539,17 @@ static void e100_pci_reset(EEPRO100State * s, E100PCIDeviceInfo *e100_device) if (e100_device->power_management) { /* Power Management Capabilities */ - int cfg_offset; - pci_reserve_capability(&s->dev, PCI_CONFIG_HEADER_SIZE, - 0xdc - PCI_CONFIG_HEADER_SIZE); - cfg_offset = pci_add_capability(&s->dev, PCI_CAP_ID_PM, PCI_PM_SIZEOF); - assert(cfg_offset == 0xdc); - if (cfg_offset > 0) { - /* Power Management Capabilities */ - pci_set_word(pci_conf + cfg_offset + PCI_PM_PMC, 0x7e21); + int cfg_offset = 0xdc; + int r = pci_add_capability_at_offset(&s->dev, PCI_CAP_ID_PM, + cfg_offset, PCI_PM_SIZEOF); + assert(r >= 0); + pci_set_word(pci_conf + cfg_offset + PCI_PM_PMC, 0x7e21); #if 0 /* TODO: replace dummy code for power management emulation. */ - /* TODO: Power Management Control / Status. */ - pci_set_word(pci_conf + cfg_offset + PCI_PM_CTRL, 0x0000); - /* TODO: Ethernet Power Consumption Registers (i82559 and later). */ - pci_set_byte(pci_conf + cfg_offset + PCI_PM_PPB_EXTENSIONS, 0x0000); + /* TODO: Power Management Control / Status. */ + pci_set_word(pci_conf + cfg_offset + PCI_PM_CTRL, 0x0000); + /* TODO: Ethernet Power Consumption Registers (i82559 and later). */ + pci_set_byte(pci_conf + cfg_offset + PCI_PM_PPB_EXTENSIONS, 0x0000); #endif - } } #if EEPROM_SIZE > 0 |