eepro100: Update ROM file support

Use new way to associate ROM files to devices.

Currently, there is only a ROM file for i82559er
included in QEMU, so the patch does not add
.romfile for the other devices.

When flexible mode is fixed in eepro100, adding
more ROM files will be possible. It should be
possible to create them from pxe-i82559er.bin,
because etherboot uses the same driver for all
eepro100 devices (only PCI ids differ).

Maybe it is even possible to create a single
pxe-i8255x.bin which supports all eepro100 devices
(not supported with current etherboot).

Signed-off-by: Stefan Weil <weil@mail.berlios.de>
Acked-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
This commit is contained in:
Stefan Weil 2010-01-07 17:13:30 +01:00 committed by Michael S. Tsirkin
parent 61702408c7
commit 938a632402

View file

@ -40,7 +40,6 @@
#include <stddef.h> /* offsetof */
#include <stdbool.h>
#include "hw.h"
#include "loader.h" /* rom_add_option */
#include "pci.h"
#include "net.h"
#include "eeprom93xx.h"
@ -1863,15 +1862,6 @@ static int nic_init(PCIDevice *pci_dev, uint32_t device)
s->vmstate->name = s->nic->nc.model;
vmstate_register(-1, s->vmstate, s);
if (!pci_dev->qdev.hotplugged) {
static int loaded = 0;
if (!loaded) {
char fname[32];
snprintf(fname, sizeof(fname), "pxe-%s.bin", s->nic->nc.model);
rom_add_option(fname);
loaded = 1;
}
}
return 0;
}
@ -2031,6 +2021,7 @@ static PCIDeviceInfo eepro100_info[] = {
.qdev.size = sizeof(EEPRO100State),
.init = pci_i82559er_init,
.exit = pci_nic_uninit,
.romfile = "pxe-i82559er.bin",
.qdev.props = (Property[]) {
DEFINE_NIC_PROPERTIES(EEPRO100State, conf),
DEFINE_PROP_END_OF_LIST(),